前兩篇文章已介紹了Nmap命令的1些基本選項和若干類型的掃描,下面繼續來介紹Nmap的1個掃描類型――空閑掃描。
為了下降被檢測到的機率,我們通常需要轉嫁責任,這時候可使用空閑掃描(idle scan),讓1個僵尸主機承當掃描任務。
nmap.org官網上詳細講述了空閑掃描的原理,可以在http://nmap.org/book/idlescan.html了解空閑掃描的所有信息。
使用空閑掃描(-sI)需要注意1個問題,就是要找1臺TCP序列預測成功率高的僵尸主機,這個僵尸主機必須盡量的空閑,比如說網絡打印機就是1個很好地選擇,由于網絡打印機不但存在著恒定的網絡資源,而且很難預測它們的TCP序列。
空閑掃描的原理:
空閑掃描的第1步就是尋覓僵尸主機,我們可以通過下面這條命令(-v 詳細信息,-O 系統檢測,-Pn 無ping,-n 無域名解析)來取得主機的TCP序列預測率。
# nmap -v -O -Pn -n 192.168.50.16
從結果上看,這個主機不是太理想,網絡距離只有1跳(自己搭建的環境,實驗用足夠了),但作為1個僵尸主機還是可以的。預測難度越高,1臺主機用作僵尸主機的可能性就越小。我們還可以連續生成ID來增加掃描成功的幾率。
使用以下命令掃描,并啟動wireshark抓包。
# nmap -p 22,23,53,80,443,8888,3960 -Pn -sI 10.128.***.**(僵尸主機IP) 222.**.**.**(目標主機IP)
使用-p啟動已知TCP端口的掃描,節省時間;通過-Pn強調不適用ping(默許是使用的),-sI啟動空閑掃描,后面順次是僵尸主機和目標主機的ip地址。
查看wireshark抓包情況,可以看到從僵尸主機到目標主機之間有1些異常的網絡流量。
從結果上看,Nmap命令在僵尸主機和目標主機網絡上產生了很多流量,我們需要這些流量來增加IPID的值,從而獲知目標主機端口是不是開放。