マイクロソフトは10日、月例のセキュリティ更新プログラム(修正パッチ)をリリースし、セキュリティ情報を公開した。
今月公開されたセキュリティ更新は全部で10件と多い。内訳としては、最大深刻度が最も高い“緊急”が6件、上から2番目の“重要”が3件、3番目の“警告”のものが1件となっている。
ただ、既にインターネットで公開されている脆弱性は、
- Internet ExplorerのCVE-2007-3091
- IISのCVE-2009-1535
- WindowsカーネルのCVE-2009-1123とCVE-2009-1126
- RPCのCVE-2009-0568
と限られており、現在までウイルスなどへの悪用が確認されたものはIISの1件のみであることから、数こそ多いものの、通常通り注意をしておけばさほど深刻になる必要はなさそうだ。
なお、今月のセキュリティ更新には、5月29日付のセキュリティアドバイザリで報告されているDirectShowのゼロディ脆弱性に関しての修正はない。こちらは、危険な脆弱性であり悪用が広がる可能性も十分にあるので、回避策を取りつつ、引き続き十分に警戒する必要があるだろう。
それでは今月は、LAN内ネットワークサーバーおよび一般のクライアントPCに関係ありそうなセキュリティ更新情報を中心に見ていこう。
● MS09-018:Active Directoryの脆弱性により、リモートでコードが実行される(971055)
これはサーバーPCにのみ関係するものだが、
- Active Directoryの無効な解放の脆弱性 - CVE-2009-1138
- Active Directoryのメモリリークの脆弱性 - CVE-2009-1139
という2つの脆弱性を修正するセキュリティ更新だ。
どちらも、これまで一般には未公開の問題で、タイトルでわかるようにどちらもActive Directoryサーバーのメモリ破壊の脆弱性だ。
「Active Directoryの無効な解放の脆弱性 - CVE-2009-1138」は、特にWindows 2000 Serverで問題となるだろう脆弱性だ。このOSのActive Directoryサーバーサービスには、LDAPリクエストの処理部分のメモリ管理に問題があり、悪意のLDAP(LDAPS)リクエストによって、サーバーを乗っ取られる可能性がある。悪意のコードの実行に成功した場合、コードは管理者権限で実行されるため、完全にサーバーを乗っ取ることが可能だ。ちなみに、このLADPリクエストは、Active Directoryに登録されていないユーザーでも発行することができる。
なお、「Active Directoryのメモリリークの脆弱性」の方はWindows Server 2003にも存在するが、Windows 2000 Server、Windows Server 2003のどちらも、実行が成功しなかった場合、LSASSプロセスは異常終了し、結果としてOSが停止あるいは再起動する、いわゆるサービス拒否状態となる。
Active Directoryは、企業内ネットワークなどによく使われており、悪意の攻撃によって機能停止した場合、業務に影響が出るケースが多々あるはずだ。サーバー管理者は、できるだけ早くこのパッチを適用すべきだろう。
● MS09-019:Internet Explorer用の累積的なセキュリティ更新プログラム(969897)
これはInternet Explorer(IE)の脆弱性で、
- 競合状態のクロスドメインの情報の漏えいの脆弱性 - CVE-2007-3091
- クロスドメインの情報の漏えいの脆弱性 - CVE-2009-1140
- DHTMLオブジェクトのメモリの破損の脆弱性 - CVE-2009-1141
- HTMLオブジェクトのメモリの破損の脆弱性 - CVE-2009-1528
- 初期化されていないメモリの破損の脆弱性 - CVE-2009-1529
- HTMLオブジェクトのメモリの破損の脆弱性 - CVE-2009-1530
- HTMLオブジェクトのメモリの破損の脆弱性 - CVE-2009-1531
- HTMLオブジェクトのメモリの破損の脆弱性 - CVE-2009-1532
と8つの脆弱性を修正するセキュリティ更新だ。
このうち、「競合状態のクロスドメインの情報の漏えいの脆弱性 - CVE-2007-3091」は既にインターネットで知られている脆弱性だ。それも、かなり前から公開されていたもので、初出は2007年6月ごろとされている。あるサイトで、「MSIE bait & switch vulnerability demo」という名前で、最新のパッチを当てたIE6とIE7でも実行可能な攻撃コードのデモが行われ、技術情報も解説されていた。
ただ、この脆弱性の内容は簡単に言えば、JavaScriptによって、本来公開すべきでないほかのサイトにCookie情報が流出するというものだ。脆弱性を突くスクリプトを作成すること自体は難しくないが、悪用された場合の被害の深刻さはさほどないと思ってもいいだろう。
むしろ、今回のセキュリティ更新では、一般には未公開だったが危険な脆弱性として「DHTMLオブジェクトのメモリの破損の脆弱性 - CVE-2009-1141」あたりに注目しておくべきかもしれない。この脆弱性のExploitability Index(悪用可能性指標)は「1 - 安定した悪用コードの可能性」となっている。
この脆弱性は、IEに存在する、悪意の攻撃者によって任意のコードの実行を可能にする脆弱性だ。IEのWebページ表示部分に問題があり、DHTMLオブジェクトのあるメソッドの呼び出しを行うことでメモリ破壊を起こす。そこで、攻撃者はこの脆弱性を攻撃することで、結果として任意のコードをPCに読み込ませ実行させることが可能だ。
もしコード実行が成功した場合、コードはIEを実行していたユーザーの権限で動く。つまりWindows XPなどで管理者権限で利用していた場合、攻撃者はPCを完全に乗っ取ることが可能になるわけだ。
それから「HTMLオブジェクトのメモリの破損の脆弱性 - CVE-2009-1531」の内容も発見・通報したZero Day Initiativeによって報告されている(http://www.zerodayinitiative.com/advisories/ZDI-09-039/)が、これも警戒しておくべき脆弱性だろう。
Zero Day Initiativeによれば、IE7に存在する脆弱性で、JavaScriptのgetElementsByTagName()とドキュメント中の要素の並び替えを行った時に問題が発生するというものだ。Ajaxページなどで使われるonreadystatechangeを使用することで、IEが確保していない領域を開放してしまい、結果としてメモリ破壊を起こしてしまう。Exploitability Indexは「3 - 機能する見込みのない悪用コード」なので、実際には任意のプログラムを実行させることは難しいと考えられるものの、理屈からいえばIEを落とすことは簡単にできると考えられる。これを使ったいたずらには気を付けておくべきだろう。
ところで、Exploitability Indexといえば、「HTMLオブジェクトのメモリの破損の脆弱性 - CVE-2009-1532」のそれに注目してほしい。この脆弱性は、IE8に存在する脆弱性で、3月に開催された「pwn2own」と呼ばれるクラッキングコンテストで初めて使用されたものだ。
IE8のみが対象となっているのだが、この脆弱性のExploitability Indexは、DEP(データ実行防止)の設定によって異なっており、DEPが有効になっているWindows Vista用のIE8の場合は「3 - 機能する見込みのない悪用コード」とされているが、無効の場合はこれが「1 - 安定した悪用コードの可能性」、つまり安定して動作するような悪用コードを作成できる可能性があるとされているのだ。普段は見過ごされがちだが、DEPがセキュリティ上それなりに効果があるということを示しているといえるだろう。
ちなみに、DEPとはセキュリティ機能の1つで、データ領域に記録されたデータをプログラムとして実行されるのを防ぐ機能のことだ。Windows Vista SP1以降およびWindows Server 2008とIE8の組み合わせでは、デフォルトで有効とされている。
なお、(今回の脆弱性とは直接関係しないが)IE7ではDEPはデフォルトでは無効となっている。また、IE8でも、ハードウェアやBIOSレベルでDEPに対応していないWindows XP SP2、サービスパックを適用していないWindows Vistaや、レジストリ設定でOSのDEP設定を無効にわざとしている場合などは、残念ながらDEPを有効にすること自体ができない。
このIE8の脆弱性はWindows 7 RCには影響を及ぼさないが、Windows 7 Betaには影響があるためパッチが提供されている。ベータ版を使用している場合は、パッチを適用しておく必要がある。
● MS09-021:Microsoft Office Excelの脆弱性により、リモートでコードが実行される(969462)
- レコードポインターの破損の脆弱性 - CVE-2009-0549
- オブジェクトレコードの破損の脆弱性 - CVE-2009-0557
- 配列インデックスのメモリの破損の脆弱性 - CVE-2009-0558
- 文字列のコピーのスタックベースのオーバーランの脆弱性 - CVE-2009-0559
- フィールドサニタイゼーションのメモリの破損の脆弱性 - CVE-2009-0560
- レコードの整数のオーバーフローの脆弱性 - CVE-2009-0561
- レコードポインターの破損の脆弱性 - CVE-2009-1134
と7つの脆弱性を修正したセキュリティ更新だ。
ただし、これらの脆弱性の深刻度が最大の“緊急”とされているソフトはOffice 2000 (Excel 2000)のみで、他の例えばOffice 2003/2007などではその次のレベルの“重要”にとどまっている。
いずれもファイル処理の問題個所を突くような不正なファイルを読み込ませることで、Excelで不正なプログラムを実行させようというものだ。例えばCVE-2009-1134であれば、Excelに存在するBIFFファイルフォーマットの脆弱性を突いて、ファイル中のQsirレコードの大きさを示す値を異常な値にしたような不正なファイルを読み込ませることで、スタックオーバーフローを引き起こし、結果として悪意の第三者による悪意のプログラムを実行させられる可能性がある。
なお、これら脆弱性のうち、CVE-2009-0557、CVE-2009-0559、CVE-2009-0561、CVE-2009-1134がExploitability Indexが「1 - 安定した悪用コードの可能性」とされている。これらの脆弱性を突いたファイルベースの攻撃に、特にExcel 2000ユーザーは警戒しておくべきだろう。
● MS09-024:Microsoft Worksコンバーターの脆弱性により、リモートでコードが実行される(957632)
Office 2000で深刻度が最も高い“緊急”、それ以降のOfficeでは次に高い“重要”とされた「ファイルコンバーターのバッファーオーバーフローの脆弱性(CVE-2009-1533)」に関するセキュリティ更新だ。
この脆弱性は、Workファイルを読み込み処理する部分、具体的にはWorks for Windows 4文書コンバータのWORKS432.CNVのフォント名を処理する部分に存在している。長いフォントサイズとフォント名を指定するよう加工された.wps形式のWorksファイルを開いた際にバッファオーバーフローが発生し、結果として、PC上で悪意の第三者によって任意のプログラムを実行される可能性があるというものだ。実行された悪意のプログラムは、Officeを実行していたユーザーの権限で実行される。
なお、この問題は、NGS SoftwareのShaun Colley氏およびフォティーンフォティ技術研究所の鵜飼裕司氏によってMicrosoftに報告されたものだ。フォティーンフォティ技術研究所のWebサイトでは「[FFRRA-20090610]Microsoft WordのWorks for Windows 4文書コンバータにおけるバッファオーバーフローの脆弱性」(http://www.fourteenforty.jp/research/advisory.cgi?FFRRA-20090610)として、この脆弱性の情報が日本語である程度詳細に解説されている。興味のある方は見てみるといいだろう。
● MS09-027:Microsoft Office Wordの脆弱性により、リモートでコードが実行される(969514)
これまで一般には非公開だった、
- Wordのバッファーオーバーフローの脆弱性 - CVE-2009-0563
- Wordのバッファーオーバーフローの脆弱性 - CVE-2009-0565
という2つの脆弱性を解決するセキュリティ更新だ。
どちらもファイル読み込み解釈部分の問題で、悪意のファイルを読み込んだ場合に、バッファオーバーフローによるメモリ破壊を起こし、任意のコードを実行される可能性があるという内容だ。
攻撃が成功した場合、Wordを実行していたユーザーと同じ権限で、悪意のプログラムがPC上で実行される。
「Wordのバッファーオーバーフローの脆弱性 - CVE-2009-0565」の方は、Word 2000では深刻度“緊急”、Exploitability Indexの評価も「1 - 安定した悪用コードの可能性」となっているので、Word 2000ユーザーはファイルベースの攻撃を警戒しておくべきだろう。
関連情報
■URL
マイクロソフト2009年6月のセキュリティ情報
http://www.microsoft.com/japan/technet/security/bulletin/ms09-jun.mspx
■関連記事
・ MSが6月の月例パッチ公開、“緊急”6件を含む計10件(2009/06/10)
( 大和 哲 )
2009/06/11 20:03
- ページの先頭へ-
|