nmap os探測使用方法及原理

play maker發表於2020-10-15

 

 

 

 

OS探測的原理

有下面五個過程

 

第一步:Sequence generation (SEQ, OPS, WIN, and T1)

先每隔100毫秒(0.1秒)傳送一個SYN包S

實際上wireshark確定的時間是有些許偏差的,但是nmap傳送時可能是精確的每個100ms

這些包只發給開放的埠,進行OS探測時都得先探測host、port之後才能OS探測,因此,即使只使用引數-O時都會先傳送大量得SYN包來進行SYN Scan,

這六個SYN包的引數是確定的,如下。

(檢測時可以做一個在1秒內執行的序列探測器,一秒內按順序探測到這六個包,則表明很大概率被OS探測)

如wireshark抓到的第一個SYN包

 

 

 

第二步ICMP echo (IE):

傳送兩個ICMP echo request報文,各引數也都確定。

type of service

 

 

第三步:TCP explicit congestion notification (ECN)

再傳送一個TCP包

 

第四步:TCP (T2–T7)

再傳送六個TCP包

 

第五步:UDP (U1)

向關閉的埠傳送UDP包,如果真的是關閉的埠,沒有防火牆,那麼會有ICMP報文回覆

檢測特徵:data域有300個 ’C’字元

 

 

相關文章