公開日:2017/01/20 最終更新日:2017/01/20

JVN#92395431
Apache Struts 2 において devMode が有効な場合に任意の Java(OGNL) コードが実行可能な問題

概要

Apache Struts 2 では、devMode (Development Mode) を有効にしている場合、任意の Java(OGNL) コードが実行可能です。

影響を受けるシステム

  • Apache Struts 2.3.30 およびそれ以前
  • Apache Struts 2.5.1 およびそれ以前
開発者によると、Apache Struts 2.3.31 および Apache Struts 2.5.2 以降では本問題は存在しないことを確認しているとのことです。

詳細情報

The Apache Software Foundation が提供する Apache Struts は、Java のウェブアプリケーションを開発するためのソフトウェアフレームワークです。Apache Struts 2 では、devMode (Development Mode) を有効にした状態で運用している場合、任意の Java(OGNL) コードが実行可能です。

なお、devMode を有効にした環境を攻撃する proof-of-concept コードが公開されています。

想定される影響

当該製品にアクセス可能な第三者によって、任意の Java(OGNL) コードを実行される可能性があります。

対策方法

アップデートする
影響を受けるバージョンを使用している場合は、最新版にアップデートしてください。

devMode を無効にする
開発者は、devMode を有効にしておくことによって生じるセキュリティ上のリスクについて説明しています
必要なとき以外は devMode を無効にしてください。

ベンダ情報

ベンダ ステータス ステータス
最終更新日
ベンダの告知ページ
NTT-CERT 該当製品無し 2017/01/20
ジェイティ エンジニアリング株式会社 該当製品無し 2017/01/20
日本電気株式会社 脆弱性情報提供済み 2017/01/20
ベンダ リンク
The Apache Software Foundation Apache Struts
Apache Struts 2 Documentation - Security - Disable devMode

参考情報

JPCERT/CCからの補足情報

JPCERT/CCによる脆弱性分析結果

CVSS v3 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L
基本値: 5.6
攻撃元区分(AV) 物理 (P) ローカル (L) 隣接 (A) ネットワーク (N)
攻撃条件の複雑さ(AC) 高 (H) 低 (L)
必要な特権レベル(PR) 高 (H) 低 (L) 不要 (N)
ユーザ関与レベル(UI) 要 (R) 不要 (N)
スコープ(S) 変更なし (U) 変更あり (C)
機密性への影響(C) なし (N) 低 (L) 高 (H)
完全性への影響(I) なし (N) 低 (L) 高 (H)
可用性への影響(A) なし (N) 低 (L) 高 (H)
CVSS v2 AV:N/AC:M/Au:N/C:P/I:P/A:P
基本値: 6.8
攻撃元区分(AV) ローカル (L) 隣接 (A) ネットワーク (N)
攻撃条件の複雑さ(AC) 高 (H) 中 (M) 低 (L)
攻撃前の認証要否(Au) 複数 (M) 単一 (S) 不要 (N)
機密性への影響(C) なし (N) 部分的 (P) 全面的 (C)
完全性への影響(I) なし (N) 部分的 (P) 全面的 (C)
可用性への影響(A) なし (N) 部分的 (P) 全面的 (C)

謝辞

この脆弱性情報は、情報セキュリティ早期警戒パートナーシップに基づき下記の方が IPA に報告し、JPCERT/CC が開発者との調整を行いました。
報告者: 株式会社ラック 藤本 博史 氏、北原 憲 氏

関連文書

JPCERT 緊急報告
JPCERT REPORT
CERT Advisory
CPNI Advisory
TRnotes
CVE
JVN iPedia JVNDB-2017-000012