Apache Commons FileUpload のマルチパートリクエストの処理に起因する DoS の脆弱性(Scan Tech Report)
Apache Struts や Apache Tomcat で利用される Apache Commons FileUpload に、サービス運用妨害 (DoS) が発生する脆弱性が報告されています。
脆弱性と脅威
エクスプロイト
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
《株式会社ラック デジタルペンテスト部》
関連記事
-
Microsoft Internet Explorer の CTreeNode オブジェクトの取り扱いに起因する解放済みメモリ使用の脆弱性(Scan Tech Report)
脆弱性と脅威 -
Microsoft Internet Explorer の CMarkup オブジェクトの取り扱いに起因する 0-Day エクスプロイト(Scan Tech Report)
脆弱性と脅威 -
Microsoft Windows の Win32k.sys ドライバの実装に起因する整数オーバーフローの脆弱性(Scan Tech Report)
脆弱性と脅威 -
Linux Kernel の compat_sys_recvmmsg() 関数の実装に起因する権限昇格の脆弱性(Scan Tech Report)
脆弱性と脅威
関連リンク
特集
アクセスランキング
-
エムケイシステムにランサムウェア攻撃、グループの業績に及ぼす影響については精査中
-
ランサムウェア身代金支払率、日本は国際トレンドに逆行 ~ プルーフポイント年次レポート
-
エーザイグループにランサムウェア攻撃、一部サーバが暗号化
-
HP 社 PC のファームウェアに Windows OS での管理者権限への昇格が可能となるメモリアクセス不備の脆弱性(Scan Tech Report)
-
原因は推測可能なVPNのパスワード、村本建設へのランサムウェア攻撃
-
非エンジニアの文系ライターが挑んだSecuriST(セキュリスト)認定ネットワーク脆弱性診断士受験記 [前編] もしもう一度ゼロからやり直せるならPR
-
業務委託先のサーバに不正アクセス、日本製紙クレシア「ポイズ 選べる試供品プレゼントキャンペーン」中止
-
電通国際情報サービスに不正アクセス、一般ユーザー権限でのデータ参照の形跡
-
トヨタ自動車でのクラウド誤設定による情報漏えい、調査結果を公表
-
「日本で撮影されたUFO」写真からサポート詐欺に誘導 トレンドマイクロ注意喚起