python編寫簡單端口掃描器
更新時間:2019年09月04日 15:41:27 作者:qq_41027545
這篇文章主要為大家詳細介紹了python編寫簡單端口掃描器,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了python編寫簡單端口掃描器的具體代碼,供大家參考,具體內(nèi)容如下
直接放代碼
此代碼只支持掃描域名,要掃描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):#將域名轉(zhuǎn)成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()
運行代碼

代碼執(zhí)行結(jié)果

因為代碼過于簡單,這里我就不具體解釋了。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
如何用python復(fù)制粘貼excel指定單元格(可保留格式)
這篇文章主要給大家介紹了關(guān)于如何用python復(fù)制粘貼excel指定單元格(可保留格式)的相關(guān)資料,利用python操作excel非常方便,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2023-07-07
深入理解Python虛擬機中調(diào)試器實現(xiàn)原理與源碼分析
本文主要給大家介紹python中調(diào)試器的實現(xiàn)原理,通過了解一個語言的調(diào)試器的實現(xiàn)原理我們可以更加深入的理解整個語言的運行機制,可以幫助我們更好的理解程序的執(zhí)行,感興趣的可以了解一下2023-04-04
python項目中requirements.txt的用法實例教程
Python項目中必須包含一個requirements.txt文件,用于記錄所有依賴包及其精確的版本號,以便新環(huán)境部署,下面這篇文章主要給大家介紹了關(guān)于python項目中requirements.txt用法的相關(guān)資料,需要的朋友可以參考下2022-06-06
淺談python for循環(huán)的巧妙運用(迭代、列表生成式)
下面小編就為大家?guī)硪黄獪\談python for循環(huán)的巧妙運用(迭代、列表生成式)。2017-09-09
tensorflow官方github預(yù)訓(xùn)練模型下載方式
這篇文章主要介紹了tensorflow官方github預(yù)訓(xùn)練模型下載方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-02-02

