Apache Software Foundation や米CERT/CCなどは米国時間6月17日,Webサーバー・ソフト「Apache」のセキュリティ・ホールを警告した。バージョン 1.3(1.3 から最新版 1.3.24)およびバージョン2.0(2.0から最新版 2.0.36)が影響を受ける。Apacheサーバーに対して,ある細工が施されたリクエストが送信されると,サーバー上で任意のコードを実行されたり,Apacheを停止させられたりする恐れがある。対策は,アップグレードやパッチの適用など。ただし,いずれも現時点では準備中。

【6月19日追記】現時点では,セキュリティ・ホールを修正したバージョン1.3.26および2.0.39が公開されている。また,米国時間6月18日に更新されたCERT/CCの情報によると,バージョン1.2.2以上も影響を受ける。

 セキュリティ・ホールの原因は,Apacheが標準で備えるチャンク・エンコーディング("chunked" encoding)機能の不具合。ある特定のチャンク・エンコーディング・データの取り扱いに問題があるため,細工が施されたデータ(リクエスト)を送信されると,任意のコードを実行されてしまう恐れなどがある。

 チャンク・エンコーディングとは,HTTP 1.1 の仕様(RFC2616)で定められているデータ送信方法の一つ。HTTPを使ってクライアント(Webブラウザ)からWebサーバーへデータを送信する場合,Webサーバーはそのデータを受信するために,事前に適切なバッファ(メモリー)を割り当てておく必要がある。しかし,データ・サイズが事前に分からない場合がある。そのときに使われるのがチャンク・エンコーディングである。

 クライアントは送信データを「チャンク」と呼ばれるデータに分割して,チャンクのサイズをサーバーへ通知した後,チャンク自身を送信する。サーバーでは,チャンク分のバッファを割り当てて受信する。これを繰り返すことで,サイズが事前に分からないデータの送受信を可能にする。

 チャンク・エンコーディングに関連するセキュリティ・ホールはInternet Information Server/Services(IIS)でもいくつか見つかっている(関連記事)。それが今回,Apacheにも見つかった。

 今回のセキュリティ・ホールを悪用された場合の被害は,Apacheのバージョンや,Apacheが動作するプラットフォーム(OSやハードウエア)によって異なる。Apache Software Foundation や CERT/CC などの情報によれば,Windows および 64ビット版UNIX 上で動作する バージョン 1.3(1.3 から1.3.24)では,任意のコードを実行される恐れがあるという。バージョン 1.3のこれら以外のプラットフォームでは,Apacheのサービスを停止(妨害)される。

 バージョン2.0(2.0から2.0.36)では,任意のコードを実行される恐れはない。しかし,サービスを妨害される可能性がある。

 対策は,セキュリティ・ホールを修正したバージョン1.3.25 あるいは2.0.37にアップグレードすること。ただし,現時点ではApache Software Foundation のサイトに公開されていない。近々に公開される予定なので,管理者はできるだけ頻繁にチェックして,公開され次第対応したい。

【6月19日追記】Apache Software Foundation のサイトに,セキュリティ・ホールを修正したバージョン1.3.26および2.0.39が公開された。ただし,ダウンロードする場合には国内のミラー・サイトを利用したい。

 また,Apacheは Webアプリケーション・サーバーやLinuxのディストリビューションなどにもバンドルされているので,管理者は注意する必要がある。バンドルされているApacheについては,それぞれのベンダーから情報およびパッチが公開されるので,ベンダーのサイトなどをチェックして適用する必要がある。ベンダーの対応状況については,CERT/CCのサイトに掲載されている。

 なお,米Internet Security Systemsがソース・コードのパッチを公開しているが,Apache Software Foundation や CERT/CC によれば,このパッチを適用しても今回のセキュリティ・ホールをふさげないという。

◎参考資料
◆CERT Advisory CA-2002-17 Apache Web Server Chunk Handling Vulnerability(米CERT/CC)
◆SECURITY ADVISORY: June 17, 2002(Apache Software Foundation)
Remote Compromise Vulnerability in Apache HTTP Server(米Internet Security Systems)

(勝村 幸博=IT Pro)