マイクロソフトは4月17日,Windows NT 4.0/2000/XPのセキュリティ・ホールを公表した。セキュリティ・ホールを悪用されると,一般ユーザーに管理者権限を奪われる恐れがある。ただし,悪用するには対象マシンに対話的ログオン*する必要がある。リモートから悪用したり,対象マシンにアクセス権限がないユーザーが悪用することはできない。

 深刻度は上から2番目の「重要」。対策はパッチを適用すること。パッチは同社のページからダウンロードできる。Windows NT 4.0 Terminal Server Edition(TSE)用以外については「Windows Update」からも適用できる。

* 対話的ログオン(Interactive logon):ネットワーク・ログオンとは異なり,接続されたキーボードを使って,パスワード等を入力して,ローカル・コンピュータにログオンすることを指す(「マイクロソフト セキュリティ情報:用語集」から)。

 今回,Windowsカーネルがデバッガとエラー・メッセージのやり取りをするために使用するバッファの中に,未チェックのバッファが見つかった。Windowsカーネルは,Windows OSの“コア”であり,メモリーやデバイスの管理といった基本的なサービスを提供する。デバッガとは,稼働中のプロセス(プログラム)にエラーが発生した場合に,エラー・メッセージを表示するプログラムのことで,Windows NT/2000/XPに含まれている。

 このため,細工が施されたエラー・メッセージをWindowsカーネルとやり取りするようなプログラムを作成し,攻撃対象とするマシン上で実行すれば,バッファ・オーバーフローを発生させることが可能となる。その結果,エラー・メッセージに仕込んだ任意のコード(プログラム)を対象マシン上で実行することができる。このコードは管理者権限で実行されるので,コードを“工夫”することにより,一般ユーザーが管理者権限を持つ新規のアカウントを作成したり,システム・ファイルを削除したり,セキュリティ設定を変更したりすることが可能となる。

 ただし,そのようなプログラムを対象マシン上で実行するには,そのマシンに対話的ログオンする必要がある。つまり,対話的ログオンをできないユーザーが今回のセキュリティ・ホールを悪用することはできない。このため,セキュリティ・ホールの深刻度は,上から2番目の「重要(Important)」に設定されている。

 マイクロソフトでは,「悪用された場合,ユーザーのデータの機密性,完全性またはアベイラビリティが侵害される可能性がある。または,処理中のリソースの完全性またはアベイラビリティが侵害される可能性がある」セキュリティ・ホールを「重要」に設定している。そして,「影響を受ける製品のユーザーは,『緊急』または『重要』と評価されているぜい弱性に対応するすべての修正プログラムを常に適用する必要があると考えている」という。

 対策は同社が公開するパッチを適用すること。同社のセキュリティ情報ページ「Windows Update」から入手できる。パッチを適用できるのは,Windows NT 4.0 SP6a,Windows NT 4.0 TSE SP6,Windows 2000 SP2 または Windows 2000 SP3,Windows XP または Windows XP SP1――の環境である

 「マシンに対話的ログオンできるユーザーは必要最小限にする」,「ユーザーのパスワード管理を徹底する」――といった対策を日ごろから実施していれば,パッチの適用が遅れても,実質的な影響は小さいと考えられる。これらはセキュリティの“セオリー”である。管理者は改めて確認してほしい。

◎参考資料
「MS03-013: Windows カーネル メッセージ処理のバッファ オーバーランにより,権限が昇格する(811493)」に関する要約情報(マイクロソフト)
「Buffer Overrun in Windows Kernel Message Handling could Lead to Elevated Privileges (811493)」(米Microsoft)
「Windows カーネル メッセージ処理のバッファ オーバーランにより,権限が昇格する (811493) 」(マイクロソフト)

(勝村 幸博=IT Pro)