2015年11月9日頃から騒がれているApache CommonsのCollectionsなどのデシリアライズの実装に起因する脆弱性に関連したリンク集です。
脆弱性情報
CVE | Weblogic: CVE-2015-4852 WebSphere: CVE-2015-7450 Jenkins: CVE-2015-8103 Groovy: CVE-2015-3253 |
---|---|
影響 | RCE |
悪用 | 一部ソフトウェアを対象とした実証コード公開 |
対策 | 影響を受ける製品は修正版や回避策あり |
報告者 | Chris Frohoff氏 |
注意喚起
- [PDF] 「WebLogic Server」の脆弱性探索が目的と考えられるアクセスの観測について - 警察庁 (平成27年11月15日)
2015年1月に発表・検証コードが公開されていた
In fact, even though proof of concept code was released OVER 9 MONTHS AGO, none of the products mentioned in the title of this post have been patched, along with many more.
http://foxglovesecurity.com/2015/11/06/what-do-weblogic-websphere-jboss-jenkins-opennms-and-your-application-have-in-common-this-vulnerability/
#ysoserial tool published: https://t.co/Ikp9PaOG25 #appseccali #MarshallingPickles cc:@gebl
— Chris Frohoff (@frohoff) 2015, 1月 28
Apacheの発表
Apache Commons statement to widespread Java object de-serialisation vulnerability https://t.co/gFRLOIMXe1 @ApacheCommons #security #Java
— Apache - The ASF (@TheASF) 2015, 11月 10
影響対象
次のApache CommonsのCollectionsライブラリを使用しているソフトウェアが影響を受ける可能性がある。
- Commons Collections 3.0系
- Commons Collections 4.0系
また、このほかにデシリアライズの処理に関して同様の影響があると報告されている事例(Groovyやspring)がある。
リモートからExploitするための前提条件
Common Collectionsのライブラリを読み込んでいるソフトウェアにおいて、外部から直列化オブジェクトの受ける手段が存在している場合に脆弱性による攻撃が成功する可能性がある。この状態は該当しそうなケースはR42日記の「影響を受けるシステム」やFoxglove Securityの「WHAT COULD POSSIBRY GO WRONG?」に記載あり。
脆弱性の解説記事
- What Do WebLogic, WebSphere, JBoss, Jenkins, OpenNMS, and Your Application Have in Common? This Vulnerability.
- commons-collectionsのInvokerTransformer脆弱性について - R42日記
- Remotely Exploitable Java Zero Day Exploits through Deserialization (InfoQ)
- 主要Javaアプリケーションサーバに影響するJavaライブラリの脆弱性を正しく理解する (TrendMicro)
- [Java] Commons Collections の脆弱性のお勉強 - Qiita
- Apache Commons Collectionsの脆弱性解説:CodeZine(コードジン)
影響を受けているソフトウェア
報告者によりCollectionsなど、影響を受けると指摘されているソフトウェアは次の通り。
対象製品 | 公式発表 | 対策 |
---|---|---|
WebLogic | Oracle Security Alert for CVE-2015-4852 Apache Commons Collections InvokerTransformer.class code execution CVE-2015-4852 影響を受けるバージョン 10.3.6.0, 12.1.1.0, 12.1.2.0, 12.1.3.0 |
回避策あり(MOS Note 2076338.1) パッチ準備中(11/11現在) |
WebSphere | Security Bulletin: Vulnerability in Apache Commons affects IBM WebSphere Application Server (CVE-2015-7450) 影響を受けるバージョン Version 8.5 and 8.5.5 Full Profile and Liberty Profile Version 8.0 Version 7.0 |
最新版へ更新する |
JBoss | Do the unserialization/deserialization exploits against commons-collections library affect Red Hat JBoss products? 影響を受けるバージョン JBoss Enterprise Application Platform 6.4.4,5.2.0,4.3.0_CP10 JBoss AS (Wildly) 6 and earlier JBoss A-MQ 6.2.0 JBoss Fuse 6.2.0 JBoss SOA Platform (SOA-P) 5.3.1 JBoss Data Grid (JDG) 6.5.0 JBoss BRMS (BRMS) 6.1.0 JBoss BPMS (BPMS) 6.1.0 JBoss Data Virtualization (JDV) 6.1.0 JBoss Fuse Service Works (FSW) 6.0.0 JBoss Enterprise Web Server (EWS) 2.1,3.0 |
最新版へ更新する(一部パッチ準備中) 危険なクラスを削除 |
Jenkins | Mitigating unauthenticated remote code execution 0-day in Jenkins CLI Jenkins Security Advisory 2015-11-11 (SECURITY-218) 影響を受けるバージョン All Jenkins main line releases up to and including 1.637 All Jenkins LTS releases up to and including 1.625.1 |
最新版へ更新する |
OpenNMS | OpenNMS RMI Exploit | Port 1099の遮断 |
Groovy | GROOVY-7504 影響を受けるバージョン 2.4.4未満 |
最新版へ更新する |
spring | SPR-13656 影響を受けるバージョン 4.1.8, 4.2.2 |
最新版へ更新する |
その他影響を受けるとされる代表的なライブラリ
検証コード・検査ツール
なお、解説記事に書かれている検証コードは次のように削除コマンドが含まれているため注意。
final Object[] remove_everything = { "rm -rf /" };
http://takahashikzn.root42.jp/entry/2015/11/10/155319
対策
確認方法
- 影響を受けるCollectionsのJarがCLASSPATHに含まれていないか確認する。ダウンロードしてファイル名を変更していなければ、commons-collections*.jarという名前が使用されている。
- 読み込んいるJarに問題のクラス「InvokerTransformer」が含まれていないかをgrepで検索する。(R42日記に検索方法は記述あり)
対応チケット・パッチ
この問題に対応するチケットはCOLLECTIONS-580として管理されている。
報道記事
マスメディア
- 2015年11月10日時点で報じている国内のメディアは確認できていない。
謝辞
このまとめは次の方からいただいた情報を元に追記しています。ありがとうございます。
- @y_kareさん
- @yamadamnさん
- @vulcainさん