マイクロソフトは10月4日,Windowsのヘルプ機能にセキュリティ・ホールがあることを明らかにした。セキュリティ・ホールを悪用するように細工されたWebページやHTMLメールを閲覧すると,任意のコード(プログラム)をユーザー・マシン上で実行される恐れがある。最大深刻度は「高」。すべてのWindows OSが対象となる。対策はパッチを適用すること。

 今回公開された,Windowsのヘルプ機能に関するセキュリティ・ホールは以下の2種類。

(1)HTML Help ActiveXコントロールのバッファ・オーバーラン
(2)Compiled HTML Help(.chm)ファイルを経由したコードの実行

 深刻度は,(1)が「高」,(2)が「中」である。

 (1)は,Windowsのヘルプ機能で使用される,あるActiveXコントロールの不具合が原因である。細工が施された引数を渡されると,そのActiveXコントロールはバッファ・オーバーフローを引き起こす。その結果,任意のコードを実行され,ユーザー・マシンを乗っ取られる恐れがある。ActiveXコントロールはHTMLファイルから呼び出すことが可能なので,WebページやHTMLメールを閲覧しただけで,バッファ・オーバーフローを引き起こされることになる。

 ただし,Internet Explorer(IE)のセキュリティ設定でActiveXコントロールを無効にしていれば影響を受けない。また,Outlook Express 6 や Outlook 2002,セキュリティ・アップデートを適用した Outlook 98/2000では,HTMLメールは「制限付きサイト」ゾーンで開かれるので,ActiveXコントロールが呼び出されることはない。

 (2)は,Windowsのヘルプ機能の,Compiled HTML Help(.chm)ファイルの取り扱いに関するセキュリティ・ホールである。.chmファイルとは,テキストや画像,ショートカットなどをまとめて一つに圧縮にしたヘルプ・ファイルのことである。

 通常,Webサイトからダウンロードして「Temporary Internet Files」フォルダに保存されたファイルを実行する際には,そのWebサイトに対するセキュリティ設定(例えば,インターネット・ゾーン)が適用される。しかし,.chmファイルの場合には,Windowsのヘルプ機能の不具合により,ローカルのファイルを実行する場合と同じ「Local Computer」ゾーンが適用されてしまう。

 さらに,もう一つ問題がある。Temporary Internet Filesフォルダにはどのようなファイルが収められているか分からない。そのため,Temporary Internet Filesフォルダにある.chmファイルからショートカットでプログラムが呼び出された場合には,当然チェックして,プログラムが実行されることを防ぐべきである。しかし,そのチェック機能が存在しない。

 以上2つの問題を悪用すれば,ショートカットを仕込んだ.chmファイルをWebサイトに置き,ユーザーにダウンロードさせ,Temporary Internet Filesフォルダに保存されたその.chmファイルを実行させれば,結果的に任意のプログラムをユーザー・マシン上で実行することが可能となる。

 しかし,米Microsoftによれば,Temporary Internet Filesフォルダに保存された.chmファイルを攻撃者が実行すること(あるいは攻撃者の意図でユーザーに実行させること)は困難であるとしている。もしそれが可能ならば,それ自身がセキュリティ・ホールであるとし,そのようなセキュリティ・ホールは現在存在しないとしている。そのため,(2)の深刻度を「中」としている。

 (1)と(2)のセキュリティ・ホールを解消するには,パッチを適用する必要がある。パッチを適用するには,システムに IE 5.01/5.5/6 のいずれかがインストールされている必要がある。また,Windows NT 4.0の場合には SP6,Windows 2000ではSP1あるいはSP2が適用されている必要がある。

同時に3種類のセキュリティ・ホールが公開

 なお,マイクロソフトは同日,以下の3種類のセキュリティ・ホールも公開した。

(a)「MS02-054: ファイル展開機能に含まれる未チェックのバッファにより,コードが実行される (Q323284)」

 影響を受けるのは,Windows XP,Windows Me,Microsoft Plus! 98 をインストールしているWindows 98。圧縮ファイル(.zipファイル)をフォルダのように取り扱えるファイル展開(Compressed Folders)機能にセキュリティ・ホールがあるため,細工が施された.zipファイルを開こうとすると,任意のコードをユーザー・マシン上で実行される恐れがある。最大深刻度は「中」。

(b)「MS02-056: SQL Server 用の累積的な修正プログラム (Q316333)」

 影響を受けるのは,SQL Server 7.0/2000 および Desktop Engine (MSDE) 1.0/2000。最大深刻度は「高」。新たに公開された4種類のセキュリティ・ホールを含む累積パッチである。

(c)「MS02-057: Services for Unix 3.0 に含まれる Interix SDK でサービス拒否が起こる (Q329209)」

 影響を受けるのは,Services for UNIX (SFU) 3.0(英語版製品)。最大深刻度は「中」。なお,現在公開されている Windows Services for UNIX 3.0 日本語ベータ版 では既に修正されている。

 以上3種類についても,対象となるユーザーは確認しておきたい。

◎参考資料
「MS02-055: Windows ヘルプ機能の未チェックのバッファにより,コードが実行される (Q323255)」(マイクロソフト,要約情報とパッチ)
Microsoft Security Bulletin MS02-055「Unchecked Buffer in Windows Help Facility Could Enable Code Execution (Q323255)」(米Microsoft,英語情報)
「MS02-055: Windows ヘルプ機能の未チェックのバッファにより,コードが実行される (Q323255)」(マイクロソフト)

(勝村 幸博=IT Pro)