OSフィンガープリント パッシブフィンガープリントによるOS種別の判別方法
Chris Sanders著、「実践パケット解析 Wiresharkを使ったトラブルシューティング」で胸のつかえが一つとれました。
OSフィンガープリント パッシブフィンガープリントの章で、パケットから凡そのOSの見分け方を記載しております。
実際、パケットキャプチャでどのようにOSの判定をしているのか?疑問に思うツールがいくつかあります。
全てがすべてパッシブフィンガープリントを使っている訳ではないと思いますが、知っていて損のない内容です。
例として、パケットからのWindowsの見分け方をご紹介します。
プロトコルヘッダ | フィールド | デフォルト値 |
IP | 初期TTL | 128 |
IP | フラグメント禁止フラグ | 設定 |
TCP | 最大セグメントサイズ | 1440-1460 |
TCP | ウィンドウサイズ | 自動調整 |
TCP | SackOK | 設定 |
この表に合致するパケットであれば、OSはWindowsである可能性が高いです。
もちろん、パラメータを変更すれば全て偽れる値なので100% Windowsというわけではありませんが、指標にはなります。
次に実践パケット解析ではリンクだけの紹介で、説明していないp0fというツールを使ってみました。
ダウンロードは、こちらから。
残念ながら、Windows用のツールではなくLinux環境でビルドする必要があります。
ダウンロード・解凍して、build.shを実行してください。
ビルドに成功したら、同フォルダに生成されたp0fを実行します。
インターフェイスに対してもpcapファイルに対しても実行することができますが、今回はインターフェイスに対して実行してみました。
$./p0f -i br0
実行結果は、図2の通りとなりました。
結果は以下の通りです。
IPアドレス | 判定OS |
192.168.1.11 | Windows NT kernel |
192.168.1.11 | Ethernet or modem |
192.168.1.254 | ??? |
192.168.1.254 | Ethernet or modem |
1.11はWindows 10 x64です。1.254はUbuntu 18.04です。
上記結果をみても本ツールは正確ではなく、あくまで参考レベルの結果であるということが分かりました。
最新記事 by 伊集院 (全て見る)
- 【暗号化通信(TLS)を復元できる】WIRESHARK達人への道 第二十五歩 暗号化通信(TLS)を復号する方法 - 1月 1, 2023
- 【詳細版】NSM(ネットワークセキュリティモニタ)、Zeekとは? - 9月 1, 2022
- 【簡易版】OSSネットワークセキュリティモニタZeekとは? - 8月 26, 2022