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]

Windows XP標準添付のサードパーティ製ドライバの脆弱性を塞ぐ

マイクロソフトセキュリティアドバイザリを確認する

SECDRV.SYSの脆弱性情報がアドバイザリで公開された

 マイクロソフトは11月8日、セキュリティアドバイザリ「Windows 上の Macrovision SECDRV.SYS ドライバの脆弱性により、特権の昇格が行なわれる(944653)」を公開した。

 この脆弱性は、10月18日に「Windows 2003 ServerとWindows XPで、特定できないがWindowsに含まれるドライバに脆弱性があり、ローカルユーザーがカーネルレベル特権を不正に取得できる」としてBugtraqメーリングリストなどに情報公開されていたものだ。

 これがマクロビジョン製のDRMドライバSECDRV.SYSであると判明したため、マイクロソフトによってWindows Updateによるパッチ提供前の情報公開として、このセキュリティアドバイザリが公開されたわけだ。

 なお、このマクロビジョン製のドライバSECDRV.SYSは、サードパーティ製だが、マイクロソフトがWindows XPおよび2003 Serverに標準で添付しているドライバで、OSインストール時にデフォルトでインストールされるものだ。つまり、これらのOSを使っていれば、ドライバをアップデートしない限り、どのPCもこの脆弱性を持っていることになる。

 Microsoft Updateの11月の更新には含まれていなかったが、現在、マクロビジョンはすでにマイクロソフトに先行して修正済みのドライバを公開しており、マイクロソフトもセキュリティアドバイザリ内で、推奨するアクションについて、以下のように述べている。


マイクロソフトのセキュリティアドバイザリより引用:
 Windows Server 2003およびWindows XPのサポートされているエディションについて、ユーザーは Macrovision により提供される更新プログラム(英語)をインストールすることができます。マイクロソフトはお客様に Macrovision により提供される更新プログラムを適用する前にMacrovisionのアドバイザリを検討することを推奨します。


 ローカルでの特権昇格なので自分しか使わないようなPCであればMicrosoft(Windows)Updateから提供が始まってからでもいいかもしれないが、たとえば、公共施設やネットカフェなど、不特定多数が利用するPCなどでは、不正にPCの特権を利用されないようにこのドライバをマクロビジョンのサイトからダウンロードして適用しておいたほうがいいだろう。


ドライバの適用方法

 ドライバの適用方法だが、マクロビジョンの最新のSECDRV.SYSドライバは「Macrovision:Updating the Macrovision SECDRV.SYS Driver」ページで公開されている。


ドライバが公開されているマクロビジョンのサイト

 サイトの説明によれば、このサイトは、Windowsが不正なプログラムの終了を感知した際に起動するWindows エラー報告(Windows Error Reporting・WER)、オンラインクラッシュ解析(Microsoft onlline crash analysis)によってもこのページが表示されることがあるという。

 もっとも、今回の脆弱性が悪用されそうになった時に、PCの持ち主がこの画面を見られる、というわけではなさそうだ。おそらく、悪意のユーザが、特権を手に入れようと試みた段階で表示されるのではないかと筆者は推測している。

 上記ページで公開されたドライバをダウンロードして導入すれば、脆弱性は修正できる。このドライバは、導入してもWindowsの再起動は起こらないので、作業中断の必要もなく比較的手軽に導入できるだろう。

 インストールの方法としては、たとえば、Windowsのファイルウィンドウから、中に含まれるSecdrv.infを右クリックメニューの「インストール」を選ぶことで導入可能だ。また、ドライバのバージョンを事前に確認したいときなどは、デバイスマネージャからインストールでもかまわないだろう。


更新されたドライバのインストールするには、Secdrv.infファイルのアイコンを右クリックし、メニューから「インストール」を選択する

 なお、この公開ドライバを導入した場合も、12月以降にMicrosoft(Windows)UpdateやWSUS(Microsoft Windows Server Update Services)によって、マイクロソフトが新しいドライバの提供を開始した場合、このドライバを上書きする形で、同じように脆弱性が修正されたドライバがあらためてインストールされるはずだ。


脆弱性の技術的な内容

 この脆弱性は、脆弱性情報名標準化プロジェクト「CVE」ではCVE-2007-5586CVE-2007-5587として登録されている。CVEのサマリーページや、そこからリンクされているBugtraqのアーカイブや、発見者のBlogなどを参照すると、もう少し、この脆弱性の技術的な内容も把握することができる。

 ちなみに、CVE-2007-5586は脆弱性をもつドライバがどれかわからない段階での正体不明の脆弱性としての登録の残り、CVE-2007-5587はsecdrv.sysが原因とわかってからの情報だ。

 これらによると、この脆弱性をもつドライバsecdrv.sysは、MacrovisionのSafeDiscと呼ばれるDRM製品に含まれるもので、これはWindows XP、Server 2003に標準で含まれるものだ。

 脆弱性の原因は、ドライバとユーザープログラムがデータをやりとりする際に使われるIOCTLに、伝達方法としてMETHOD_NEITHERが指定されたときのパラメータの扱いの問題で、この問題を突くことで、悪意のユーザーに、メモリの任意のアドレスに好きなデータを書き込ませることができてしまうようになっている、ということだ。

 デバイスドライバを作成する際には、意外とこの手のパラメータはチェックを怠りがちで、ましてサードパーティ製となるとマイクロソフトのセキュリティチェックの手もなかなか及びにくいだろう。

 今回はWindows Vistaは対象にはならなかったが、どのバージョンのOSに関しても、この手の問題は潜在的に存在するものと考えておいた方がいいかもしれない。


関連情報

URL
  Macrovision SECDRV.SYSドライバの脆弱性に関するセキュリティアドバイザリ(944653)
  http://www.microsoft.com/japan/technet/security/advisory/944653.mspx
  Macrovision:Updating the Macrovision SECDRV.SYS Driver(修正ドライバ公開ページ、英文)
  http://www.macrovision.com/promolanding/7352.htm
  CVE-2007-5587脆弱性情報(英文)
  http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-5586
  CVE-2007-5586脆弱性情報(英文)
  http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-5587


( 大和 哲 )
2007/11/15 16:00

- ページの先頭へ-

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