PR

 図5と図6から分かるように,NmapのIdlescanは失敗します。この結果からも,現時点のWiiとPS3に施されている「予測可能なIPフラグメントIDの生成」問題の対策は十分機能しているように思われます。

 ただ,さらに詳しく調べた結果,Wiiの対策については十分とは言い切れないことが分かりました。

 予測可能かどうかを調べるのにIPフラグメントIDの採取が10回では少なすぎるので,今度は100回採取して調べてみました。

表3●今回調べたWiiとPS3のIPフラグメントIDと増減値(100回採取した場合)
[画像のクリックで拡大表示]

 100回採取して調べた結果,WiiはIPフラグメントIDが直前から最小で1増加し最大で16増加します。それに対してPS3は直前から最小で204増減し最大で29740増減します。この結果から,WiiのIPフラグメントIDは増加しかせず,増減値も最大で+16程度しかないため,次のIPフラグメントIDを予測できることがわかります。WiiのIPフラグメントIDが容易に予測できることをわかりやすくするために,表3をグラフにしてみました。

表4●WiiとPS3のIPフラグメントIDのグラフ
[画像のクリックで拡大表示]

 表4を見ると,PS3と比べて明らかにWiiは直線的で予測しやすいことがわかります。さらにWiiだけのIPフラグメントIDのグラフも見てみましょう(表5)。

表5●WiiのIPフラグメントIDのグラフ
[画像のクリックで拡大表示]

 表5からもWiiのIPフラグメントIDは容易に予測できることが分かります。つまり現時点のWiiでも,IPフラグメントIDポート・スキャンに利用できる可能性があるということです。

 本当に現時点のWiiがIPフラグメントIDポート・スキャンに利用できるか確認するために,まずポートスキャン端末(192.168.1.106)からWii(192.168.1.102)あてにICMP echo requestパケットを10回送信してIPフラグメントIDを採取します(図7)。次にポートスキャン端末(192.168.1.106)から送信元IPアドレスをWiiのIPアドレス(192.168.1.102)に設定(IPアドレス偽装)して,標的端末(192.168.1.100)で開いているTCPの139番ポートあてにSYNパケットを20回送信します(図8)。20回送信が終わったら,再度ポートスキャン端末(192.168.1.106)からWii(192.168.1.102)あてにICMP Echo Requestパケットを10回送信してIPフラグメントIDを採取します(図9)。

図5●WiiあてにICMP Echo Requestパケットを10回送信したときのログ
[画像のクリックで拡大表示]
図6●送信元をWiiのIPアドレスに設定して標的端末の139/tcpにSYNパケットを20回送信したときのログ
[画像のクリックで拡大表示]
図7●再度WiiあてにICMP Echo Requestパケットを10回送信したときのログ
[画像のクリックで拡大表示]