エンタープライズ:ニュース 2003/03/26 05:22:00 更新


当初の報告よりもずっと深刻だったWindows 2000のセキュリティホール

3月18日に公表されたWindows 2000のセキュリティホールが与える影響は、当初考えられていたよりもずっと広範囲に及ぶという。速やかなパッチの適用が必要だ。

 3月18日に公表されたマイクロソフトのWindows 2000に存在するセキュリティホール(MS03-007)だが、その解析が進むにつれ、問題はずっと深刻なものであることが明らかになってきた。

 まずはじめに呼びかけておきたい。もしWindows 2000を利用しているならば、たとえInternet Information Service(IIS)5.0を利用していなくとも、あるいはWebDAV機能を無効にしていようと、速やかにMS03-007で示されているパッチ(Q815021)を適用すべきだ。

 当初MS03-007は、IIS 5.0でWebDAVプロトコルを処理するソフトウェアコンポーネントに原因があるとされ、ZDNetでもそのように報じてきた。しかし実際には、これらのサービスを動作させているときにのみ影響を受ける問題ではないことが明らかになってきた。たとえWebDAVサービスを停止させたとしても、別の経路から攻撃を受ける可能性がある。この問題は、個別のアプリケーションやサービスに起因するものではなく、OSの奥深いところに関連しているため、IIS以外のアプリケーションやサービスによっても悪用されてしまう可能性がある。

 このセキュリティホールは、WebDAVが使用するWindowsの主要コンポーネントである「ntdll.dll」からエクスポートされる関数に、バッファオーバーフローの脆弱性が存在していたことに起因している。だが、イギリス・NGSソフトウェアのデビッド・リッチフィールド氏が公開した報告書「New Attack Vectors and a Vulnerability Dissection of MS03-007」によると、根本的な原因となるこの関数は、実はファイルシステムなどに関連する20以上もの関数からも呼び出されるものだという。そのうえ、「ole32.dll」や「shell32.dll」を含む20以上のdllファイルも、問題となる関数を用いているという。

 ここから導き出される結論は明らかだ。リッチフィールド氏は報告書の中で「IISは、この問題を悪用する経路の1つに過ぎない」と指摘している。

 MS03-007では、バッファオーバーフローの結果、攻撃者によって任意のコードを実行されてしまう可能性があると指摘されていた。そして、この脆弱性を悪用するための手段は、IISにとどまらず、「Microsoft Windowsに含まれる他のサービスやマイクロソフト以外から提供されるWeb/FTPサーバ、IMAPサーバ、さらにはウイルス対策ソフトウェア」(同氏のレポート)にも存在し得るという。

 問題の奥深さは、例えばセキュリティ企業のラックが公開したセキュリティアドバイザリ、「SNS Spiffy Reviews No.5」の変遷からも見て取ることができる。

 同社ではMS03-007の存在が明らかになった直後に、この問題の再現に成功し、アドバイザリを公開してきた。当初は「LOCK」メソッドが問題を引き起こす要因として挙げられたが、その後の調査で「PROPFIND」および「SEARCH」メソッドでもバッファオーバーフローの発生が確認された。

 さらに、いくつかのHTTPリクエストによっても同様の問題が発生したという。ラックではこれらの結果ならびにリッチフィールド氏の報告書を受け、3月25日にアドバイザリを大きく改定した。

対策は「基本に帰れ」

 ラックのアドバイザリでも、またリッチフィールド氏の報告書でも、対策としてはパッチ(Q815021)の適用が推奨されている。

 当初は回避策として、IISもしくはWebDAVの無効化や「IIS Lockdown Wizard」に含まれる「URLScan」の適用も挙げられていた。これらは確かに、IISおよびWebDAV経由での攻撃には有効だ。だが、それ以外の攻撃経路の可能性が指摘された今となっては、根本的な対策はパッチの適用以外にないようだ。

 順序としては、まずパッチを適用したうえで、これらマイクロソフトが提供するツールなどを活用しながら不要なサービスを停止し、あとはルータやファイアウォールなどを用いて不要なポートを塞ぐ。何のことはない、ごく基本のセキュリティ対策を施すことが最大の防御になるはずだ(これを確実に実現することが難しいのだが)。

「ゼロ・デイ」の犠牲かどうかを確かめる術は?

 しかし、検討すべき事柄が1つ残っている。パッチを適用する前に不正侵入を受けてしまった可能性についても考慮しておくべきだろう。

 もともとこのセキュリティホールは、問題の存在自体が公表される前(つまりパッチが公開される前)に、それを悪用しての攻撃が行われたという、いわゆる「ゼロ・デイ」アタックであり、当初から影響の大きさが懸念されていた。そのうえ米国時間の3月21日には、複数のメーリングリストにこの問題を悪用するためのコード(exploitコード)が投稿されており、事態はいっそう深刻になっている。

 だが、この問題の検証に当たったラックの新井悠氏やインターネット セキュリティ システムズに確認したところ、先週末時点では、ログなどを元に、この問題を悪用しての侵入を判別する術はまだ調査中ということだった。

 新井氏が検証したLOCKなどの文字列を手がかりにする方法もあるだろうが、IIS/WebDAV以外の経路での攻撃となると、それも通用しない。「アノーマリ型のIDSやIPS(Intrusion Protection System)、あるいはホストベースのIDSであれば検知する可能性がある」(新井氏)が、それもあくまで可能性に過ぎないという。こうなると、どうしても不正侵入の疑念を拭い去れない場合は、はなはだ残念な選択肢ではあるが、最初からインストールし直すことになる。

 そんな面倒な作業は避けたいというならば、日ごろから労力を割き、対象となるサーバを監視する体制を作っておくしかない。いざというときのリストア手順を整備しておくことも欠かせない作業になる。つまりセキュリティ担当者としては、IDSもしくは他のツールを用いて、大まかにでも普段とは異なる状況がないかを監視するとともに、インシデントに対する調査・対応体制を作り上げることも、視野に入れておくべきだろう。

関連記事
▼Win2000/IISの脆弱性、「被害報告」の主は米軍か
▼Windows 2000に「被害報告あり」のセキュリティホール

関連リンク
▼New Attack Vectors and a Vulnerability Dissection of MS03-007
▼SNS Spiffy Reviews No.5:Successful Reproduction of MS03-007 "Unchecked Buffer In Windows Component Could Cause Web Server Compromise"
▼Windows コンポーネントの未チェックのバッファにより Web サーバーが侵害される (815021) (MS03-007)

[高橋睦美,ITmedia]