python編寫簡單埠掃描器
阿新 • • 發佈:2020-01-09
本文例項為大家分享了python編寫簡單埠掃描器的具體程式碼,供大家參考,具體內容如下
直接放程式碼
此程式碼只支援掃描域名,要掃描IP請自己修改
from socket import * from threading import Thread import optparse Port = [80,21,23,22,25,110,443,1080,3306,3389,1521,1433] Server = ['HTTP','FTP','TELNET','SSH','SMTP','POP3','HTTPS','SOCKS','MYSQL','Misrosoft RDP','Oracle','Sql Server'] def Scan(tghost,tgport,Server): try: s=socket() s.connect((tghost,tgport)) print(tghost+'____>'+str(tgport)+' open',end='||||| ') print(str(tgport)+'---->'+Server) s.close() except: print(str(tgport)+'----> '+'not open') def hostToaddr(host):#將域名轉成ip try: return gethostbyname(host) except: return def main(): parser=optparse.OptionParser() parser.add_option('-t',dest='dname') #parser.add_option('-p',dest='pname') (options,args)=parser.parse_args() if(options.dname==None): print('[-] You must specify a target host and port') exit(0) else: tgname=options.dname ip=hostToaddr(tgname) #Scan(ip) for i,j in zip(Port,Server):#用執行緒提高速度 t=Thread(target=Scan,args=(ip,i,j)) t.start() input()#cmd介面如果快速閃退,請加入這條程式碼 if __name__=='__main__': main()
執行程式碼
程式碼執行結果
因為程式碼過於簡單,這裡我就不具體解釋了。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。