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

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. 事務局のパソコンが「Emotet」感染、パスワード付きZipファイル添付に注意呼びかけ(日本医師会)

    事務局のパソコンが「Emotet」感染、パスワード付きZipファイル添付に注意呼びかけ(日本医師会)

  2. 社内パソコンがウイルス感染、メール送受信履歴に含まれるアドレスへなりすましメールを送付(ライフ)

    社内パソコンがウイルス感染、メール送受信履歴に含まれるアドレスへなりすましメールを送付(ライフ)

  3. TLS 1.2以前の暗号を解読する「Raccoon Attack」攻撃(JVN)

    TLS 1.2以前の暗号を解読する「Raccoon Attack」攻撃(JVN)

  4. 社員PCがEmotetに感染、社内外のメールデータが流出(岩出建設)

    社員PCがEmotetに感染、社内外のメールデータが流出(岩出建設)

  5. 社内パソコンがEmotet感染、取引先でも不審メールを確認(山一商事)

    社内パソコンがEmotet感染、取引先でも不審メールを確認(山一商事)

  6. パスワードリスト型攻撃のフォレンジック調査で新たな不正ログイン判明(三越伊勢丹)

    パスワードリスト型攻撃のフォレンジック調査で新たな不正ログイン判明(三越伊勢丹)

  7. やけど虫の駆除方法、体液が皮膚に付いてしまった場合の対策について

    やけど虫の駆除方法、体液が皮膚に付いてしまった場合の対策について

  8. 開発者がセキュリティの責を負う時代到来か、セキュアコーディングのSaaS型eラーニングサービス開始(Flatt Security)

    開発者がセキュリティの責を負う時代到来か、セキュアコーディングのSaaS型eラーニングサービス開始(Flatt Security)

  9. 「Emotet」関連相談が急増、パスワード付きZIPファイル添付攻撃も確認(IPA)

    「Emotet」関連相談が急増、パスワード付きZIPファイル添付攻撃も確認(IPA)

  10. PCI DSS v4.0 が 2021年公開、8 年ぶりのメジャーバージョンアップ ~ 改訂の 2 つの目的と移行スケジュール

    PCI DSS v4.0 が 2021年公開、8 年ぶりのメジャーバージョンアップ ~ 改訂の 2 つの目的と移行スケジュールPR

ランキングをもっと見る