CVE-2017-9791 の詳細
CVEの情報
説明:
The Struts 1 plugin in Apache Struts 2.1.x and 2.3.x might allow remote code execution via a malicious field value passed in a raw message to the ActionMessage.
CVE更新日: 2017-07-10 16:29:00.277000
CVSSバージョン: 3.1
CVSSスコア: 9.8
KEVの情報
KEV更新日: 2022-02-10
EPSSの情報
EPSSは脆弱性が今後30日以内に悪用される確率を予測するスコアリングシステムで、FIRST(Forum of Incident Response and Security Teams)が提供しています。
EPSSのスコアが高いということは、攻撃されるリスクが高いことを意味するので、早めの対策が必要です。
EPSSスコア: 0.989080000
EPSS更新日: 2026-10-19 00:00:00
SSVCの情報
SSVCはカーネギーメロン大学ソフトウェア工学研究所が提案する脆弱性の評価手法です。ステークホルダーごとに脆弱性対応の優先度を決定することを支援します。
本サイトでは、CVE、KEV、EPSSの内容からExploitation(悪用状況)、Technical Impact(技術的影響)、Automatable(自動攻撃の可否)を判定します。
Exploitation: active
Technical Impact: high
Automatable: True
CVE-2017-9791に関する脆弱性調査結果を以下に解説します。
1. 脆弱性の概要
CVE-2017-9791 (S2-048) は、Apache Struts 2.1.x および 2.3.x の Struts 1 プラグインにおけるリモートコード実行 (RCE) の脆弱性です。 悪意のあるフィールド値が
ActionMessageに生 (raw) のメッセージとして渡されることで発生します。 この脆弱性は、Object Graph Navigation Language (OGNL) 式の評価を悪用して、アプリケーションがユーザーから提供された入力値を適切に処理しない場合に、任意のコードが実行される可能性があります。1.1 影響
本脆弱性が悪用された場合、遠隔の攻撃者によって、Apache Struts 2 が動作するサーバー上で任意のコードが実行される可能性があります (リモートコード実行)。 攻撃者は、特別に細工されたリクエストを脆弱なサーバーに送信することで、標的のサーバーを乗っ取ることが可能になります。
1.2 深刻度
Apache Software Foundation は、本脆弱性の重要度を「高 (high)」としています。 NVD (National Vulnerability Database) のCVSS v3.1スコアは 9.8 (Critical) です。 CVSS v3.1 ベクターは
(CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)です。2. 対象となる環境
2.1 影響を受けるOSバージョン
特定のOSバージョンに限定されず、Apache Struts 2 が動作する環境全般に影響があります。
2.2 影響を受ける設定
以下の条件を満たす環境が本脆弱性の影響を受けます。
ActionMessageに直接文字列(ユーザー入力などの「生(raw)」のメッセージ)を渡している場合。3. 影響を受けた時の兆候
本脆弱性が悪用された場合、以下のような兆候が現れる可能性があります。
${1+1}を入力すると、結果として2が表示されることで、OGNL式の実行が確認できます。4. 推奨対策
4.1 本対策
ActionMessageに直接文字列を渡す代わりに、リソースキーを使用するようにアプリケーションコードを修正してください。messages.add("msg", new ActionMessage("Gangster " + gform.getName() + " added successfully"));messages.add("msg", new ActionMessage("struts1.gangsterAdded", gform.getName()));ここで、struts1.gangsterAddedはリソースバンドルで定義されたキーです。4.2 暫定回避策(緩和策)
ActionMessageクラスにユーザーからの入力を含む値を直接渡すことを避け、代わりにリソースキーを使用するようにコードを変更する。他に解説すべき観点
参照したサイト