Python學習之掃瞄網段主機與開啟埠(避坑)

2022-06-15 21:18:14 字數 1843 閱讀 9536

本來我的win10裡沒有安裝nmap,我直接pip install python-nmap安裝了python-nmap模組,導致的最終結果就是報錯,沒有nmap二進位制檔案。

然後就正常了。

掃瞄192.168.0.189的1-1000的開放情況。

>>> import nmap //引入nmap模組

>>> nm=nmap.portscanner() //例項化

>>> nm.scan('192.168.0.189','1-1000') //掃瞄192.168.0.189的1-1000埠

>>> for host in nm.all_hosts(): //遍歷主機

... print('-------------------------------------------')

... print('host:%s(%s)'%(host,nm[host].hostname())) //主機名

... print('state:%s'%nm[host].state()) //主機狀態

... for proto in nm[host].all_protocols(): //遍歷協議

... print('-------------------------------------------')

... print('protocol:%s'%proto) //輸出協議型別

... lport=nm[host][proto].keys() //獲取協議的所有掃瞄埠

... lport.sort() //埠列表排序

... for port in lport: //遍歷埠及輸出狀態

... print('port:%s\t state:%s'%(port,nm[host][proto][port]['state']))

命令列模式麻煩且不能糾錯,因此寫到e:// 1.py,然後cmd執行。(我試了試好像只能掃本機,別的好像要鏈結上才能掃)

nm.scan(hosts='192.168.0.1/24',arguments='-sp') //ping主機在先掃瞄網段

hosts_list=[(x,nm[x]['status']['state']) for x in nm.all_hosts()] //儲存主機狀態

for host,status in hosts_list: //遍歷主機名

print(host+" is "+status) //輸出主機名和狀態

nma=nmap.portscannerasync() //支援非同步掃瞄的函式

def callback_result(host,scan_result): //新定義

print '-------------------------------'

print host,scan_result //輸出主機名和掃瞄結果

nma.scan(hosts='192.168.0.1/24',arguments='-sp',callback=callback_result)

會返回掃瞄的結果。

黑客技巧之DOS命令掃瞄網段的埠

不需要任何工具,dos命令掃瞄乙個網段的全部埠!在windows2000下開乙個dos視窗,然後執行 for l a in 1,1,254 do start min low telnet 192.168.0.a 3389 這樣192.168.0.x這個段的所有開放3389埠得主機都會暴露。這條命令執...

python實現掃瞄區域網指定網段ip

工作的區域網中,會接入很多裝置,機械人上的網路裝置就2個了,乙個巨哥紅外,乙個海康可見光。機械人還有自身的ip。有時候機械人掛的多了,裝置維修更換中,搞來搞去就不記得ip是什麼,用自帶的軟體的確能掃出來,但是這就要開兩個windows環境下的軟體,耗時耗力,折騰。正好在linux,那簡單,敲命令。n...

python實現掃瞄區域網指定網段ip的方法

一 問題由來 工作的區域網中,會接入很多裝置,機械人上的網路裝置就2個了,乙個巨哥紅外,乙個海康可見光。機械人還有自身的ip。有時候機械人掛的多了,裝置維修更換中,搞來搞去就不記得ip是什麼,用自帶的軟體的確能掃出來,但是這就要開兩個windows環境下的軟體,耗時耗力,折騰。正好在linux,那簡...