Web アプリケーションに対するハッシュ衝突攻撃 (Hash Collision Attack)(Scan Tech Report) | ScanNetSecurity
2026.01.11(日)

Web アプリケーションに対するハッシュ衝突攻撃 (Hash Collision Attack)(Scan Tech Report)

Web アプリケーションで使用されるプログラミング言語および Web アプリケーションフレームワークには、ハッシュテーブルの処理に起因してサービス運用妨害 (DoS) が発生する脆弱性が存在します。

脆弱性と脅威 エクスプロイト
1.概要
Web アプリケーションで使用されるプログラミング言語および Web アプリケーションフレームワークには、ハッシュテーブルの処理に起因してサービス運用妨害 (DoS) が発生する脆弱性が存在します。
リモートの第三者に利用された場合、システムの正常な動作が妨害される可能性があります。
影響を受けるソフトウェアが広範囲であり、脆弱性の悪用は容易であることが考えられるため、対象のユーザは可能な限り以下に記載する対策を実施することを推奨します。


2.深刻度(CVSS)
・Apache Tomcat (5.0)
http://nvd.nist.gov/cvss.cfm?version=2&name=CVE-2011-4858&vector=%28AV%3AN/AC%3AL/Au%3AN/C%3AN/I%3AN/A%3AP%29
・Microsoft .NET Framework (7.8)
http://nvd.nist.gov/cvss.cfm?version=2&name=CVE-2011-3414&vector=%28AV%3AN/AC%3AL/Au%3AN/C%3AN/I%3AN/A%3AC%29
・Oracle Glassfish Server (5.0)
http://nvd.nist.gov/cvss.cfm?version=2&name=CVE-2011-5035&vector=%28AV%3AN/AC%3AL/Au%3AN/C%3AN/I%3AN/A%3AP%29
・PHP (5.0)
http://nvd.nist.gov/cvss.cfm?version=2&name=CVE-2011-4885&vector=%28AV%3AN/AC%3AL/Au%3AN/C%3AN/I%3AN/A%3AP%29
・Ruby (7.8)
http://nvd.nist.gov/cvss.cfm?version=2&name=CVE-2011-4815&vector=%28AV%3AN/AC%3AL/Au%3AN/C%3AN/I%3AN/A%3AC%29



3.影響を受けるソフトウェア
Apache Tomcat 5.5.34 以前
Apache Tomcat 6.0.33 以前
Apache Tomcat 7.0.22 以前
Microsoft .NET Framework 1.1 SP1
Microsoft .NET Framework 2.0 SP2
Microsoft .NET Framework 3.5 SP1
Microsoft .NET Framework 3.5.1
Microsoft .NET Framework 4.0
Oracle Glassfish Server 3.1.1 以前
PHP 5.3.8 以前 ※2
Ruby 1.8.7-p352 以前

※1 上記以外にも Java, Check Point 製品などの多数のソフトウェアが影響を受けると報告されています。詳細については、関連情報のアドバイザリを参照下さい。
※2 開発版である PHP 5.4.0RC3 以前も影響を受けます。


4.解説
多くの Web アプリケーションで使用されるプログラミング言語では、HTTP リクエストのパラメータを保持するためにハッシュテーブルが利用されます。

Web アプリケーションで使用されるプログラミング言語および Web アプリケーションフレームワークには、ハッシュテーブルの実装に不備が存在するため、ハッシュ値が一致 (ハッシュ衝突) するパラメータを多数含む HTTP リクエストを処理した場合に、CPU 資源を大量に消費してしまう脆弱性が存在します。

この脆弱性を利用することでリモートの攻撃者は、Web アプリケーションを利用するシステムの正常な動作を妨害し、結果として、Web サービスの提供を困難にする可能性があります。

この脆弱性は、2003 年に 12th USENIX Security Symposium で発表されていますが、昨年末の 2011/12/28 に 28th Chaos Communication Congress (28C3) で発表された攻撃手法 hashDoS を利用することで Perl を除く多くのプログラミング言語および Web アプリケーションフレームワークでも影響を受けることが明らかになっています。

Denial of Service via Algorithmic Complexity Attacks:
http://www.cs.rice.edu/~scrosby/hash/CrosbyWallach_UsenixSec2003.pdf
nruns Security Advisory n.runs-SA-2011.004:
http://www.nruns.com/_downloads/advisory28122011.pdf

なお、Perl および Ruby 1.9.x では、ハッシュ関数がランダム化されているため、この脆弱性の影響を受けないことが報告されています。但し、既にサポートが終了する Perl 5.8.1 より前のバージョンでは影響を受ける可能性があります。
また、Java については、Oracle によると、この脆弱性の影響を受けることは確認しているものの、プログラミング言語レベルでの修正を行わないと報告しています。


5.対策
(Web非公開)

6.ソースコード
(Web非公開)

(執筆:株式会社ラック コンピュータセキュリティ研究所

※Web非公開該当コンテンツ閲覧をご希望の方はScan Tech Reportにご登録(有料)下さい。

《吉澤 亨史( Kouji Yoshizawa )》

関連記事

特集

PageTop

アクセスランキング

  1. 複数名でマスキング処理を確認したが時間経過でインクが薄れて個人情報判読可能

    複数名でマスキング処理を確認したが時間経過でインクが薄れて個人情報判読可能

  2. 「攻撃者の高い執念が感じられ」る 日本語版 EmEditor Web サイトのリンク改変

    「攻撃者の高い執念が感じられ」る 日本語版 EmEditor Web サイトのリンク改変

  3. EmEditor「公式サイトからダウンロードしたお客様が被害に遭われた点に重い責任を感じて」いる

    EmEditor「公式サイトからダウンロードしたお客様が被害に遭われた点に重い責任を感じて」いる

  4. 埼玉大学で在学生 8,373 名の学籍番号及び GPA 等を含む個人情報が閲覧可能に

    埼玉大学で在学生 8,373 名の学籍番号及び GPA 等を含む個人情報が閲覧可能に

  5. 日産自動車の業務委託先に不正アクセス、約 21,000 人の顧客情報流出の可能性

    日産自動車の業務委託先に不正アクセス、約 21,000 人の顧客情報流出の可能性

ランキングをもっと見る
PageTop