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

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

《株式会社ラック デジタルペンテスト部》

関連記事

特集

PageTop

アクセスランキング

  1. 今日もどこかで情報漏えい 第23回「2024年3月の情報漏えい」なめるなという決意 ここまでやるという矜恃

    今日もどこかで情報漏えい 第23回「2024年3月の情報漏えい」なめるなという決意 ここまでやるという矜恃

  2. GROWI に複数の脆弱性

    GROWI に複数の脆弱性

  3. 雨庵 金沢で利用している Expedia 社の宿泊予約情報管理システムに不正アクセス、フィッシングサイトへ誘導するメッセージ送信

    雨庵 金沢で利用している Expedia 社の宿泊予約情報管理システムに不正アクセス、フィッシングサイトへ誘導するメッセージ送信

  4. セトレならまちで利用している Expedia 社の宿泊予約情報管理システムに不正アクセス、フィッシングサイトへ誘導するメッセージ送信

    セトレならまちで利用している Expedia 社の宿泊予約情報管理システムに不正アクセス、フィッシングサイトへ誘導するメッセージ送信

  5. インターネット専用宝くじで当選本数の登録誤り、1 等 200 万円 10 本が 200 本に

    インターネット専用宝くじで当選本数の登録誤り、1 等 200 万円 10 本が 200 本に

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

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

  7. メール誤送信事故多発で悪名高いドッペルゲンガードメイン「gmai.com」はどこの誰が保有しているのか?

    メール誤送信事故多発で悪名高いドッペルゲンガードメイン「gmai.com」はどこの誰が保有しているのか?

  8. フィッシングサイトのドメイン「top」が最多、デジタルアーツ調査

    フィッシングサイトのドメイン「top」が最多、デジタルアーツ調査

  9. NDIAS「車載器向けセキュリティ技術要件集」活用したコンサルサービス提供

    NDIAS「車載器向けセキュリティ技術要件集」活用したコンサルサービス提供

  10. 札幌で「CSIRT のはじめ方」ワークショップ 5/16 開催、北海道在勤在住者は参加費 5 万円が無料

    札幌で「CSIRT のはじめ方」ワークショップ 5/16 開催、北海道在勤在住者は参加費 5 万円が無料

ランキングをもっと見る