Nmap

設置 -PP 標誌時,Nmap 不發送 ICMP 時間戳請求

  • October 9, 2021

我希望 nmap 向主機發送 ICMP 時間戳請求。為此,我使用以下命令:

nmap -PP “ip 地址”

但是nmap生成的請求中沒有ICMP請求,只有TCP SYN包。

主機實際上在我的子網中。如果我將“ip addr”設置為來自其他子網的某個不存在的主機,我會觀察到 ICMP 時間戳請求。

因此,似乎 nmap 僅在特殊條件下才發送 ICMP 時間戳請求。

這些條件是什麼?是否可以強制 nmap 向任何主機發送 ICMP 時間戳請求,也許通過一些額外的標誌?

據我所知,還有其他可以使用的實用程序,例如 nping、hping3,但我想先澄清一下 nmap 的選項。

謝謝你。

手冊

-P*可以組合選項(選擇 ping 類型)。您可以通過使用不同的 TCP 埠/標誌和 ICMP 程式碼發送許多探測類型來增加穿透嚴格防火牆的機率。另請注意,即使您指定了其他選項,****預設情況下 ARP/Neighbor Discovery 也是針對本地乙太網上的目標完成的-P*,因為它幾乎總是更快更有效。

完成的預設主機發現-sn包括 ICMP 回應要求、到埠 443 的 TCP SYN、到埠 80 的 TCP ACK 以及預設情況下的 ICMP 時間戳請求。當由非特權使用者執行時,只會將 SYN 數據包發送(使用connect呼叫)到目標上的埠 80 和 443。**當特權使用者嘗試掃描本地乙太網上的目標時,除非--send-ip指定,否則將使用 ARP 請求。**該-sn選項可以與任何發現探測類型(-P*選項)結合使用,以獲得更大的靈活性。

從這兩部分可以猜到,應該使用強制使用 ICMP 時間戳(如果 ARP 記憶體中沒有這樣的地址,ARP 請求仍將由作業系統完成!):

nmap --send-ip -PP lan.ip.addr.ess

發布此類 ICMP 時間戳並且不進行反向 DNS 查找或埠掃描:

nmap --send-ip -n -sn -PP lan.ip.addr.ess

引用自:https://unix.stackexchange.com/questions/672518