CVE-2017-5638
概要

The Jakarta Multipart parser in Apache Struts 2 2.3.x before 2.3.32 and 2.5.x before 2.5.10.1 has incorrect exception handling and error-message generation during file-upload attempts, which allows remote attackers to execute arbitrary commands via a crafted Content-Type, Content-Disposition, or Content-Length HTTP header, as exploited in the wild in March 2017 with a Content-Type header containing a #cmd= string.

公表日 2017年3月11日11:59
登録日 2021年1月26日13:26
最終更新日 2024年11月21日12:28
CVSS3.1 : CRITICAL
スコア 9.8
ベクター CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
攻撃元区分(AV) ネットワーク
攻撃条件の複雑さ(AC)
攻撃に必要な特権レベル(PR) 不要
利用者の関与(UI) 不要
影響の想定範囲(S) 変更なし
機密性への影響(C)
完全性への影響(I)
可用性への影響(A)
CVSS2.0 : HIGH
スコア 10.0
ベクター AV:N/AC:L/Au:N/C:C/I:C/A:C
攻撃元区分(AV) ネットワーク
攻撃条件の複雑さ(AC)
攻撃前の認証要否(Au) 不要
機密性への影響(C)
完全性への影響(I)
可用性への影響(A)
全ての特権を取得 いいえ
ユーザー権限を取得 いいえ
その他の権限を取得 いいえ
ユーザー操作が必要 いいえ
影響を受けるソフトウェアの構成
構成1 以上 以下 より上 未満
cpe:2.3:a:apache:struts:*:*:*:*:*:*:*:* 2.5.0 2.5.10.1
cpe:2.3:a:apache:struts:*:*:*:*:*:*:*:* 2.2.3 2.3.32
構成2 以上 以下 より上 未満
cpe:2.3:o:ibm:storwize_v3500_firmware:7.7.1.6:*:*:*:*:*:*:*
cpe:2.3:o:ibm:storwize_v3500_firmware:7.8.1.0:*:*:*:*:*:*:*
実行環境
1 cpe:2.3:h:ibm:storwize_v3500:-:*:*:*:*:*:*:*
構成3 以上 以下 より上 未満
cpe:2.3:o:ibm:storwize_v5000_firmware:7.7.1.6:*:*:*:*:*:*:*
cpe:2.3:o:ibm:storwize_v5000_firmware:7.8.1.0:*:*:*:*:*:*:*
実行環境
1 cpe:2.3:h:ibm:storwize_v5000:-:*:*:*:*:*:*:*
構成4 以上 以下 より上 未満
cpe:2.3:o:ibm:storwize_v7000_firmware:7.7.1.6:*:*:*:*:*:*:*
cpe:2.3:o:ibm:storwize_v7000_firmware:7.8.1.0:*:*:*:*:*:*:*
実行環境
1 cpe:2.3:h:ibm:storwize_v7000:-:*:*:*:*:*:*:*
構成5 以上 以下 より上 未満
cpe:2.3:o:lenovo:storage_v5030_firmware:7.7.1.6:*:*:*:*:*:*:*
cpe:2.3:o:lenovo:storage_v5030_firmware:7.8.1.0:*:*:*:*:*:*:*
実行環境
1 cpe:2.3:h:lenovo:storage_v5030:-:*:*:*:*:*:*:*
構成6 以上 以下 より上 未満
cpe:2.3:a:hp:server_automation:10.0.0:*:*:*:*:*:*:*
cpe:2.3:a:hp:server_automation:10.1.0:*:*:*:*:*:*:*
cpe:2.3:a:hp:server_automation:10.2.0:*:*:*:*:*:*:*
cpe:2.3:a:hp:server_automation:10.5.0:*:*:*:*:*:*:*
cpe:2.3:a:hp:server_automation:9.1.0:*:*:*:*:*:*:*
構成7 以上 以下 より上 未満
cpe:2.3:a:oracle:weblogic_server:12.1.3.0.0:*:*:*:*:*:*:*
cpe:2.3:a:oracle:weblogic_server:12.2.1.2.0:*:*:*:*:*:*:*
cpe:2.3:a:oracle:weblogic_server:10.3.6.0.0:*:*:*:*:*:*:*
cpe:2.3:a:oracle:weblogic_server:12.2.1.1.0:*:*:*:*:*:*:*
構成8 以上 以下 より上 未満
cpe:2.3:a:arubanetworks:clearpass_policy_manager:*:*:*:*:*:*:*:* 6.6.5
構成9 以上 以下 より上 未満
cpe:2.3:a:netapp:oncommand_balance:-:*:*:*:*:*:*:*
関連情報、対策とツール
共通脆弱性一覧

JVN脆弱性情報
Apache Struts2 に任意のコードが実行可能な脆弱性
タイトル Apache Struts2 に任意のコードが実行可能な脆弱性
概要

Apache Struts2 には、任意のコードが実行可能な脆弱性が存在します。 Apache Struts2 には、Jakarta Multipart parser の処理に起因する、任意のコードが実行可能な脆弱性が存在します。 なお、本脆弱性の攻撃コードが公開されています。

想定される影響 遠隔の第三者によって細工されたリクエストを処理することで、アプリケーションの権限で任意のコードを実行される可能性があります。
対策

[アップデートする] 本脆弱性が修正されたバージョン (Struts 2.3.32 および Struts 2.5.10.1) へアップデートする。 [ワークアラウンドを実施する] 次のワークアラウンドを実施し、本脆弱性の影響を軽減する。  * サーブレットフィルタや Web Application Firewall などを使用して、Content-Type ヘッダを検証し、"multipart/form-data" が文字列として含まれる不正なリクエストを遮断する  * File Upload Interceptor を無効化する (Struts 2.5.8 から Struts 2.5.10 に対してのみ有効)   File Upload Interceptor   https://struts.apache.org/docs/file-upload-interceptor.html JPCERT/CCからの補足情報【2017年3月17日追記】 開発者は、multipart/form-data を扱うパーサを、デフォルトの JakartaMultipartRequest から別の実装に変更する方法を、対策として記載しています。 JPCERT/CC による検証では、本脆弱性の影響を受けるバージョンにおいて JakartaStreamMultiPartRequest に変更しても本脆弱性の影響を受けることを確認したため、対策方法から削除しています。 別の実装 https://cwiki.apache.org/confluence/display/WW/File+Upload#FileUpload-AlternateLibraries

公表日 2017年3月9日0:00
登録日 2017年3月10日10:47
最終更新日 2017年10月3日13:51
影響を受けるシステム
Apache Software Foundation
Apache Struts 2.3.5 から 2.3.31 まで
Apache Struts 2.5 から 2.5.10 まで
日本電気
ESMPRO/ServerManager 6.10 から 6.16
InfoFrame Relational Store 全バージョン
iStorage HSシリーズ 5.0.5
StarOffice X Enterprise V4.0
StarOffice X Enterprise V5.0
StarOffice X Enterprise V5.1
StarOffice X Standard V4.0
StarOffice X Standard V5.0
StarOffice X Standard V5.1
WebOTX Developer (with Developer's Studio) V9.3
WebOTX Developer (with Developer's Studio) V9.4
日立
HiRDB Server Version 9
HiRDB Control Manager - Server Version 9
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
その他
変更履歴
No 変更内容 変更日
0 [2017年03月10日]
  掲載
[2017年03月15日]
  CVSS による深刻度:内容を更新
  ベンダ情報:Apache Software Foundation (Uses default error key if specified key doesn't exist (3523064)) を追加
  ベンダ情報:Apache Software Foundation (Uses default error key if specified key doesn't exist (6b8272c)) を追加
  ベンダ情報:シスコシステムズ (Content-Type: Malicious - New Apache Struts2 0-day Under Attack) を追加
  CWE による脆弱性タイプ一覧:CWE-ID を追加
  参考情報:National Vulnerability Database (NVD) (CVE-2017-5638) を追加
  参考情報:US-CERT Vulnerability Note (NVD) (VU#834067) を追加
[2017年03月21日]
  対策:内容を更新
[2017年04月17日]
  影響を受けるシステム:ベンダ情報の追加に伴い内容を更新
  ベンダ情報:日立 (hitachi-sec-2017-110) を追加
[2017年07月25日]
  影響を受けるシステム:ベンダ情報の追加に伴い内容を更新
  ベンダ情報:日本電気 (NV17-013) を追加
[2017年09月04日]
  ベンダ情報:富士通 (Veritas NetBackup: 任意のコマンドが実行される脆弱性(CVE-2017-5638) (2017年9月1日)) を追加
[2017年10月03日]
  影響を受けるシステム:ベンダ情報 (NV17-013) の更新に伴い内容を更新
2018年2月17日10:37