piyolog

piyokangoの備忘録です。セキュリティの出来事を中心にまとめています。このサイトはGoogle Analyticsを利用しています。

Apache Struts2 の脆弱性 (CVE-2016-3087)についてまとめてみた

Apache Software Foundationは2016年6月2日に脆弱性情報 S2-033と修正版を公開しました。ここでは関連情報をまとめます。

脆弱性概要

対象 Apache Struts2
CVE CVE-2016-3087
影響 Possible RCE
重要度 High
PoC PoCは6/3時点で確認できず。
CVSS(v3) 4.3(Base) at Cisco
6.8 (base) at Redhat
発見者 Alvaro Munoz氏(@pwntester)
脆弱性の影響

Remote Code Execution can be performed when using REST Plugin with ! operator when Dynamic Method Invocation is enabled.

https://struts.apache.org/docs/s2-032.html

影響範囲

次のApache Strutsのバージョンが影響を受ける。

  • 2.3.20 〜 2.3.28(2.3.20.3、2.3.24.3は対象外。)
攻撃前提条件「DMIの有効化」が必要

有効化しているかはstruts.xml等で確認できる。

struts.enable.DynamicMethodInvocation = false

対策

アップデート、またはDMIの無効化で対応可能。
2016年4月のS2-032で影響を受けるバージョン以前が今回も影響を受けるものであり、既に最新バージョンへ更新している場合、対応は不要。

アップデートする

次のバージョン以降の最新版へ更新する。

DMIを無効化する
struts.enable.DynamicMethodInvocation = false