Port
NMAP 掃描哪些埠以進行作業系統檢測
nmap
通過發送六個探測數據包並分析它們的響應,提供基於 TCP/IP 指紋辨識的作業系統檢測功能。在文件中說,其中一些被發送到一個開放埠,一些被發送到一個封閉埠。有誰知道如何
nmap
決定將探針發送到哪個埠?它只是尋找第一個關閉的埠和它可以找到的第一個開放的埠嗎?它是否按特定順序搜尋它們?還是隨機選擇一個埠?
在這種情況下,沒有比程式碼本身更好的文件了。Nmap 依靠埠掃描結果來確定打開和關閉埠的列表。它特別在尋找三件事:
- 一個開放的 TCP 埠
- 關閉的 TCP 埠
- 一個封閉的 UDP 埠
一般來說,它會選擇它知道的第一個(最小的數字),但它有一些規則來避免它:
- 不要使用埠 0。對於大多數係統,這不是有效的埠號。如果發現埠 0 是打開的,那麼使用它進行通信的東西不是作業系統的本機 IP 堆棧的可能性非常高。
- 如果執行了服務掃描,請避開標記為 的埠
tcpwrapped
。這有時可能是 IPS 關閉連接的結果,因此跳過這些埠有助於確保 Nmap 獲得與目標的未修改連接。