設置 -PP 標誌時,Nmap 不發送 ICMP 時間戳請求
我希望 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