マイクロソフトは8月21日,ほとんどのWindowsにデフォルトで含まれる「MDAC」のセキュリティ・ホールを公開した。それ自体の深刻度は「重要」だが,そのパッチには,深刻度が「緊急」に変更された過去のセキュリティ・ホールのパッチも含まれる。このため,パッチの適用は急務である。しかしながら,セキュリティ情報には“余計な”注意点が記載されているために,誤解を与えているようだ。マイクロソフトには,現状に合わなくなった記述やリンクは早急に削除してもらいたい。

MDACに「重要」のセキュリティ・ホール

 マイクロソフトは,MDAC(Microsoft Data Access Components)に見つかった新規のセキュリティ・ホールである,

MDAC 機能の未チェックのバッファにより,システムが侵害される (823718) (MS03-033)

を公開した(関連記事)。MDACとは,ほとんどの Windows に含まれる,データベース接続機能を提供するコンポーネント群である。今回,MDAC 2.5/2.6/2.7 の特定のコンポーネントに,バッファ・オーバーフローのセキュリティ・ホールが見つかった。

 このため,攻撃者から細工を施したパケットを送信されると,任意のコマンドやコードを実行させられて,事実上マシンを乗っ取られる恐れがある。ただし,攻撃者は攻撃対象となるマシンと同じサブネット上に存在してSQL Serverを装う必要がある。具体的には,攻撃対象マシンがネットワーク上のSQL Serverを探すために送信したブロードキャスト・リクエストの応答として,細工を施したパケットを送信する必要がある。このため,セキュリティ・ホールの最大深刻度は「重要」に設定されている。

 なお,攻撃者が取得できる権限(コマンドやコードの実行権限)は,ブロードキャスト・リクエストを開始したアプリケーションの権限である。また,Windows Server 2003 にデフォルトで含まれるMDAC 2.8 は,今回のセキュリティ・ホールの影響を受けない。

MDACの過去のホールが「緊急」に変更

 いつもならば,以上で「MS03-033」についての説明は終わりである。しかしながら,話は終わらない。というのも,「MS03-033」の修正パッチには,内容が大きく変更された「MDAC 機能の未チェックのバッファにより,システムが侵害される (326573) (MS02-040)」のパッチも含まれているからだ。

 2002年8月1日に公開された「MS02-040」は,当初,「MDAC 機能の未チェックのバッファにより,SQL Server が侵害される (Q326573) (MS02-040)」というタイトルだった。タイトルからも分かるように,影響を受けるのは SQL Server 7.0/2000 であり,MDAC がインストールされていても,SQL Server を使用していない場合には,パッチを適用する必要はないとされていた(関連記事 )。

 しかし,「MS03-033」が公開された8月21日に,「MS02-040」が更新され,深刻度が「中(現在の「警告」に相当すると考えられる)」から「緊急」に変更された。SQL Server を使用していなくても,MDACをインストールしているシステムでは影響を受けることが明らかになったためである。影響を受けるシステムは,「MS03-033」同様,MDAC 2.5/2.6/2.7 をインストールしているシステムである。

 影響範囲は「MS03-033」と同じだが,「MS02-040」のほうがより危険である。「MS03-033」を悪用した攻撃を成功させるには,上記のように特殊な条件を満たす必要がある。ところが「MS02-040」については,細工が施されたWebページやHTMLメールを閲覧するだけで,ユーザーのマシン上で任意のコードを実行させられる恐れがある。

 このため,「MS03-033」の深刻度は,上から2番目の「重要」であるが,「MS02-040」については,最悪の「緊急」に変更された。Windows Server 2003以外のWindowsユーザーは,パッチを適用して,早急に対策を施す必要がある。

 ただし,「MS02-040」用の新しいパッチは,単独のパッチとしては提供されていない。「MS03-033」用パッチに統合されている。つまり,「MS03-033」のセキュリティ・ホールの深刻度は「重要」だが,「MS03-033」のパッチは,「緊急」用のパッチとして,早急に適用する必要がある。

 このことについては,新規のセキュリティ情報である「MDAC 機能の未チェックのバッファにより,システムが侵害される (823718) (MS03-033)」だけを読んでも気が付かないので,注意してほしい。

 とはいえ,マイクロソフトにも工夫の跡は見られる。「TechNet セキュリティ センター」の「マイクロソフト セキュリティ情報 : ハイライト」を見ると,「MDAC 機能の未チェックのバッファにより、システムが侵害 される (326573) (MS02-040)」に「UPDATE」のマークが付けられ,「緊急」として公開されている。

 従来は,このページを見るだけでは重要な更新は分からず,このページよりも“一階層”深い,「マイクロソフト セキュリティ情報一覧」を閲覧しなければ分からないという,とても不便な状況であった。それを考えれば,ユーザーのことを考えて改善を図っている。このような対応は評価したい。

誤解を与える“余計な”注意点

 しかし,今回のセキュリティ・ホールに関しては,上記のような親切な対応を“帳消し”にしてしまうミスを,マイクロソフトは犯してしまったといえる。「MS03-033」のパッチを適用する際に参照されるであろう「MS02-040」情報には,古い記述ならびにリンクがあるために,ユーザーに誤解を与えている(2003年8月31日現在)。

 セキュリティ情報「MS02-040」の「修正プログラム」の項には,「注意」として,「サポート技術情報 436469 - [MDAC] PRB: MS02-040 で提供される修正プログラムをインストールする際の注意点」へのリンクが張られ,「この修正プログラムを適用する前に,必ず次のサポート技術情報を参照してください」と記載されている。

 「MS02-040」のサポート技術情報である「 [MS02-040] Microsoft Data Access Components のセキュリティ アップデート」においても,その「ダウンロード情報」の項に,「サポート技術情報 436469 - [MDAC] PRB: MS02-040 で提供される修正プログラムをインストールする際の注意点」へのリンクが張られている。

 「『MS03-033』のパッチには,『MS02-040』のパッチが含まれる。ということは,『MS03-033』のパッチを適用する際には,『MS02-040』の注意点を守る必要があるのだろう」――と考えるのは極めて自然だ。

 そこで,その「サポート技術情報 436469」を見ると,「パッチを適用するときに『odbc32.dll』を使用しているプロセスがある場合は,セキュリティ・ホールが存在する『odbc32.dll』が置き換わらず,セキュリティ・ホールが修正されない」と書かれている。そして,tlist.exe を使用して odbc32.dll を使用しているプロセスがないことを確認する必要性が述べられている。

 この注意事項に頭を抱えたシステム管理者は多いはずだ。「Blaster」ワーム対応のために,「RPC インターフェイスのバッファ オーバーランによりコードが実行される (823980) (MS03-026)」のパッチの適用に追われて,ようやく落ち着いたところに,適用に注意が必要と思われるパッチが登場したからである。

 「一般ユーザーに対しては,単にパッチを適用させるだけでも苦労する。『tlist.exe を使用して odbc32.dll を使用しているプロセスがないことを確認する』などと注意事項が必要なパッチを適用させるなんて大変過ぎる」――と管理者が考えても無理はない。実際,この注意事項が原因で,パッチの適用を先延ばしにしている組織も多いと聞いている。

 しかし,これらはマイクロソフトが情報を更新しないために生じた誤解である。「MS03-033」の修正パッチ適用時に,この「サポート技術情報 436469 - [MDAC] PRB: MS02-040 で提供される修正プログラムをインストールする際の注意点」を考慮する必要はない。通常のパッチと同じように,単純に適用して全く問題はない。

 あえて注意点を挙げれば,「パッチを適用した後にシステムを再起動する必要があること」および「パッチのアンインストールができないこと」――である。もちろん,他のパッチ同様,「MS03-033」用パッチの検証を個別に行う必要はあるが,システム管理者は,安心してパッチの適用の徹底を一般ユーザーにアナウンスしてほしい。

 混乱を招く原因となった,セキュリティ情報「MS02-040」に記されている「サポート技術情報 436469 - [MDAC] PRB: MS02-040 で提供される修正プログラムをインストールする際の注意点」へのリンクは,英語情報「Microsoft Security Bulletin MS02-040 Unchecked Buffer in MDAC Function Could Enable System Compromise (Q326573)」には,8月31日時点で存在しない。このことからも,「MS03-033」の修正パッチ適用時に,このサポート技術情報を考慮する必要がないことが分かる。

 誤解を与えることがないよう,マイクロソフトには,現状に合わなくなった記述やリンクは,早急に削除してもらいたい。

MDACは2.7にバージョン・アップを

 今回の「MS03-033」および「MS02-040」の影響を受けるのは,MDAC 2.5/2.6/2.7である。MDAC 2.5と2.6もパッチを適用すればこれらのセキュリティ・ホールは解消できるが,2.5/2.6のユーザーは,この機会に2.7にバージョン・アップした上で,2.7用のパッチを適用したい。

 というのも,過去に公開されたMDACのセキュリティ・ホール「Microsoft Data Access Components のバッファ・オーバーランにより,コードが実行される (Q329414) (MS02-065)」については,MDAC をバージョン 2.7以降にアップグレードすることが,推奨される対応策だからだ。詳細については,過去の記事「パッチを無効にされる恐れあり,Windowsの深刻なセキュリティ・ホールを解説する」で紹介した通りである。この記事を読んでいただいた方の多くは,MDAC 2.7にアップグレード済みであろう。まだアップグレードしていない場合は,至急アップグレードした上で,「MS03-033」のパッチを適用することをお勧めする。

 なお,現時点でのMDAC 2.7の最新版は,「Microsoft Data Access Components 2.7 SP1 Refresh」である。これは,Microsoft SQL Server 2000 Service Pack 3a にも含まれている。

 MDAC 2.7 SP1 Refresh をインストールする際の注意点は,MDAC 2.7 SP1 Refreshのページの「ダウンロードの説明」を参照してほしい。注意点としては,例えば,「使用中のアプリケーションが検出された場合には,そのアプリケーションを終了させた後で,MDACのインストールを行う必要がある」というものがある。これに関する詳細は,過去の記事「『Windowsの深刻なホール』対策で発生するトラブルを解決する」を参照してほしい。

 MDACをインストールする際の注意点は,「Microsoft Data Access Components のバッファ オーバーランにより,コードが実行される (Q329414) (MS02-065) 」の「MDAC 2.7のインストールに伴う注意点」にも記載されている。ただし,この情報には一部現状とは異なるものがあるので,要注意である。

 同情報では,MDAC 2.7をインストールすると,以前適用したパッチが一部無効になってしまうので,それらのパッチを再適用する必要があるとしている(この問題に関する詳細は,過去の記事で解説している)。しかし,最新の「MDAC 2.7 SP1 Refresh」では,この問題は解消されている。このため MDAC 2.7 SP1 Refresh 適用後に,過去のパッチを再適用する必要はない(詳細は MDAC 2.7 SP1 Refreshのページを参照のこと)。

 以上のように,「MS02-065」を考慮すれば,MDAC 2.5/2.6の場合には,単に「MS03-033」のパッチを適用するのではなく,MDAC 2.7にバージョン・アップしてから「MS03-033」用パッチを適用するか,MDAC 2.8にアップグレードして,今回の「MS03-033」および「MS02-040」に対応するべきである。

 ただし,MDAC 2.8については,「Microsoft Data Access Components (MDAC) 2.8」のページにおいて,8月24日からダウンロード可能になっているものの(「 Microsoft Universal Data Access」 でのアナウンスは8月28日),バージョン・アップに関する詳細な情報はほとんどない。このため現状では,MDAC 2.7にバージョン・アップしてから,「MS03-033」用パッチを適用することをお勧めする。なお,「MS03-033」用パッチは,MDAC 2.7 と MDAC 2.7 SP1 のいずれにも適用できる。

追加情報に注意

 今回の記事では,MDAC関連の話題を中心に取り上げた。スペースの関係上,その他のWindows関連セキュリティ・トピックス(2003年8月31日時点分)については,プロダクトごとにまとめたリンクを記事末に用意するにとどめる。それぞれの詳細については,各リンク先の情報およびIT Proで掲載された関連記事などを参照してほしい。

 特に,「Internet Explorer 用の累積的な修正プログラム (822925) (MS03-032)」「Windows カーネル メッセージ処理のバッファ オーバーランにより,権限が昇格する (811493) (MS03-013)」については追加情報があるので確認しておいてほしい。

 「Internet Explorer 用の累積的な修正プログラム (822925) (MS03-032)」では,「修正プログラムに関する追加情報」が加筆されている。具体的には,「Windows 2000 および Windows NT 4.0 で実行している IE 5.01」と「Windows 2000 で実行している IE 5.5」にパッチを適用した場合には,再起動後,管理者ログオンが必要となる。

 さらに,ASP.NET 1.0 を使用しているWindows XP にパッチを適用した場合に発生する問題も追加されている。具体的には,パッチを適用すると,「サーバー アプリケーションは現在使用できません」 または 「Server Application Unavailable」と表示され,Web アプリケーションが正常に実行できない場合がある。

 「Windows カーネル メッセージ処理のバッファ オーバーランにより,権限が昇格する (811493) (MS03-013)」では,「警告」 の欄に「サポート技術情報 827780 Windows 2000 SP2 環境に SUS,自動更新または Windows Update カタログから入手した MS03-013 をインストールするとブルースクリーンが発生する」という情報が追加されている。それぞれ注意しよう。



マイクロソフト セキュリティ情報一覧

『Windows ファミリー』
MDAC 機能の未チェックのバッファにより,システムが侵害される (823718) (MS03-033)
 (2003年 8月21日:日本語情報および日本語版パッチ公開,最大深刻度 : 重要)

『Windows ファミリー』
MDAC 機能の未チェックのバッファにより,SQL Server が侵害される (Q326573) (MS02-040)
 (2003年 8月21日:Windows のすべてのバージョンが影響を受けることを追加,最大深刻度 : 緊急要)
 (2002年 8月 1日:日本語情報および日本語版パッチ公開,最大深刻度 : 中)

『IE 5.01/5.5/ 6/6 for Windows Server 2003』
Internet Explorer 用の累積的な修正プログラム (822925) (MS03-032)
 (2003年 8月29日:「修正プログラムに関する追加情報」に,再起動に関する情報を追加)
 (2003年 8月26日:Windows XP 用パッチの ASP.NET に関連する問題を追加)
 (2003年 8月25日:「警告」に「サポート技術情報 827641」の情報を追加)
 (2003年 8月21日:日本語情報および日本語版パッチ公開,最大深刻度 : 緊急)

『Windows NT 4.0/2000/XP』
Windows カーネル メッセージ処理のバッファ オーバーランにより,権限が昇格する (811493) (MS03-013)
 (2003年 8月28日:「警告」に「サポート技術情報 827780」の問題を追加)
 (2003年 5月29日:パフォーマンス問題を修正するWindows XP SP1用パッチを公開)
 (2003年 5月 1日:「サポート技術情報 819634」を公開)
 (2003年 4月28日:Windows XP SP1 用パッチのパフォーマンスの問題に関するリンクを追加)
 (2003年 4月24日:Windows XP SP1 用パッチのパフォーマンスの問題を追加)
 (2003年 4月17日:日本語情報および日本語版パッチ公開,最大深刻度 : 重要)

『Windows NT/2000/XP/2003』
インターフェイスのバッファ オーバーランによりコードが実行される (823980) (MS03-026)
 (2003年 8月22日:「修正プログラムに含まれる過去の修正」 の欄を更新)
 (2003年 8月15日:スキャン・ツールに関する情報を追加)
 (2003年 8月14日:パッチの対象プラットフォームに Windows NT Workstation 4.0 を追加)
 (2003年 8月13日:Windows 2000 SP2 用パッチのサポートおよび回避策に関する情報を追加)
 (2003年 8月13日:「回避策」に,DCOM を無効にする方法を追加)
 (2003年 7月19日:「問題を緩和する要素」と「回避策」にポートの情報を追加)
 (2003年 7月17日:日本語情報および日本語版パッチ公開,最大深刻度 : 緊急)

『全Windows』
DirectX の未チェックのバッファにより,コンピュータが侵害される (819696) (MS03-030)
 (2003年 8月21日:追加のパッチに関する詳細を追加)
 (2003年 8月21日:「技術的な詳細」に,追加のパッチに関する説明を追加)
 (2003年 7月24日:日本語情報および日本語版パッチ公開,最大深刻度 : 緊急)

TechNet Online セキュリティ

ウイルス対策情報 : Sobig に関する情報

ウイルス対策情報 : Dumaru に関する情報


山下 眞一郎(Shinichiro Yamashita)
株式会社 富士通南九州システムエンジニアリング
第一ソリューション事業部ネットソリューション部 プロジェクト課長
yamaアットマークbears.ad.jp


 「今週のSecurity Check [Windows編]」は,IT Proセキュリティ・サイトが提供する週刊コラムです。Windows関連のセキュリティに精通し,「Winセキュリティ虎の穴」を運営する山下眞一郎氏に,Windowsセキュリティのニュースや動向を分かりやすく解説していただきます。(IT Pro編集部)