マイクロソフトは11月12日,11月の“月間セキュリティ情報”を公開した。新たに公開されたセキュリティ情報は4件,そのうち1件は“超特大”のセキュリティ・ホールである。このセキュリティ・ホールを突くコードが既に出現している。また,パッチを適用する際にはいくつか注意点がある。今回の記事では,この“超特大”セキュリティ・ホールを詳細に解説する。併せて,その月のセキュリティ情報をまとめて公開する“月間セキュリティ情報”のメリットとデメリットを考えてみたい。

パッチの適用が急務

 今回公開された「MS03-049」は,「Blaster」ワームなどが悪用した「MS03-026」と同程度に危険な“超特大”のセキュリティ・ホールである(関連記事)。

Workstation サービスのバッファ オーバーランにより,コードが実行される (828749)(MS03-049)

 何度か説明しているように,「特別なソフトウエアや機能を組み込んでいなくても,ほとんどすべてのWindowsが影響を受ける」かつ「セキュリティ・ホールを悪用するのに,攻撃対象マシンのユーザーのアクションを必要としない(ユーザーがWebページやHTMLメールなどを閲覧せず,インターネットに接続するだけでも被害に遭う)」ようなセキュリティ・ホールを,このコラムでは“超特大”と形容している。

 “超特大”のセキュリティ・ホールは,前述の「MS03-026」,「MS03-026」に類似したセキュリティ・ホール「MS03-039」前回の記事で解説した「MS03-043」に続いて,今回で4件目である。

 今回公開された「MS03-049」の影響を受けるのは,Windows 2000 および Window XP。Windows Me/NT/Server 2003 は影響を受けない。「MS03-049」のセキュリティ・ホールは,Windows 2000/XPの「Workstation サービス」に見つかった。Workstation サービスは,リソース(ファイルやプリンタなど)が配置されている場所を調べ,ユーザーのリクエストを適切な場所(ローカル・ファイル・システムやネットワーク・コンポーネント)に渡す役割を担うサービスである。

 このWorkstation サービスに,未チェックのバッファが含まれることが明らかとなった。このため,攻撃者やワームから細工が施されたメッセージを送信されると,バッファ・オーバーランが引き起こされ,任意のコードを実行させられる可能性がある。Workstation サービスはデフォルトで有効になっているので,未対策のマシンはネットワークに接続しているだけで被害を受ける恐れがある。

 対策はパッチを適用すること。とても危険なセキュリティ・ホールなので,今までの“超特大”セキュリティ・ホール同様,すべての対象マシンに対して,パッチの適用を徹底する必要がある。

パッチを適用する上での注意点が複数

 パッチの適用にはいくつか注意点がある。まずWindows 2000の場合,セキュリティ情報には影響を受ける環境として,Windows 2000 Service Pack(SP)2/SP3/SP4が記載されている。これは,SPを適用していない環境や,SP1の環境は影響を受けないということではないので注意してほしい。サポート対象ではないために記載されていないだけで,SP未適用およびSP1の環境も同じように影響を受ける。SP未適用およびSP1の環境では,SP2以降を適用した上で修正パッチを適用する必要がある。

 Windows 2000に関しては,もう一つ注意点がある。日本語のセキュリティ情報には,「パッチの適用後に,再起動が必要であることを通知する確認メッセージが表示されなければ,再起動する必要はない」といった内容が記載されている。オリジナルである英語情報「Microsoft Security Bulletin MS03-049 Buffer Overrun in the Workstation Service Could Allow Code Execution (828749)」でも,当初は同じ内容だったが,情報公開の3日後に「You must restart your computer after you apply this security patch.(このセキュリティ・パッチを適用した後,コンピュータを再起動しなければならない。)」と変更された。原稿執筆時点(11月16日)では日本語のセキュリティ情報にこの情報は記載されていないが,必ず再起動しておこう。 【IT Pro編追記】11月17日,日本語情報でも,再起動をする必要があると修正された。

 一方Windows XPについては,「MS03-049」のパッチは存在しない。前回の”超特大”のセキュリティ・ホール「MS03-043」のWindows XP 用パッチには,「MS03-049」を修正するファイルが含まれていたからだ。Windows XP では,Windows Update を実施しても「MS03-049」のパッチは表示されない。

 ただし,「MS03-049」のパッチを含む「MS03-043」のパッチは再リリースされているので要注意である。10月16日に公開された当初の「MS03-043」用パッチは,パッチの適用中にマシンがハングアップする場合があった。この問題を修正した,Windows 2000/XP/Server 2003 用の新しいパッチが10月30日に公開されている(関連記事)。

 10月30日に公開された新しいWindows XP用パッチでは,上記の問題に併せて,Windows ファイル保護(WFP:Windows File Protection)機能に関連する問題も修正されている。WFPは,重要な Windows システム・ファイルが勝手に置き換えられることを防ぐ機能である。プログラムなどによって勝手に置き換えられた場合には,「キャッシュ フォルダ (デフォルトでは %systemroot%\system32\dllcache)」に収められたオリジナルのシステム・ファイルを使って,元の状態に戻す。

 当初公開されたパッチでも,システム上のセキュリティ・ホールがあるファイル(wkssvc.dll)は修正済みのものに置き換えられる。つまり,セキュリティ・ホールはふさげる。ただし,キャッシュ フォルダ内のwkssvc.dllは修正済みのものに置き換えない。このため,パッチの適用後,wkssvc.dllが削除されたりしてWFPが働くと,セキュリティ・ホールがある古いwkssvc.dllが復元されてしまう。

 なお,このキャッシュ フォルダの問題については,新しいパッチが公開された10月30日時点では公表されなかった。英語情報では,新しいパッチの公開から2週間後の11月14日付けで,この問題があったこと,および新しいパッチで修正されたことが明らかにされた。日本語情報には,原稿執筆時点(11月16日現在)で,この問題に関する記載はない。 【IT Pro編追記】11月17日,日本語情報にも,Windows XP 用パッチの問題を確認したこと,および新しいパッチで問題が修正されていることなどが追記された。

 10月16日に公開された当初の「MS03-043」用パッチには,「適用中にハングアップする場合がある」「キャッシュ フォルダ内のファイルが更新されない」という問題のほかに,パッチの適用状況をチェックする「MBSA(Microsoft Baseline Security Analyzer)」などのツールで適切にチェックできないという問題もある。具体的には,ツールでチェックすると,「MS03-043」用のパッチを適用していても「最新の適用状況ではない」という警告が出てしまう。

 以上のように,当初公開された「MS03-043」用パッチには問題が複数ある。Windows XPの場合,当初公開された「MS03-043」用パッチを適用していれば,「MS03-043」および「MS03-049」のセキュリティ・ホールはふさげるものの,10月30日に公開された新しいパッチを適用すべきである。ただし,当初のパッチを適用済みのマシンでは,10月30日以降に「Windows Update」を実施しても,新しいパッチは表示されない。「Microsoft Windows XP セキュリティ アップデート : KB828035」からパッチを入手し,手動で適用する必要がある。未適用のマシンで,10月30日以降に「Windows Update」を実施した場合には,新しいパッチが適用されているので再適用する必要はない。

 Windows XPの場合には,同じパッチを何度適用しても問題はない。10月30日以降にパッチを適用したかどうかが分からないユーザーは,ぜひ「Microsoft Windows XP セキュリティ アップデート : KB828035」からパッチを入手して適用しておこう。

 多くのユーザーはWindows Updateを頼りにしている。問題があるパッチを適用していると,新しいパッチがWindows Updateに表示されない現状では,ほとんどのユーザーは新しいパッチを適用できないだろう。せっかく問題を修正したのだから,古いパッチを適用している場合には,新しいパッチが適用対象として表示されるようにしてもらいたい。 【IT Pro編追記】11月17日,問題があるパッチを適用している場合には,新しいパッチがWindows Updateの更新対象として表示されるように修正された。

【11月19日筆者追記】11月17日時点では,問題があるパッチを適用している場合には,新しいパッチがWindows Updateの更新対象として表示されたが,11月19日に再度試した際には更新対象として表示されなくなっていた。このため現時点では,「%systemroot%\system32」(例えば,C:\WINDOWS\system32)の「wkssvc.dll」ファイルのバージョンを自分で確認し,必要に応じて手動で新しいパッチを適用する必要がある。具体的には,wkssvc.dllのバージョンが「5.1.2600.1301」であれば,「Microsoft Windows XP セキュリティ アップデート : KB828035」からパッチを入手して適用する。新しいパッチを適用すると,wkssvc.dllのバージョンは「5.1.2600.1309」になる。なお,現時点では「トラブル・メンテナンス速報」には,この件に関するアナウンスはない。 【以上,11月19日筆者追記】

 さらに注文をつければ,危険なセキュリティ・ホールについては,パッチが適用されているかどうかを調べるツールを公開してもらいたい。過去の“超特大”セキュリティ・ホールである「MS03-026」と「MS03-039」については,適用されているかどうかを調べるツールをマイクロソフトは公開したが,「MS03-043」と今回の「MS03-049」については公開していない。「MS03-043」と「MS03-049」も,「MS03-026」と「MS03-039」同様,大変危険なセキュリティ・ホールである。ぜひチェック・ツールを公開してもらいたい。

セキュリティ・ホールを突くコードが既に出現

 セキュリティ情報の「謝辞」の項によれば,今回の「MS03-043」を発見したのは,「MS03-039」同様,「eEye Digital Security」である。セキュリティ情報とパッチの公開に合わせて,eEye Digital Securityはセキュリティ・ホールを解説するレポート「Advisory: Windows Workstation Service Remote Buffer Overflow」を公開した。

 このレポートによると,eEye Digital Securityからマイクロソフトへの報告日は9月15日とされている。報告からパッチが公開されるまで2カ月弱かかったようだ。また,ファイル・システムがNTFSであるマシンへの攻撃は,FAT32のマシンへの攻撃と比べると困難であること,Windows XP にはドキュメントには無い「拡張RPC機能」が存在するために,特別な権限がなくても攻撃可能であることなどが記載されている。

 「謝辞」にeEye Digital Securityの名前があることから,「MS03-039」のときと同じように,同社からマイクロソフトへ事前報告や協力があったと考えられる。このため,セキュリティ情報の公開前に,このセキュリティ・ホールが悪用されている可能性は小さいと考えられる。

 とはいえ安心はできない。セキュリティ・ベンダーであるラックは,11月12日の時点で,日本語版Windowsへの攻撃が可能であることを伝えるレポート「SNS Spiffy Reviews No.8 Successful Reproduction of MS03-049 "Buffer Overrun in the Workstation Service Could Allow Code Execution (828749)" on Japanese Environment」を公開している。

 「MS03-043」のセキュリティ・ホールを突くコード(Exploit)は,パッチ公開の翌日(米国時間11月12日,日本時間11月13日)に出現している。「MS03-043」のExploitは,パッチの公開から4日後に出現した。パッチが公開されてからExploitが出現するまでの期間はますます短くなっている。

 警察庁が11月14日に公開したレポート「Windowsの脆弱性(MS03-049)を攻撃するプログラムについて」にあるように,最初に公開されたExploitは,DoS(サービス妨害)攻撃しか行えないものだった。マシンを乗っ取れるExploitではなかった。しかも,Windows 2000に対してのみ有効だった。Exploit中には「『Win2K SP4 with FAT32 file system』でテストを行った。Windows XPを攻撃するExploitを作成するための手がかりはない」といったコメントが書かれている。しかしその後,Windows XPも対象とする新たなExploitが続々出現している。

 JPCERT/CCは,同じく11月14日に公開したレポート「TCP 139番ポートへのスキャンの増加に関する注意喚起」において,TCP 139番ポートへのスキャンが増加していること,これらのスキャンは「MS03-049」を利用した侵入の試みである可能性があることを警告している。Exploitをベースにしたワームの出現は時間の問題だと考えたほうがよい。

基本的な対策で回避可能

 ただ,きちんと対策を実施しているユーザーや管理者は慌てる必要はない。セキュリティ情報「MS03-049」の「回避策」にあるように,基本的な対策で「MS03-049」を突く攻撃を防げるからである。セキュリティ情報では,以下の4点を具体的な回避策として挙げている。

 (1)ファイアウオールで UDP ポート 138,139,445 および TCP ポート 138,139,445 をブロックする
 (2)Windows XP に含まれるICF(インターネット接続ファイアウォール)などのパーソナル・ファイアウオールを使用する
 (3)Windows 2000 あるいは Windows XP の「アドバンスト TCP/IP フィルタリング」を有効にする
 (4)Workstation サービスを無効にする

 (1)は,過去の記事「Windowsのクラッキング対策“総まとめ”」をはじめ,何度もこのコラムで解説したことである。TCP/UDP ポート 23/135/137/138/139/445 は,攻撃に利用されることが多いポートなので,最低限これらのポートはファイアウオールやエッジ・ルーターでブロックする必要がある。

 (2)も同様である。繰り返しこのコラムで述べているように,Windows XPとWindows Server 2003が標準搭載するICF(インターネット接続ファイアウォール)機能は対策として有効である。それほど有効ならば,デフォルトで有効にしてほしいが,無効になっているのが現状である。ICFをデフォルトで有効にすると,マシンにインストールされているネットワーク関連のソフトウエアや機能が意図した通りに動作しない場合があるからだ。

 しかし筆者としては,ICF を有効にすることを強くお勧めする。ICF を有効にした場合にトラブルが発生した場合には,「ファイアウォールについて知る」をチェックしてほしい。このドキュメントの文末には,マイクロソフト製品サポート サービスへのリンクが紹介してある。

 なお,2004年前半に提供予定のWindows XP SP2ではICF機能をデフォルトで有効にする予定であるという(関連記事)。

 (3)は目新しい情報である。「アドバンスト TCP/IP フィルタリング」を有効にすると,受信者が送信を要求していないすべての受信トラフィックをブロックできる。発信するトラフィックや,ユーザーが許可したポートへのトラフィックには影響を与えない。ICF機能がないWindows 2000の場合には,とても有効な対策となる。必要に応じて設定しよう。設定方法などは「サポート技術情報 309798 Windows 2000 で TCP/IP フィルタリングを構成する」を参照してほしい。

 (4)については,セキュリティ情報にあるように,LAN環境で使用しているマシンでは無効にすると問題が発生する場合がある。スタンドアロンで使用しているマシンでのみ,Workstation サービスを無効にしたほうがよいだろう。

「月1回」のメリットとデメリット

 「MS03-049」は,11月の“月間セキュリティ情報”の一つとして公開された。月間セキュリティ情報の公開は,10月に続いて2回目である。このように,月1回まとめてセキュリティ情報を公開することへの変更は,ユーザーにとって喜ぶべきことなのだろうか。

 マイクロソフトの主張は「セキュリティ情報リリース プロセスの改定」に記載されている。今回の変更は「お客様のために修正プログラム管理プロセスの管理の容易性および予測可能性を向上させることを支援する」としている。具体的には,「セキュリティ修正プログラムのリリースのタイミングが予測可能になることにより,お客様は修正プログラムのテストおよびインストールを前もって計画することができます」などを,ユーザーのメリットとして挙げている。確かに,こうしたメリットはあるだろう。

 しかしこれは,ユーザーだけではなく,攻撃者にとっても同じである。“効果的な”攻撃計画を立てやすくなる。今後のセキュリティ修正パッチのリリースの日程は「セキュリティ情報リリース スケジュール」に明記されている。この中から,効果的な攻撃が可能な日を選んで,その日に公開されたセキュリティ・ホールを突くような攻撃を行えるのである。具体的には,セキュリティ情報とパッチの公開日が休日になるセキュリティ・ホールを狙うのである。

 休日には,特に企業や組織では,パッチを適用しない可能性が高いために,情報の公開とパッチの適用にタイムラグが発生する。その日のうちにセキュリティ情報やパッチ,セキュリティ・ホールの発見者が公開したレポートなどを参考にして,例えばワームを作成する。そして,休日明けの未明にそのワームをばらまく。情報やパッチは公開されているものの,企業のマシンはパッチが未適用なままだ。このため,就業開始とともに,ほとんどのマシンはワームに襲われ,被害は甚大なものになる――。このようなシナリオは十分に考えられるのではないだろうか。

 実は,11月の月間セキュリティ情報にはこの危険性があった。米国では,セキュリティ情報が公開された11月11日は,「退役軍人の日(Veterans Day)」という休日だった。しかも,マイクロソフトの情報だけではなく,前述のようにeEye Digital Securityからも詳細なレポートが公開されていた。これらを参考に,11日中にワームが作成されて,その日のうちにばらまかれていれば,大変な事態になっていたかもしれない。

 日本も例外ではない。5回目の月間セキュリティ情報の公開日である2004年2月11日は「建国記念の日」の休日である。日本向けに,この日公開されるセキュリティ・ホールが“狙い撃ち”される可能性がないとは言い切れないだろう。

 マイクロソフトは月1回まとめて公開することのメリットとして「パッチ適用の計画を立てられる」だけではなく,「攻撃者に“ヒント”を与える機会を減らせる」ことも挙げているようだ(関連記事)。Exploitは,パッチをリバース・エンジニアリングすることで作成されるケースが多いので,月1回にまとめて公開すれば,ヒントを与える機会が減少し,それに伴い,ワームなども減少するはずであるという説明をしていると聞く。

 しかし,そうとばかりは言えないだろう。例えば,前述のように,10月16日に公開された「MS03-043」のWindows XP用パッチには,今回公開された「MS03-049」のパッチが含まれていた。Windows 2000用のパッチには含まれていなかったので,プラットフォームごとのパッチを比較して,その違いをリバース・エンジニアリングしていれば,「MS03-049」のセキュリティ・ホールは,10月の時点で明らかになっていた可能性がある。レア・ケースではあろうが,そのような比較が,攻撃方法を探す手法として有効であるということを示してしまった。

 もし「MS03-043」と「MS03-049」の関係と同じようなパッチが今後公開され,上記の手法を採られた場合には,次のパッチの公開まで1カ月あるので,攻撃者は悠々と攻撃準備を行える。もちろんワームなどが出現すれば,スケジュールを無視してマイクロソフトはパッチを公開するだろう。しかしそれは,被害が出てからになる可能性は高い。今回の「MS03-049」で明らかになったように,たとえ“超特大”のセキュリティ・ホールであっても,実際に被害が出なければスケジュール通りに公開されると考えられるからだ。

 月に1回まとめて公開することのメリットは確かにあるだろう。しかし,セキュリティ・ホールの数が減るわけではない。上記のように,攻撃者のメリットになる可能性もある。今まで同様,パッチを適切に適用することはもちろん,基本的なセキュリティ対策の実施が不可欠である。

 最後に,上記以外のWindows関連セキュリティ・トピックス(2003年11月16日時点分)については,スペースの都合上,詳細は割愛する。各プロダクトごとにまとめたリンクを記事末に記したので,参考にしてほしい。IT Proでも関連記事をいくつか掲載している。それぞれの詳細については,リンク先の情報やIT Proの過去記事を確認していただきたい。

 特に,「Internet Explorer 用の累積的なセキュリティ更新 (824145) (MS03-048)」は,セキュリティ・ホールを悪用する方法が公開されているので,早急に対策する必要がある(関連記事)。

 「MS03-048」の「よく寄せられる質問」には,Internet Explorer 5.01 SP3 用パッチに関する情報や Windows 98/98SE に関する情報が追加されている。同じく「MS03-048」の「修正プログラムが正しくインストールされたかどうか確認する方法 の情報が一部修正されている。確認しておいたほうがよいだろう。



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

2003 年 11 月のセキュリティ情報 (Windows)
 (2003年11月12日)
2003 年 11 月のセキュリティ情報 (Office)
 (2003年11月12日)

『Windows 2000/XP』
Workstation サービスのバッファ オーバーランにより,コードが実行される (828749) (MS03-049)
 (2003年11月12日:日本語情報および日本語版パッチ公開,最大深刻度 : 緊急)

『Internet Explorer 6/5.5/5.01』
Internet Explorer 用の累積的なセキュリティ更新 (824145) (MS03-048)
 (2003年11月13日:「よく寄せられる質問」にIE 5.01 SP3 用パッチやWindows 98/98SEに関する説明が追加)
 (2003年11月12日:「修正プログラムが正しくインストールされたかどうか確認する方法」の情報を一部修正)
 (2003年11月12日:日本語情報および日本語版パッチ公開,最大深刻度 : 緊急)

『FrontPage 2000 Server Extensions/FrontPage Server Extensions 2002など』
Microsoft FrontPage Server Extensions のバッファ オーバーランにより,コードが実行される (813360) (MS03-051)
 (2003年11月13日:可能な攻撃の内容)
 (2003年11月12日:日本語情報および日本語版パッチ公開,最大深刻度 : 緊急)

『Excel 97/2000/2002,Word 97/98/2000/2002 など』
Microsoft Word および Microsoft Excel の脆弱性により,任意のコードが実行される (831527) (MS03-050)
 (2003年11月13日:「影響を受けるソフトウェア」の Excel 97,Word 97/98 から「Office Update」が可能であることを示すマークを削除)
 (2003年11月13日:Excel 2000 の「excel.exe」とWord 2000 の「word.exe」に関する情報を更新)
 (2003年11月12日:日本語情報および日本語版パッチ公開,最大深刻度 : 重要)

『Windowsファミリ(Me除く)』
メッセンジャ サービスのバッファ オーバーランにより,コードが実行される (828035) (MS03-043)
 (2003年10月30日:問題を修正したWindows 2000/XP/Server 2003 用パッチを公開)
 (2003年10月16日:日本語情報および日本語版パッチ公開,最大深刻度 : 緊急)
リストボックスおよびコンボボックスのコントロールのバッファオーバーランにより,コードが実行される (824141) (MS03-045)
 (2003年11月 6日:「技術的な説明」 および 「よく寄せられる質問」を更新 。サポート技術情報 831739 (英語情報。日本語情報は準備中) の公開をアナウンス)
 (2003年10月30日:問題を修正したWindows XP用パッチを公開)
 (2003年10月23日:セキュリティ情報を追加)
 (2003年10月20日:互換性に関する問題の情報を追加)
 (2003年10月20日:Windows XP 用のパッチのファイル情報の誤りを修正)
 (2003年10月16日:日本語情報および日本語版パッチ公開,最大深刻度 : 重要)

『Windows 2000』
Windows トラブルシュータ ActiveX コントロールのバッファ オーバーフローにより,コードが実行される (826232) (MS03-042)
 (2003年10月30日:問題を修正したパッチを公開
 (2003年10月16日:日本語情報および日本語版パッチ公開,最大深刻度 : 緊急)

『Windows 98/98 Second Edition/Me/NT 4.0/NT 4.0, Terminal Server Edition/2000/XP』
証明書確認の問題により,ID が偽装される (329115) (MS02-050)
 (2003年11月12日:Windows 2000 SP4+IE6 SP1の環境に必要なパッチを公開したことを告知)
 (2003年 3月 3日:IE6 SP1 にアップグレードした場合にはパッチを再適用する必要があることを告知)
 (2002年11月21日:新しいパッチを公開)
 (2002年 9月 5日:日本語情報および日本語版NT 4.0/XP用パッチを公開,最大深刻度 : 高)

TechNet Online セキュリティ

Windows XP セキュリティ ガイド

2003 年 10 月 セキュリティ 警告サービス 月刊サマリー


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


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