Apache Commons FileUpload のマルチパートリクエストの処理に起因する DoS の脆弱性(Scan Tech Report) | ScanNetSecurity
2024.07.27(土)

Apache Commons FileUpload のマルチパートリクエストの処理に起因する DoS の脆弱性(Scan Tech Report)

Apache Struts や Apache Tomcat で利用される Apache Commons FileUpload に、サービス運用妨害 (DoS) が発生する脆弱性が報告されています。

脆弱性と脅威
1.概要
Apache Struts や Apache Tomcat で利用される Apache Commons FileUpload に、サービス運用妨害 (DoS) が発生する脆弱性が報告されています。
リモートの第三者に利用された場合、CPU リソースを大量消費させ、システムの正常な動作が妨害される可能性があります。
脆弱性を悪用された場合の影響度が高いため、影響を受けるバージョンの Apache Struts および Apache Tomcat を利用するユーザは可能な限り以下の対策を実施することを推奨します。


2.深刻度(CVSS)
5.0
http://jvndb.jvn.jp/cvss/ScoreCalc2.swf?name=JVNDB-2014-000017&vector=(AV:N/AC:L/Au:N/C:N/I:N/A:P/E:P/RL:O/RC:C)&lang=ja&g=1


3.影響を受けるソフトウェア
Apache Commons FileUpload 1.3 以前
Apache Struts 2.3.16 以前
Apache Tomcat 7.0.50 以前
Apache Tomcat 8.0.1 以前

※1 Apache Commons FileUpload を利用する Jenkins, JSPWiki, JXP, Spring, Lucene-Solr, onemind-commons, Stapler, WSDL2c などのソフトウェアもこの脆弱性の影響を受ける可能性があります。


4.解説
Apache Commons は、再利用可能な Java コンポーネントをまとめた Apache プロジェクトです。その中の 1 つである FileUpload は、RFC 1867※2 で規定されるマルチパート形式のリクエストに対応したファイルアップロード機能を提供します。

Apache Struts 2.x および Apache Tomcat 7.x/8.x では、マルチパート形式のリクエストを処理するために、この Apache Commons FileUpload をコンポーネントとして使用しています。

Apache Commons FileUpload には、マルチパート形式のリクエストを扱う際に、Content-Type ヘッダの boundary パラメータを適切に処理しない不備があります。
このため、当該パラメータに 4092 バイト以上の文字列が指定された不正なマルチパート形式のリクエストを処理した場合、無限ループが発生し、大量の CPU リソースを消費してしまう脆弱性が存在します。

この脆弱性を利用することで、リモートの攻撃者は、Apache Commons FileUpload を利用する Apache Struts や Apache Tomcat が稼動するシステムのパフォーマンスを低下させ、システムをサービス不能状態にする可能性があります。

なお、Apache Tomcat 6 の管理アプリケーションの一部で、Apache Commons FileUpload をコンポーネントとして使用しているため、Apache Tomcat 6 もこの脆弱性の影響を受ける可能性があることが発見者である HIRT※3 より報告されています。
但し、当該管理アプリケーションは、認証されたユーザのみが使用できるものであり、脆弱性の影響は限定的であるとしています。

※2 http://www.ietf.org/rfc/rfc1867.txt
※3 http://www.hitachi.co.jp/hirt/publications/hirt-pub14003/index.html


5.対策
○Apache Commons FileUpload
======
以下の Web サイトより、Apache Commons FileUpload 1.3.1 以降を入手しアップデートすることで、この脆弱性を解消することが可能です。

Apache Commons FileUpload 1.3.1:
http://commons.apache.org/proper/commons-fileupload/download_fileupload.cgi
……………………………………………………………………………………………
○Apache Struts
======
以下のサイトより Apache Struts 2.3.16.1 以降を入手しアップデートすることで、この脆弱性を解消することが可能です。

Apache Struts 2.3.16.1:
http://struts.apache.org/downloads.html
……………………………………………………………………………………………
○Apache Tomcat
======
以下のサイトより Apache Tomcat 7.0.52/8.0.3 以降を入手しアップデートすることで、この脆弱性を解消することが可能です。
あるいは、HTTP リクエストを扱う際の Content-Type ヘッダのサイズを 4091 バイト未満に制限することで、この脆弱性による影響を緩和することも可能です。

Apache Tomcat 7.0.52:
http://tomcat.apache.org/download-70.cgi
Apache Tomcat 8.0.3:
http://tomcat.apache.org/download-80.cgi


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

(執筆:株式会社ラック サイバー・グリッド研究所

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

Scan Tech Report
http://scan.netsecurity.ne.jp/archives/51916302.html
《株式会社ラック デジタルペンテスト部》

編集部おすすめの記事

特集

脆弱性と脅威 アクセスランキング

  1. 「ポケモンセンターオンライン」を装ったフィッシングサイトに注意喚起(ポケモンセンター)

    「ポケモンセンターオンライン」を装ったフィッシングサイトに注意喚起(ポケモンセンター)

  2. NETGEAR 製ルータにバッファオーバーフローの脆弱性

    NETGEAR 製ルータにバッファオーバーフローの脆弱性

  3. JPCERT/CC、仮想通貨マイニングツールのXMRigの設置を狙った攻撃を順序立てて詳説~対策マニュアルとしても有効

    JPCERT/CC、仮想通貨マイニングツールのXMRigの設置を狙った攻撃を順序立てて詳説~対策マニュアルとしても有効

  4. PlayStation公式になりすましたアカウントに注意喚起、個人情報要求DMも

  5. Assimp にヒープベースのバッファオーバーフローの脆弱性

  6. HOME SPOT CUBE2 に複数のバッファオーバーフローの脆弱性

  7. 「GROWI」にWebブラウザ上で任意のスクリプトを実行される複数の脆弱性(JVN)

  8. 同日に再攻撃やフリーツール悪用も、2022年下半期 IPA 届出事例

  9. 「マンションのWi-Fiが遅いから切り替えます」関係者装った悪質勧誘が横行、法に基づき社名を公表(消費者庁)

  10. Microsoft Windows OS においてライセンス認証プログラム slui.exe の仕組みを悪用して UAC を回避する手法(Scan Tech Report)

アクセスランキングをもっと見る

「経理」「営業」「企画」「プログラミング」「デザイン」と並ぶ、事業で成功するためのビジネスセンスが「セキュリティ」
「経理」「営業」「企画」「プログラミング」「デザイン」と並ぶ、事業で成功するためのビジネスセンスが「セキュリティ」

ページ右上「ユーザー登録」から会員登録すれば会員限定記事を閲覧できます。毎週月曜の朝、先週一週間のセキュリティ動向を総括しふりかえるメルマガをお届け。(写真:ScanNetSecurity 名誉編集長 りく)

×