Hello there, ('ω')ノ
ターゲットのOSを認識できると情報収集プロセスが次のレベルに進むことができて。
OSの識別は、どのように機能すると思いますか?その秘密をお伝えします。
すべてのOSには、TCPスタックの実装方法が異って。
リモートマシンから受信したパケットには、
TTL
フラグメントオフセット
ウィンドウサイズ
などの特定のフィールドが含まれて。
パケットの値を比較することで、より正確にOSを予測できて。
たとえば、Windowsマシンにpingを実行すると。
返されるTTL値は128で、Linuxマシンにpingを実行するとたいていTTL値は64で。
下記のnmapコマンドで、OSを確認できますが。
nmap -O 192.168.56.104,192.168.56.105
OSを確認するためにnmapの出力に依存する必要はなく。
Wiresharkで、TTLフィールド値を確認すると。
Linuxボックスの場合は64、Windowsボックスの場合は128で。
下部にある最大セグメントサイズの値を見ると。
Linuxボックスの値は1460バイト、Windowsボックスの値は1440バイトで。
Linux
192.168.56.105
ip.src == 192.168.56.105
Windows
192.168.56.104
ip.src == 192.168.56.104
Best regards, (^^ゞ