この問題に対する更新プログラムを適用しない場合、紹介されている不具合以外にどんな影響がありますか?
紹介されている脆弱性を利用したワームとして Code Red が存在し、2001 年 7 月 19 日以降に数多くのシステムが感染しました。この更新プログラムを適用しているシステムには感染しておらずセキュアなシステムとして運営することができました。詳しくは 緊急 : Code Red ワームに対する警告 に記載されていますので必ず一読してください。
どのようなことが起こる可能性がありますか?
これはバッファ オーバーランの脆弱性です。攻撃者がこの脆弱性の利用に成功すると、該当する Web サーバーを完全に制御することができます。これにより、攻撃者は Web ページの変更、ハード ドライブの再フォーマット、ローカル管理者グループへの新しいユーザーの追加など、サーバーで任意の操作を行うことができます。
この脆弱性は特定のシステム コンポーネントがシステムに存在している場合のみ利用することができます。そのコンポーネントとはセキュリティ チェックリストとツールが削除することを推奨しているものです。これは深刻な脆弱性であるため、マイクロソフトは Web サーバー管理者に直ちに対応策を講じることを推奨します。
何が原因で起こりますか?
この脆弱性は Windows NT 4.0 の Index Server および Windows 2000 の Indexing Service に関連する ISAPI エクステンションに未チェックのバッファが含まれていることが原因で起こります。ISAPI エクステンションに特別に作成したリクエストを送信することにより、攻撃者は サーバーで Local System コンテキストでコードを実行することができます。
Index Server および Indexing Service とは何ですか?
Index Server 2.0 および Indexing Service とは Windows NT 4.0 および Windows 2000 で使用されるフルテキスト検索とインデックス エンジンです。これらは Web サイトやサーバー上のデータ検索を可能にします。これにより、ユーザーはブラウザを使用して、キーワード、フレーズ、プロパティを入力し、文書を検索することができます。
Index Server 2.0 は Windows NT 4.0 に同梱されていませんが、Windows NT 4.0 Option Pack. の一部として利用可能です。Indexing Service は Windows 2000 のネイティブ サービスでプラットフォームに同梱されています。
ISAPI エクステンションとは何ですか?
ISAPI (Internet Services Application Programming Interface) とは、IIS サーバーが提供する機能を開発者が拡張することを可能にする技術です。ISAPI エクステンションとは ISAPI を使用したダイナミック リンク ライブラリ (.dll) であり、IIS がネイティブで提供しているものに Web 機能を追加します。
ユーザーが ISAPI エクステンションが提供する機能の 1 つを使用する必要がある場合、これらの機能はサーバーにリクエストを送信します。ISAPI エクステンションを直接呼び出す場合もありますが、通常はユーザーがサーバー上の、処理されるコマンドを含むファイルをリクエストします。ユーザーがこのようなファイルをリクエストすると、IIS はサーバー上の各 ISAPI エクステンションに関連付けられたファイルの拡張子一覧であるスクリプト マッピングのテーブルを参照し、どの ISAPI エクステンションをそのファイル解析に使用するかを決定します。
どの ISAPI エクステンションがこの脆弱性と関わりがあるのですか?
この脆弱性を含む ISAPI エクステンションは idq.dll です。これは次の 2 つの機能を提供しています。
- これは Internet Data Administration.(ida) ファイルのサポートを提供しています。このファイルはインデックス サービスを管理するために使用されるスクリプトです。Microsoft 管理コンソールがよりよい管理インターフェースを提供しているため、この機能はほとんど使用されていません
- これは Internet Data Query (.idq) ファイルを処理します。これらのファイルはカスタム検索を実装するために使用されます。
idq.dll の何が問題になっていますか?
受信するリクエストを処理するコードの一部に未チェックのバッファが含まれています。不正なリクエストがこれに送信されると、バッファのオーバーランが発生し、次の 2 つの影響があります。
- リクエストがランダムなデータを含む場合、サーバーの Web サービスが異常終了します。IIS 4.0 がサーバーで使用されている場合、管理者はサービスを再起動することにより、通常の操作を再開することができます。また、IIS 5.0 が使用されている場合、Web サービスは自動的に再開します。
- リクエストが特別に選択されたデータを含む場合、このリクエストは攻撃者が選択したコードをサーバーで実行するために使用されます。
攻撃者がこの脆弱性を利用し、サーバーでコードを実行した場合、そのコードはどのセキュリティコンテキストで実行されますか?
そのコードは Local System 権限で実行されます。この脆弱性を利用すると、idq.dll を実行中に事実上変更することができます。idq.dll はオペレーティング システムの一部として動作しているため、攻撃者のコードも同様に動作します。
この脆弱性を利用して攻撃者は何ができますか?
攻撃者はこの脆弱性を利用して Web サーバーを完全に制御することができます。これにより、攻撃者は例として次のような任意の操作を行うことができます。
- Web コンテンツの変更
- オペレーティング システム コマンドの実行
- サーバーの再設定
- サーバーに追加のソフトウェアをロードし、それを実行する
この脆弱性を利用して、攻撃者はネットワーク全体を完全に制御することができますか?
最善のセキュリティ対策が講じられている場合、侵害による影響を制限することができます。Web サーバー、特に公開サーバーは、外部と接触する位置にあるため、常に攻撃の標的となります。そしてこの事実を反映して、ネットワークを設計しなければなりません。ネットワーク設計者の主要な目標の 1 つとして、ネットワーク設計が侵害された Web サーバーを利用して行われる操作を制限していなければなりません。通常、講じる必要のある対応策は次の通りです。
- Web サーバーは DMZ 内で隔離されていなければなりません。インターネットからサーバーを隔離するだけでなく、残りのネットワークからも隔離されている必要があります。
- 可能であれば、Web サーバーはスタンドアロン マシンとして設定して下さい。Web サーバーをドメインの一部とする絶対的な必要がある場合は、ドメインは DMZ に属するマシンのみを含むようにして下さい。決して Web サーバーを大規模なネットワークのドメインのメンバにしないで下さい。
これらの事前対策が講じられている場合でも、この脆弱性による損害を過小評価してはいけません。攻撃者に通常のシステム操作を使用して、管理を拡張する容易な方法を与えないようにネットワークが設計されていたとしても、攻撃者は依然として、他の既知の脆弱性を介し、他のマシンを攻撃する開始点として侵害されたサーバーを使用する可能性があります。
誰がこの脆弱性を利用する可能性がありますか?
この脆弱性を利用するためには、攻撃者は idq.dll にリクエストを送信することができる必要があります。idq ファイルと .ida ファイルを idq.dll に関連付けるスクリプト マッピングが存在していて、攻撃者がサーバーとの Webセッションを確立することができる限り、攻撃者はこの脆弱性を利用できます。
この脆弱性を利用するためには Index Server または Indexing Service を稼動する必要がありますか?
いいえ。idq.dll が提供する機能は Index Server および Indexing Service をサポートしますが、IIS がインストールされる際、常に .dll もインストールされ、IIS が動作しているときには利用することができます。このように、サーバーでインデックスが使用できない場合でも、マシンで IIS が稼動している限り、この脆弱性を利用することができます。
それでは IIS がマシンで稼動していない場合、この脆弱性による影響はないのですか?
影響はありません。Index Server や Indexing Service をインストールしていても、IIS が稼動している場合にのみこの脆弱性が利用される恐れがあります。
.ida ファイルは管理スクリプトだと思っていました。.ida ファイルにリクエストを送信するためには、攻撃者は管理者である必要があるのではないのですか?
idq.dll は、ファイル内のコマンドを処理する前に、.ida ファイルをリクエストしている人の資格情報をチェックします。しかし、チェックが行われる前にバッファのオーバーランが発生します。その結果、全てのユーザーが .ida ファイルをリクエストすることができ、この脆弱性を利用できるようになります。この脆弱性が利用されない場合でも、.idq ファイルは通常誰でもリクエストすることができます。
IIS のセキュリティチェックリストに従って .ida ファイルと .idq ファイルのスクリプトマッピングを無効にしました。この脆弱性の影響を受けますか?
.ida ファイルと .idq ファイルのスクリプト マッピングが存在していない場合、この脆弱性が利用されることはありません。IIS 4.0 および IIS 5.0 のセキュリティ チェックリストで、それらのスクリプト マッピングを削除する方法を説明しています。さらに、IIS 5.0 のセキュリティ チェックリストの中の高セキュリティ テンプレートによってマッピングを削除することができます。同様に、Windows 2000 Internet Server Security Tool を利用して、明示的にマッピングを保持する指定をしない限り、マッピングを削除することができます。
しかし、マッピングは元の状態に戻ってしまう可能性があることに注意してください。具体的には、コントロール パネルの [アプリケーションの追加と削除] を使用して Windows コンポーネントを追加したり、削除すると、Windows は常に、システムの再構成を実行し、.idq マッピングと .ida マッピングの両方を元に戻します。したがって、マッピングを削除したお客様も、さらなる予防策としてこの更新プログラムを適用することを推奨します。
Windows NT を稼動しています。この脆弱性の影響を受けますか?
Windows NT 4.0 のインストールの既定の状態では、この脆弱性の影響は受けません。IIS 4.0 は Windows NT 4.0 の一部としてインストールされず、Windows NT 4.0 Option Pack. を介してインストールされます。しかし、IIS 4.0 をインストールした場合、IIS 4.0 のインストールによって .idq.dll がインストールされるため、この脆弱性の影響を受けます。
Windows 2000 Server を稼動しています。この脆弱性の影響を受けますか?
Windows 2000 のインストールの既定の状態では、この脆弱性の影響を受けます。既定で Windows 2000 サーバー製品の一部として IIS 5.0 がインストールされ、IIS 5.0 のインストールによって idq.dll がインストールされます。
Windows 2000 Professional を稼動しています。この脆弱性の影響を受けますか?
Windows 2000 Professional のインストールの既定の状態では、この脆弱性の影響を受けません。IIS 5.0 は、Windows 2000 と異なり、Windows 2000 Professional の一部としてインストールされません。しかし、IIS 5.0 をインストールした場合、IIS 5.0 のインストールによって idq.dll がインストールされるため、この脆弱性による影響を受けます。
更新プログラムは何を修正しますか?
この更新プログラムは ISAPI エクステンションでの入力のチェックが適切に行われるように修正し、この脆弱性を排除します。
8 月 8 日以前に公開された Windows NT 用更新プログラムと、8 月 9 日以降に公開された Windows NT 用更新プログラムを見分ける方法はありますか ?
はい。Idq.dll のバージョン番号と更新日付から確認することができます。
8 月 8 日以前に公開された更新プログラム (idq.dll) は以下の情報を持っています。
バージョン番号: 5.0.1781.3
更新日付: 2001 年 6 月 14 日
8 月 9 日以降に公開された更新プログラム (idq.dll) は以下の情報を持っています。
バージョン番号: 5.0.1782.4
更新日付: 2001 年 7 月 26 日
idq.dll は既定の環境では "c:\winnt\system32" フォルダにインストールされます。
Windows XP もこの脆弱性の影響を受けるとのことですが、Windows XP の更新プログラムがありません。Windows XP が影響を受けるのは本当ですか?
Release Candidate 1 (RC1) より前の Windows XP のバージョンはこの脆弱性の影響を受けます。すべてのベータ版製品のように、これらのバージョンは単に評価目的で使用されるもので、運用サーバーにインストールされるべきではありません。この脆弱性は Windows XP Release Candidate 1 で排除されており、最終リリース版の製品を含め、Release Candidate 1 以降のバージョンには存在しません。
影響を受けない製品
影響を受ける製品
影響を受ける製品への対策については、 こちら をご覧ください。