繞過防火牆
所謂逃脫,就是不讓别人發現自己,否則要幹的偵測工作還沒搞完,就被迫中止豈不讓人笑話。同樣的,排名不分先後。
0x01:利用掩體
namp -D IP位址1,IP位址2... IP位址
1
你可以使用 D 選項(英文 decoy)跟一些 IP 位址,IP 和 IP 之間用逗号隔開。這樣看起來用來偵測而發送的資料包不僅來自于你的 IP 位址,還來自于這些掩體 IP。這就叫做 “混入其中”。
0x02:禁用 ping
nmap -P0 IP位址
在 2010 年之後,該選項和 PN 選項被一起合并到 Pn 選項之中。但是如果你願意,你仍然可以使用 P0 選項(P 後面跟的是零)。
0x03:IP 位址僞裝
sudo proxychains nmap ...
僞裝 IP 位址的方法也有很多,比如你可以使用 prxychains 這款工具來實作匿名代理。
0x04:空閑掃描
nmap -sI 僵屍IP位址[:開放的僵屍端口] IP位址
和 D 選線不同的是,sI 根本不使用你自己的 IP 位址,而是使用空閑的網絡資源。這樣隐蔽性就更強了。開放的僵屍端口為選填,預設等于 80 端口。具體原理請參考 Nmap 文檔。根據這個理論,你不能使用空閑掃描來掃描你自己的主機 IP。在 msfconsole 中,你可以使用 auxiliary/scanner/ip/ipidseq 來完成這個工作。
0x05:指定網卡進行掃描
nmap -e 網卡 IP位址
當你擁有不止一個網卡的時候,這很有用。
0x06:限制掃描時間
nmap --host-timeout 時間 IP位址
限制每個 IP 位址的掃描時間(機關為秒),當要掃描大量的主機 IP 時這很有用。
0x07:指定源 IP 位址
nmap -S 源IP位址 IP位址
使用冒充的 IP 位址進行掃描以增強隐蔽性。這裡僞裝成的 IP 也可以來自于下線狀态的主機位址。
0x08:指定源主機端口
nmap -g 53 IP位址
使用 g 參數,或者 source-port 參數,來手動設定用來掃描的端口。常用的,如 20、53、67 端口。
0x09:資料包分片技術
nmap -f IP位址
nmap --mtu mtu單元大小 IP位址
上面兩種方法都可以利用資料包分片技術,某些防火牆為了加快處理速度而不會進行重組處理,這樣進而逃脫防火牆或闖入檢測系統的檢測。注意,mtu 的值必須是 8 的倍數(如 8、16、24、32 等)。
0x10:添加垃圾資料
nmap --data-length 垃圾資料長度 IP位址
一些常見的掃描之資料包是有特定的資料長度的,通過在發送的資料包末尾添加随機的垃圾資料,以達到混淆視聽的作效果。
0x11:随機選擇掃描對象
nmap --randomize-hosts IP位址
如果你要掃描大量的,比如成百上千的主機 IP,這很有效。它會打亂掃描順序,以規避檢測系統的檢測。
0x12:僞裝 MAC 位址
nmap --spoof-mac 僞造MAC IP位址
你可以通過指定供應商的名字來僞裝 MAC 位址。可選的名字有 Dell、Apple、3Com。當然也可以手動指定 MAC 位址的值。或者為了簡單起見,可以在上面 “僞造IP” 的地方填寫數字 0,這将生成一個随機的 MAC 位址。
0x13:僞造檢驗值
nmap --badsum IP位址
這将使用僞造的 TCP / UDP / SCTP 校驗和發送資料。
0x14:掃描速度
nmap -T0 IP位址
T後面跟的數字代表掃描速度,數字越大則速度越快。0~5分别表示:妄想症、鬼鬼祟祟、彬彬有禮、正常、好鬥、精神病。
-S:可以僞裝源位址進行掃描。這樣好處在于不會被對方發現自己的真實IP
[root@B ~]# nmap -e eth0 10.0.1.161 -S 10.0.1.167
WARNING: If -S is being used to fake your source address, you may also have to use -e <interface> and -Pn . If you are using it to specify your real source address, you can ignore this warning.
上面提示如果你使用-S僞裝自己源位址進行掃描的話,你必須另外使用-e 指定網卡和-Pn參數才能僞裝
把自己源位址僞裝成10.0.1.167掃描A機器
nmap -e eth0 10.0.1.161 -S 10.0.1.167 -Pn