米Microsoftは11月20日,Windowsに組み込まれているデータベース・アクセス・モジュール「MDAC(Microsoft Data Access Component)」に,外部から任意のコードを実行可能なセキュリティ・ホールが発見されたというセキュリティ情報とパッチを公開した(該当サイト)。日本のサイトにも要約が公開されている(該当サイト)。極めて深刻なセキュリティ・ホールであり,該当するシステムも広範にわたるため,速やかな対策が必要である。

 MDACが標準で組み込まれているOSはWindows XP/2000およびWindows Millennium Editionのみだが,他のWindowsシステムでもInternet Explorerなどとともにインストールされていることが多い。なお,今回のセキュリティ・ホールが存在するのはMDAC 2.6以前のバージョンである。MDAC 2.7が標準で組み込まれているWindows XPで対策する必要はない。

 セキュリティ・ホールが見付かったのは,MDACからネットワーク経由でデータベース・サーバーにアクセスするための「RDS(Remote Data Services)」機能を処理する部分である。RDSコマンドを生成するためにHTTP(Hypertext Transfer Protocol)でリクエストを受け取る「RDS Data Stub」に未チェックのバッファがあった。このため,不正なHTTPリクエストを発行してこのバッファをあふれさせることで,外部から任意のコードを起動するバッファ・オーバーフロー攻撃が可能になる。

 攻撃者がこのセキュリティ・ホールを突く方法としては,IIS(Internet Information Server/Services)に対して不正なHTTPを要求する方法と,Internet Explorerに対して不正なコードを含むWebページを送り込むものの2つが考えられる。このうちInternet Explorerを経由する方法については,Internet ExplorerからMDACにアクセスする機能を無効化する方法がないため,該当するシステムでは必ずパッチを適用するかMDACをアップグレードする必要がある。

 一方,IISからRDSを利用する機能はWindows 2000などではデフォルトで無効になっている。有効化していない場合,この方法で攻撃される恐れはない。確実に無効化するには,Microsoftが配布している「IIS Lockdownツール」を用いるとよい(参考サイト)。RDSを無効化できないコンテンツを持つサイトではパッチを適用するか,MDACをバージョン2.7にアップグレードする必要がある。ただし,疑わしいHTTPリクエストを遮断する「URL Scan」などのツールを導入してある場合もIIS経由で攻撃される恐れは少ない(参考サイト)。

(斉藤 国博=日経Windowsプロ)