8月のマイクロソフトのセキュリティ更新が8月15日未明に公開された。今回は事前予告の通り、「緊急」6件、「重要」3件の計9件のセキュリティ情報とセキュリティ修正パッチがリリースされた。
日本では盆休み時期の公開となり、そのうえ今回は件数も多いため、どのような情報が公開されるか気をもんでいた管理者やユーザーもいるだろう。
結論から言うと、件数は多いものの、今回公開された9件のセキュリティ更新はいずれも非公開でマイクロソフトに情報が提供されたものばかりで、すぐに悪用される可能性は低そうだ。休み中に緊急招集をかける必要まではなさそうだ。通常のルール通りアップデートを行なえばいいだろう。
もっとも、休み期間中使われていないPCは、休み明けにできるだけ早くセキュリティ修正パッチを適用すべきなのは言うまでもない。休み明けは、休み期間中のメールをまとめて読み出す社員も多いことから、セキュリティ修正パッチのダウンロードとあわせて、社員数の多い企業ではトラフィック面で注意が必要となるだろう。
では、8月公開のセキュリティ更新から、今回は「緊急」6件の内容を確認しよう。
● MS07-042:XMLコア サービスの脆弱性(936227)
「MS07-042」は、XMLコア サービスに関する未公開の脆弱性だ。
XMLコア サービスは、マイクロソフト製のXMLプロセッサで、「MSXML」とも呼ばれる。XMLドキュメントの解析や検証、変換などの作業を行なうソフトウェアだ。「MSXML3.DLL」「MSXML3.DLL」「WinHTTP5.dll」「MSXML5.DLL」「MSXML6.DLL」といった名前のファイルで配布されている。
JavaScriptやVBAなどのスクリプトからMSXMLにリクエストを発行し、解析されたXMLデータを取得することができる。そのリクエストデータに特殊な細工を施すことで、MSXMLのメモリ破壊を引き起こし、任意のプログラムが実行可能となるという脆弱性だ。
この方法で実行される悪意のプログラムは、ユーザーがWindowsにログインした際に使用したユーザー名の権限で実行される。もし、ユーザーがAdministrator権限でログインしていた場合は、システム上ですべての操作が可能になってしまうわけだ。
対象となるソフトウェアは、MSXML 3.0/4.0/5.0/6.0とされている。
これらのファイルは、OSやマイクロソフト製品を利用しているとインストールされ、たとえばInternet Explorer 6を利用している場合はMSXML 3.0 SP2、(IE6 SP1では3.0 SP2)、Windows Server 2003を利用している場合は、データベースをアクセスするためのMDAC(Microsoft Data Access Components)2.8に付属するMSXML 3.0 SP4が標準でインストールされる。
同様に、Windows Live OneCare をインストールしている場合はMSXML 4.0が、Microsoft .NET Framework 3.0 やVisual Studio 2005を使用している場合は6.0がインストールされる。このほか、サイトからダウンロードして明示的にPCにインストールしている場合もあるだろう。
悪用された場合の攻撃方法、悪用範囲は限定される脆弱性だが、対象が幅広いので注意が必要だ。
● MS07-043:OLE オートメーションの脆弱性(921503)
「MS07-043」は、対象がVisual Basic 6.0がインストールされたOSに限定された脆弱性情報だ。
対象ソフトウェアでは、OLE オートメーションを利用している場合、特別な細工をされたリクエストが行なわれると、メモリ破壊を起こす可能性がある。OLEオートメーションは、ActiveXオートーメーションとも呼ばれ、ソフト同士がリンク呼び出しという形で機能をほかのソフトのビューに貼り付けることができるというものだ。
この脆弱性を利用した悪意のプログラムは、ユーザーの操作によって起動し、その際には、ユーザーがWindowsにログインした際の権限で動くことになる。
なお、Visual Basic 6.0 がインストールできるOSとしては、Windows 2000/XP/2003 ServerのほかにVistaもあるが、Vistaはこの脆弱性の影響を受けない(それ以外のOSは受ける)。
Visual Basic 6は、1998年リリース、VB.NET、VB2005などすでに新しいバージョンが出ており、サポート期間が2008年3月末で切れる古いソフトウェアだが、よく見ると現在でも業務用アプリやオンラインソフトなどを中心に多く使われていて、OSにラインタイムだけインストールされている場合もよくある。
一見対象が限定される脆弱性情報のよう思えるが、ユーザーが気づかずにインストールされている場合も多いと考えられるので、注意が必要な情報だろう。
● MS07-044:Microsoft Excelの脆弱性(940965)
「MS07-044」は、ExcelとExcel Viewerに存在する未公開の脆弱性だ。リモートからのコード実行が可能な脆弱性で、対象としては、Office 2000/XP/2003、それにOffice 2004 for Mac(Office 2007 for Macは対象外)だが、例によってExcel 2000の場合のみ、深刻度が「緊急」と高くなっている。
この脆弱性は、この脆弱性を発見したSecunia社のWebサイトに掲載されている情報によれば、Excelが、rtWnDeskレコードのインデックス値を取得する際に十分な検証を行なっていないために引き起こされるものだ。
したがって、ここに特殊な値が入っているような細工を施したExcelワークスペースファイル(XLW)をExcelに読み込ませることで、メモリ破壊を引き起こし、Excelを不正終了させたり、ユーザーの意図しないプログラムを実行させることが可能になるという。
この脆弱性に関しては、マイクロソフトサイトにも情報が少なく、マイクロソフトに問題を報告したSecuniaにも最低限の情報しかないため、これ以上の詳細は不明だ。しかし、毎月のようにあるExcelのメモリ破壊問題の1つと考えて、早急なパッチ適用はもちろんだが、不正なExcelデータ、特に怪しげなメールに添付されていたり、怪しげなサイトに掲載されているものを読み込まないなどの注意を徹底すべきだろう。
● MS07-045:IE用の累積的なセキュリティ更新プログラム(937143)
「MS07-045」は、以下3つの脆弱性に関するセキュリティ更新だ。
・CSS メモリ破損の脆弱性 - CVE-2007-0943
・ActiveX オブジェクトの脆弱性 - CVE-2007-2216
・ActiveX コントロールのメモリ破損の脆弱性 - CVE-2007-3041
いずれもリモートでのコード実行が可能となる、未公開の脆弱性だ。特にActiveX関連の2つが問題で、Windows 2000+IE 5.01 SP4またはIE 6、Windows XP SP2+IE 6環境においては、深刻度「緊急」とされている。
IE 7を利用している場合はいずれのOSでも深刻度は「重要」または「注意」。また、OSがVistaの場合は「重要」となっている。
以下で、それぞれの脆弱性の内容を見ておこう。
・CSSメモリ破損の脆弱性 - CVE-2007-0943
未公開の脆弱性で、Internet Explorer 5.01 SP4のCSS文字列の解釈部分にある問題によりメモリ破壊を起こし、任意のコードが実行される可能性があるというもの。実行されたコードは、そのCSSファイルを表示しようとしたPCの利用者の権限で実行されるため、もし管理者権限でブラウザを実行していた場合、悪意のプログラムも管理者権限で実行され、PCを完全に乗っ取ることができる。
この問題は、詳細な情報が公開されていないため、詳しいことは不明なのだが、これまでにいくつか報告されてきた「Internet Explorerで不正なCSSを読み込ませた場合、動作がおかしくなる」「落ちる」「ハングする」というような、バグと思われていた症状の1つだろう。落ちる、あるいはハングする際、悪意のユーザーの意図したプログラムの先頭を実行するように制御できれば、この手のバグはセキュリティホールとなり得るのだ。
今回の脆弱性ではないが、たとえば、先日「やじうまwatch」で紹介されたIE6クラッシュコードも、そのようなセキュリティホールの材料となり得るコードの1つだろう。
というのも、CSSを読み込む際に何か実装上の問題でPCが意図しないメモリ破壊を起こしたり、そこに書かれたアドレスに制御が移ってしまい、結果的にハングあるいはクラッシュする可能性が高いので、それを意図的に制御する手段さえ見つかってしまえば、PCを乗っ取り得る危険なセキュリティホールとなる可能性があるのだ。
ただし、上記はあくまで仮説であり、それが実際に可能かどうかは調べてみないとわからない。悪意のユーザーがこうした仮定の下に調べてなんらかの手段を発見し組み合わせることでゼロデイ攻撃に使われたり、あるいは、マイクロソフトをはじめとするソフトウェアベンダーがセキュリティ更新ソフトを提供した時点で、われわれにはやっとセキュリティホールであったとわかるわけだ。
・ActiveX オブジェクトの脆弱性 - CVE-2007-2216
これまでもよくあった、“意図しなかったActiveXコンポーネントがIEで利用可能だった”という問題だ。
問題のActiveXコンポーネントは、具体的には「tblinf32.dll」「vstlbinf.dll」という、Microsoft Visual Basic 6に含まれるオブジェクトだ。
これらのオブジェクトを使ってコードの実行が可能であるため、たとえば、このActiveXオブジェクトを使うようなWebデータをインターネットに公開しておき、このページを読み込んだPC上で任意のコードを、そのPCの利用者の権限で実行させるような攻撃が可能となる。
このセキュリティ更新プログラムが行なっている対策としては、例によってシステムレジストリ中でこれらのファイルのKill bitを設定することで、ブラウザ上の表示ではこれらのファイルを使えないようにしているようだ。
・ActiveX コントロールのメモリ破損の脆弱性 - CVE-2007-3041
この脆弱性は、ActiveXオブジェクトの「pdwizard.ocx」のメモリ破壊に起因するものだ。詳細は不明だが、このActiveXコントロールには、Internet Explorerで使用された場合、攻撃者が任意のコードを実行する可能性のある方法でオブジェクトがコンピュータの状態を破損させる可能性がある、ということだ。
なお、「pdwizard.ocx」は、Microsoft Office、Visual Studio、Visual SourceSafeなど、多くの製品から参照されているActiveXオブジェクトだ。ただし、IEから呼び出される必要はないので、これも対策としては、例によってシステムレジストリ中でこれらのファイルのKill bitを設定することで、ブラウザ上の表示ではこれらのファイルを使えないようにしているようだ。
● MS07-046:GDIの脆弱性(938829)
「MS07-046」は、Windows 2000/XP SP2、Server 2003 SP1などで、深刻度「緊急」とされる脆弱性だ(Windows Server 2003やWindows Vistaを利用している場合は対象外)。
GDIとは、Windows内の画面描画システムで、Windowsデスクトップなど画面描画を司る重要なシステムだ。ウィンドウ、ビットマップ、線描、カーソル、アイコンなど画面に表示されるものは、およそこのシステムが描画に関わっていると考えていいだろう。このGDIに、(どのような形式のデータの解釈部分にあるのかが不明だが)データのチェックに関して不正な部分があり、これで、利用しているユーザと同じ権限で任意のプログラムを動かすことができるという。ユーザーが管理者権限で利用していた場合、完全にPCを乗っ取ることもできる。
詳細は不明だが、GDIに関してはアニメーションカーソルに関する脆弱性をゼロデイ攻撃に利用され、不定期の緊急セキュリティ更新を行なった「MS07-017(GDI の脆弱性により、リモートでコードが実行される)」問題も過去に存在した。
今回の問題は、ゼロディに利用されておらず、これまで未公開の情報だったこと、また、どの形式の画像データによって引き起こされるかも不明であるため「MS07-017」の時のような攻撃が行なわれるとは考えにくいが、念のため警戒はしておくべきセキュリティ情報だろう。
● MS07-050:Vector
「MS07-050」は、WindowsのVML(Vector Markup Language)ライブラリであるvgx.dllのリクエストの検証部分に問題があり、IE内でVMLデータを図形として表示させようとしたときに、不正なデータが含まれているとIEがハングアップしたり、最悪、悪意のユーザーによって意図された任意のプログラムを実行してしまう可能性があるという脆弱性だ。実行されたプログラムは、IEを使っていたユーザーと同じ権限で実行される。
対象はIE 5.01/IE 6/IE 7が動作する各OSで、これにはVistaも含まれる。
インターネット上のWebサイトにこの脆弱性を悪用したVMLファイルを置いて読み込ませたり、あるいはメールでこの脆弱性を悪用したファイルを送りつけて読ませることで、そのPC上に任意のコードを実行させて、乗っ取ることができる。
VMLの脆弱性に関しては、2006年9月に臨時更新で提供されたセキュリティ更新「MS06-055」などもある。今回のセキュリティ更新がそれに類似したものなのかは、情報が少なくわからないのだが、「MS06-055」で対応したVMLの脆弱性は、悪意あるWebサイトやスパイウェアなどで利用され、ゼロディ攻撃として話題にもなったいわくつきの問題であることを考えると念のため警戒しておいたほうがいい問題と言えるだろう。
関連情報
■URL
2007年8月のセキュリティ情報
http://www.microsoft.com/japan/technet/security/bulletin/ms07-aug.mspx
MS07-042
http://www.microsoft.com/japan/technet/security/bulletin/MS07-042.mspx
MS07-043
http://www.microsoft.com/japan/technet/security/bulletin/MS07-043.mspx
MS07-044
http://www.microsoft.com/japan/technet/security/bulletin/MS07-044.mspx
MS07-045
http://www.microsoft.com/japan/technet/security/bulletin/MS07-045.mspx
MS07-046
http://www.microsoft.com/japan/technet/security/bulletin/MS07-046.mspx
MS07-050
http://www.microsoft.com/japan/technet/security/bulletin/MS07-050.mspx
( 大和 哲 )
2007/08/15 13:31
- ページの先頭へ-
|