Internet Watch logo
記事検索
特別企画
【 2009/06/11 】
6月のマイクロソフトセキュリティ更新を確認する
[20:03]
【 2009/06/09 】
「Googleブック検索」和解案と電子書籍ビジネスの行方(後編)
[12:52]
【 2009/06/08 】
「Googleブック検索」和解案と電子書籍ビジネスの行方(前編)
[14:12]
【 2009/06/04 】
多彩なリフィルでタスクも予定も柔軟に管理できる「xfy Planner」
[10:54]
【 2009/06/02 】
DirectShowのゼロデイ脆弱性に対応する
[14:18]
【 2009/05/28 】
ソニー「nav-u」の小さいカーナビ使ってみました<徒歩・自転車編>
[10:56]
【 2009/05/26 】
SNSはメールの10倍危険? 「心がけ」が大事とカスペルスキー氏
[11:24]
【 2009/05/21 】
被害が多発する「Gumblarウイルス」への対策を実施しよう
[19:20]
ソニー「nav-u」の小さいカーナビ使ってみました<基本機能編>
[11:00]
【 2009/05/15 】
Adobe Reader/Acrobatの脆弱性対策を考える
[15:27]
【 2009/05/14 】
5月のマイクロソフトセキュリティ更新を確認する
[12:58]
【 2009/04/16 】
4月のマイクロソフトセキュリティ更新を確認する
[15:57]

8月のマイクロソフトセキュリティ更新を確認する


 マイクロソフトは9日、月例のMicrosoft Updateによるセキュリティ更新プログラム(修正パッチ)のリリースとセキュリティ情報の公開を行なった。

 マイクロソフトはセキュリティ問題の深刻度を4段階にレベル分けしているが、今回新たに公開されたセキュリティ情報は、「緊急」に分類される脆弱性情報だけでも9つが報告されている。そのうちの1つは複数の脆弱性に対応する「累積的アップデート」に関するもので、詳細に確認すると、それだけでも8つもの新たな脆弱性への対応を行なっていることになる。

 なお、先月、先々月とマイクロソフト以外からInternet Explorer(IE)やOfficeの脆弱性情報が公開されたり、未公開の脆弱性を利用した悪意のコードがいくつか出回っている。今月のセキュリティ更新では、それらに対する対応も多く行なわれている。

 例えば先月の特別企画でも取り上げたが、Excelで長大なURLのハイパーリンクをたどると任意のコードをExcelで実行できるとされる「Windows ハイパーリンクオブジェクトライブラリのバッファオーバーフローの問題」なども、今回修正されている。

 今月は、先月以上に重要な更新が大量に行なわれたと考え、できるだけ早めに適用可能なすべてのセキュリティ更新プログラムをインストールすべきだろう。

緊急
MS06-040Serverサービスの脆弱性により、リモートでコードが実行される(921883)
MS06-041DNS解決の脆弱性により、リモートでコードが実行される(920683)
MS06-042Internet Explorer用の累積的なセキュリティ更新プログラム(918899)
MS06-043Microsoft Windowsの脆弱性により、リモートでコードが実行される(920214)
MS06-044Microsoft管理コンソール(MMC)の脆弱性により、リモートでコードが実行される(917008)
MS06-046HTMLヘルプの脆弱性により、リモートでコードが実行される(922616)
MS06-047Microsoft Visual Basic for Applications(VBA)の脆弱性により、リモートでコードが実行される(921645)
MS06-048Microsoft Officeの脆弱性により、リモートでコードが実行される(922968)
MS06-051Windowsカーネルの脆弱性により、リモートでコードが実行される(917422)

重要
MS06-045Windowsエクスプローラの脆弱性により、リモートでコードが実行される(921398)
MS06-049Windowsカーネルの脆弱性により、特権が昇格される(920958)
MS06-050Microsoft Windowsハイパーリンクオブジェクトライブラリの脆弱性により、リモートでコードが実行される(920670)


 まずは、最大深刻度「緊急」とされているセキュリティ更新プログラムと情報について見ていこう。


MS06-040:Serverサービスの脆弱性により、リモートでコードが実行される(921883)

 この脆弱性は、セキュリティパッチがリリースされる以前から、悪用コードが確認されていた脆弱性だ。ネットワークを経由して、リモートにコードを実行できる危険なセキュリティホールで管理者権限を含めてPCを完全に乗っ取ることができる。

 このセキュリティホールは、WindowsのServerサービスに関するものだ。Serverサービスとは、RPCのサポートや、Windowsファイル共有、プリンタ共有などに使われるもので、PCが他のPCにアクセスするときに使うサービスだ。このサービスはComputer Browserサービスなどとも依存関係にあるため、このサービスが動いていなければネットワーク上の他のPCを見ることすらできなくなる。特に、WindowsをLAN接続して使う上では必須のサービスと言えるだろう。

 このServerサービスで、バッファ確保の際に未チェックの領域があるため、適当なデータをこのServerサービスに渡すとバッファオーバーフローを起こし、Windows上で任意のコードを実行することが可能となる。

 この脆弱性を利用した攻撃への防御方法としては、パッチを当てる以外にはパーソナルファイアウォールを利用するなどの方法を取ることも可能だが、マイクロソフトが深刻度を緊急としていることからも、大至急パッチの適用が必要と考えるべきだろう。


MS06-041:DNS解決の脆弱性により、リモートでコードが実行される(920683)

 このセキュリティ更新プログラムでは、
  • Winsockのホスト名の脆弱性(CVE-2006-3440)
  • DNSクライアントのバッファオーバーランの脆弱性(CVE-2006-3441)
という2つの脆弱性が修正される。いずれもリモートから任意のコードが実行でき、PCを乗っ取ることができるという危険な脆弱性だ。

 なお、いずれの脆弱性も、Windowsのネットワークに深くかかわる箇所での脆弱性であり、既にサポートの終了した9x系Windowsに関しての詳細はわからないが、少なくとも現在サポートされているWindows系OSのすべてで深刻度「緊急」となっている。

 「Winsockのホスト名の脆弱性」は、セキュリティソフトメーカーであるNext Generation Security Software(NGS)のPeter Winter Smith氏、「DNSクライアントのバッファオーバーランの脆弱性」はInternet Security Systems(ISS)のMark Dowd氏によって発見されたものだ。

「Winsockのホスト名の脆弱性」はNGSによれば、ホスト名のルックアップを行なう場合に呼び出されるヘルパーコンポーネントの1つに存在している。アプリケーションからこのコンポーネントを呼び出す際に、文字列のチェックが正しく行なわれていないために、ホスト名に特別な文字列を渡すことで、バッファオーバーランを引き起こすことができるというもののようだ。

 ホスト名から接続先を調べる操作は、ネットワークを使うアプリケーションの多くが行なう操作だ。逆に言えば、この脆弱性の悪用は、WebブラウザやFTPクライアント、メールソフトからと、非常に数多くのバリエーションを作ることが可能になる。できるだけ早急に、パッチを当てるべき脆弱性だと考えるべきだろう。

 また、「DNSクライアントのバッファオーバーランの脆弱性」は、ISSによれば、Windows 2000/XPおよびWindows Server 2003(いずれもサービスパックを適用している場合も含む)で見られる脆弱性だ。

 クライアントPCは、ネットワークアドレスとIPアドレスとの関係を調べるために、ネットワーク上のDNSサーバーに問い合わせを行なうが、このDNSサーバーが悪意のコードを返すことで、攻撃が可能になるというものようだ。

 具体的には、Windows内部のDNSクライアントが、DNSサーバーに対して問い合わせを行なった際に、サーバー側からTXT/HINFO/X25/ISDN/ATMAレコードで不正な長さの値を返すことで、DNSクライアントのバッファオーバーランを引き起こすことができるという。

 この攻撃を仕掛けるためには、まずネットワーク上のDNSサーバーを乗っ取らなければならない。逆に、DNSサーバーさえ乗っ取ってしまえば、さまざまな不正な攻撃、例えばウイルスをばらまく、クライアントPCを乗っ取る、といったことが怪しまれずに可能となる可能性を秘めている。危険な脆弱性だと認識しておくべきだろう。


MS06-042:Internet Explorer用の累積的なセキュリティ更新プログラム(918899)

 IEの数多くの脆弱性を、この更新プログラムで修正している。深刻度の度合いは、注意レベルから緊急を要するものまでさまざまだが、中にはパッチが提供される以前から悪用コードが公開されていたものもある。できるだけ早めにこのパッチを適用しておくべきだろう。

 なお、今回のパッチで対応する主な脆弱性の内容は、それぞれ以下のようになっている。

リダイレクトクロスドメインの情報の漏洩の脆弱性(CVE-2006-3280)
この脆弱性は6月末に話題となったもので、実証コードも公開されており、現在まで悪用の報告こそないものの内容的には広く知られている脆弱性だった。具体的には、IEのobject.documentElement.outerHTMLプロパティの処理に問題があり、IEが表示しているWebページのコンテンツが、第三者がリモートで盗み見ることが可能になるというものだ。例えば、Webメールの内容を盗み見たり、セッションIDをページ内にHiddenタグなどで隠しているページだと、アカウントの盗用も可能となるというものだ。

HTMLレイアウトおよび配置のメモリ破損の脆弱性(CVE-2006-3450)
IE内のCSSのハンドリングの問題で、リモートからPC上で任意のコードを実行させることができるものだ。具体的には、document.getElementByIDを使ってある操作を行なわせようとすると、メモリ破壊を引き起こすことができる。悪用方法としては、このようなコードを含むHTMLファイルをWeb上に置き、読み込ませることでウイルスやトロイの木馬に感染させるというような使われ方をすることが考えられる。原理から考えて、比較的簡単に悪用コードを作ることが予想できる、警戒すべき脆弱性だろう。

CSSメモリの破損の脆弱性(CVE-2006-3451)
Webに不正な内容のコンテンツを置いておき、訪問者のPCに悪意のコードを感染させることができるような脆弱性だ。具体的には、スタイルシート内でimport規則を使って他のスタイルシートを呼び出すことができるが、この呼び出しを幾重にも繰り返し使うことで、メモリ破壊が起きうるという。概要を読む限りでは、コードを実行するためにはどこでメモリ破壊が起きるのかを正確に予測する必要があり、実際に悪意のコードを作り出すのは難しいと思えるが、原理的には任意のコードを実行できる脆弱性であり、一定の注意は必要な脆弱性だろう。

HTMLレンダリングのメモリの破損の脆弱性(CVE-2006-3637)
IEでいくつかのHTMLレイアウトの組み合わせを行なったページを表示すると、メモリ破壊を起こし、任意のコードの実行が可能になりうるという脆弱性だ。報告者も公表されておらず、これまでに実証コードの公開もなく、悪用もされていないということで詳細は不明だが、HTMLのレイアウトの組み合わせということは原理さえわかれば簡単に(少なくともDoS攻撃程度は)悪用が可能となりそうだ。単純なHTMLのレイアウトだとすると、これまでに「HTMLの組み合わせでIEが落ちる」という話が広まったこともない。そう考えると、非常に見つけにくい脆弱性なのかもしれない。

COMオブジェクトのインスタンス化のメモリ破損の脆弱性(CVE-2006-3638)
MS05-054など、過去に発見された同様の「COMオブジェクトのインスタンス化のメモリ破損」が起きる脆弱性と同様だ。対処方法もこれまでと同様に、攻撃対象となるCOMオブジェクトのクラス識別子(CLSID)のリストにKill Bitを設定し、IEからアクセス不可能とする。

FTPサーバーコマンドインジェクションの脆弱性(CVE-2004-1166)
CVEでの登録番号「CVE-2004-1166」からわかるように、2004年12月に公開された脆弱性だ。当時Bugtraqで実証コードも公開されており、既に多くの人に知られている問題となっている。当時のメールでは、IEで「ftp://ftpuser:ftppass@server/directory%0asomecommand%0a」にアクセスするとsomecommandコマンドが実行されることなどが解説されており、コマンドを追加し実行させる際に本来起こってはいけない権限の昇格が行なわれると考えられる。なぜ今頃になってパッチが提供されたのかは不明だ。


MS06-043:Microsoft Windowsの脆弱性により、リモートでコードが実行される(920214)

 Windows XP SP2や、Windows Server 2003 SP1のOutlook Express 6に脆弱性が存在する。WindowsのMHTMLプロトコルの解析に不正確な点があり、第三者から送られたファイルを開くと、任意のコードを実行される可能性がある脆弱性となっている。

 この脆弱性はBuqtraqなどで公開されており、実証コードも公開されている。それによると「mhtml://mid:AAAAAAAAAA……」と延々と続くアドレスを指定すると、バッファオーバーフローを引き起こすことができるということのようだ。

 公開された情報でわかっているのはバッファオーバーフローの引き起こし方のみで、実際にコマンドを起動させるところまでは証明していないが、マイクロソフトの情報では、任意のコードを実行させ、PCを完全に乗っ取ることが可能であるとしている。念のために警戒し、パッチを当てておくべき脆弱性だろう。


MS06-044:Microsoft管理コンソール(MMC)の脆弱性により、リモートでコードが実行される(917008)

 Windows 2000上のIE 6および5.01で、マイクロソフト管理コンソール(MMC)ライブラリ内の「HTML組み込みリソースファイル」へのアクセスによって、クロスサイトスクリプティングの問題が起こりうるという脆弱性だ。ローカルファイルとのクロスサイトスクリプティングを利用して、任意のコードをPC上で実行させられる。

 IE 5.01では、インターネットゾーンのすべてのURLに置かれた悪意のコンテンツの影響を受ける。IE 6 SP1の場合には、ユーザーはイントラネットゾーンのすべてのURLから影響を受ける可能性があるが、既定でインターネットゾーンのURLからはローカルファイルのアクセスはブロックする設定になっており、悪意のコードを実行される可能性は少ないと考えられる。

 最大深刻度は緊急とされているものの、Windows 2000のみが対象であることも合わせて考えると、悪用される可能性はあまりなさそうだが、該当ユーザーは一応知っておくべき脆弱性情報だろう。


MS06-046:HTMLヘルプの脆弱性により、リモートでコードが実行される(922616)

 Windows 2000 SP4、Windows XP SP1/SP2で深刻度が緊急、Windows Server 2003では深刻度が警告となっている、リモートからのコード実行が可能となる脆弱性だ。

 HTMLヘルプのActiveXコントロールに脆弱性が存在し、これを操作するようなスクリプトが書かれたHTMLファイルをブラウザで表示させることで、PCに任意のコードを実行させることが可能となる。

 具体的には、Internet.HHCtrlのImageプロパティを操作することで、ヒープオーバーフローを引き起こす。発見者のH.D.Moore氏がブログで公表したところによると、例えば以下のようなコードでブラウザのクラッシュを引き起こすことができる。


var a = new ActiveXObject("Internet.HHCtrl.1");
var b = unescape("XXXX");
while (b.length < 256) b += b;

for (var i=0; i<4096; i++) {
a['Image'] = b + "";
}


 ちなみに、この脆弱性は発見者のH.D.Moore氏のブログに最初の情報が公開され、ブログのコメントではIE 7 beta3などでもこの脆弱性が確認されたと指摘されるなど、反響が広がっていった。

 ブログに掲載されたコードでは、ブラウザのクラッシュのみで任意のコードを実行させるまでには至っておらず、実際にそのようなコードを作るにはそれなりに時間がかかると考えられるが、その前にパッチを適用しておくべきだろう。


MS06-047:Microsoft Visual Basic for Applications(VBA)の脆弱性により、リモートでコードが実行される(921645)

 Office製品で使われるVBAの脆弱性によって、リモートから任意のコードに実行が可能となる脆弱性だ。例えば、Excel 2000やWord 2000で悪意のあるデータファイルを読み込むことで、PCを乗っ取られるような悪意のコードを実行させられる可能性がある。

 Office文書が開かれる時に、ホストアプリケーションが渡す特定の文書のプロパティをチェックする部分に問題があるため、ホストアプリケーションが未チェックのパラメータを渡してしまい、バッファオーバーランの状態を引き起こし、任意のコードを実行してしまうのだ。

 Office 2000で深刻度は緊急、Office XPとVisual Basic for Applications SDK 6.0以降で深刻度は重要となっている。

 ここのところ、Office 2000では深刻度が緊急、その他のバージョンでは重要となっている脆弱性が目立つ。Office 2000ユーザーは、これまでの分も含めてもう一度パッチが適用されているか確認するのがベターだろう。


MS06-048:Microsoft Officeの脆弱性により、リモートでコードが実行される(922968)

 Internet Watchでも、PowerPointの未公表の脆弱性を悪用する「Trojan.PPDropper.B」 として報道された、未公表の脆弱性を利用する「ゼロデイ」型の攻撃を行なうトロイの木馬で悪用された脆弱性だ。

 PowerPointが含むDLLファイル、mso.dllのデータ解析部分の実装に問題があり、不正な形式のシェイプコンテナを含むファイルがPowerPointにより解析された場合、バッファオーバーフローを起こし、サービス停止や任意のコードの実行が可能となっていた。

 この脆弱性はトロイの木馬で使われたほか、情報を全公開で投稿するのが原則とするセキュリティ関係メーリングリスト「Full-disclosure ML」などで、3種類の実証コードがそれぞれ投稿されていた。

 この脆弱性については、マイクロソフトも7月18日にセキュティアドバイザリを公開しており、仏FrSIRTやデンマークのSecuniaなども最大の深刻度で警告するなど、非常に憂慮されていた問題だった。また、この脆弱性を含めて、今回のパッチにはマイクロソフトの内部調査で新たに確認された問題にも対処しているという。

 報道されたトロイの木馬Trojan.PPDropper.Bは、感染力が非常に弱く、現実の脅威としてはさほどのものではない。ただし、公開されている情報を使い、さらに強力な悪意のプログラムが開発される可能性は十分に考えられる。速やかにパッチを適用すべき脆弱性だろう。


MS06-051:Windowsカーネルの脆弱性により、リモートでコードが実行される(917422)

 このセキュリティ更新には、
  • ユーザープロファイルの特権の昇格の脆弱性(CVE-2006-3443)
  • 処理されない例外の脆弱性(CVE-2006-3648)
という2つの脆弱性への対応が含まれている。

 前者に関して言えば、脆弱性の影響は特権の昇格であり、深刻度も重要(Windows 2000)や注意(Windows XP、Windows Server 2003)程度であるので軽微な問題だ。一方後者は、影響が「リモートでコードが実行される」もので、Windows XP/2000およびWindows Server 2003のいずれでも深刻度が緊急とされており、警戒が必要だろう。パッチの適用も早目をお勧めする。

 具体的な脆弱性の内容だが、「ユーザープロファイルの特権の昇格の脆弱性」の方については、Windowsへのユーザーログオン周りの処理を受け持つWinLogonとともに、特別な細工がされたDLLがディレクトリに配置された場合、WinLogonがDLLのコードを実行し、これによりユーザーの特権を昇格する可能性があるというものだ。当然、攻撃には悪意のユーザが何らかの形で攻撃対象のPCに悪意のDLLコードを思った場所に格納するなどの手段が必要となることになる。

 一方、「処理されない例外の脆弱性」の方は、マイクロソフトの公開情報からは内容がつかめない。「メモリに存在する複数のアプリケーションで管理される、例外処理の方法にリモートでコードが実行される脆弱性が存在します」とのことなのでグローバルアトムやDDEなどのプロセス共有メモリを利用する部分に未チェックの領域があるものと予想されるが、詳細は不明だ。

 今回の月例パッチ以前に脆弱性情報が知られることはなかった、また、今回のセキュリティ情報でも詳細が全く不明のため、悪用される可能性がそれほどあるとは思えないが、念のために警戒しておくべき情報だろう。


 続いて深刻度が“重要”とされた情報も今月は見ていこう。深刻度は低いが、いずれもセキュリティパッチのリリース以前に一般に脆弱性が知られるなど、問題のあるものばかりだ。


MS06-045:Windowsエクスプローラの脆弱性により、リモートでコードが実行される(921398)

 MS06-042に含まれる「リダイレクトクロスドメインの情報の漏洩の脆弱性(CVE-2006-3280)」と同時に、やはりBugtraqなどで話題となった脆弱性情報だ。こちらの問題も実証コードが公開されている脆弱性だった。

 Windowsファイル共有の取り扱いに問題があり、不正なファイル名を利用して、本来操作できないはずのHTA形式ファイルをリモートから実行させることが可能となる問題だ。操作したユーザー権限でしかファイルを実行できないため、深刻度が警告でなく重要となっているようだが、かなりよく知られている脆弱性でもあり油断は禁物だろう。


MS06-049:Windowsカーネルの脆弱性により、特権が昇格される(920958)

 Windows 2000 SP4のみに存在する問題だ。脆弱性の影響は特権の昇格で、この脆弱性を悪用するには、悪意のユーザーがローカルでコンピュータにログオンし、プログラムを実行する必要がある。タイトルの通り、OSの中核となるカーネルに脆弱性が存在しているが、マイクロソフトではカーネルが使っているどのバッファに問題があるのかは公表していない。

 この脆弱性の問題点は、「セキュリティ更新プログラムリリース前に脆弱性情報が公開されている」という点だ。筆者は確認できていないのだが、マイクロソフトによれば、悪用はされていないものの、公開された実証コードの存在を確認していたとしている。

 何がどう問題なのか、どうにもわかりづらい脆弱性なのだが、パッチがリリースされていることでもあり、(釈然としないものの)Windows 2000ユーザーは適用しておくべきなのだろう。


MS06-050:Microsoft Windowsハイパーリンクオブジェクトライブラリの脆弱性により、リモートでコードが実行される(920670)

 これも、最大深刻度は“重要”レベルだが、リモートでコードが実行されるセキュリティホールで、Full-Disclosure MLで実証コードが公開されている脆弱性だ。

 この脆弱性「CVE-2006-3086」については、同時期にゼロデイ攻撃に使われた同様のセキュリティホール「CVE-2006-3059」があり、7月にパッチ「MS06-037」が提供されていた。

 そのため、既にこの問題は解決されたかのような混乱を招いていたが、MS06-050として修正パッチが提供されたということは、CVE-2006-3059に対してはMS06-037、CVE-2006-3086に対しては今月のMS06-050と考えるべきであるようだ。

 なお、脆弱性の内容だが、MLなどでは「ハイパーリンクCOMオブジェクトバッファオーバーフロー脆弱性」と呼ばれている通り、ハイパーリンクオブジェクトライブラリ(hlink.dll)の実装上の問題で、バッファオーバーフローが引き起こされるというものだ。Excelワークシートに長いUnicodeが書かれたリンクを書き込むことでDoS攻撃が可能となり、リモートからのコード実行も可能であろうとされていた。

 今までこのコードに関して言えば、マイクロソフトいわく「この脆弱性が悪用され、お客様が攻撃されたということを示す情報は受けていません」とのことだが、MS06-037での例を考えると悪用される可能性は十分あると考えるべきだろう。早めの適用が望まれるパッチだ。


関連情報

URL
  2006年8月のセキュリティ情報
  http://www.microsoft.com/japan/technet/security/bulletin/ms06-aug.mspx

関連記事
MSが8月の月例パッチ12件を公開、IEの累積的修正など“緊急”も9件(2006/08/09)


( 大和 哲 )
2006/08/10 15:54

- ページの先頭へ-

INTERNET Watch ホームページ
Copyright (c) 2006 Impress Watch Corporation, an Impress Group company. All rights reserved.