Shiro-550反序列化漏洞复现
0x01 漏洞簡介
Apache Shiro是一款開源安全框架,提供身份驗證、授權(quán)、密碼學(xué)和會話管理。Shiro框架直觀、易用,同時也能提供健壯的安全性。
Apache Shiro 1.2.4及以前版本中,加密的用戶信息序列化后存儲在名為remember-me的Cookie中。攻擊者可以使用Shiro的默認密鑰偽造用戶Cookie,觸發(fā)Java反序列化漏洞,進而在目標(biāo)機器上執(zhí)行任意命令。
- 影響版本 Shiro <= 1.2.4
0x02 環(huán)境準(zhǔn)備
- Ubuntu(192.168.126.130) 搭建漏洞環(huán)境
- Kali(192.168.126.128) 接收反彈Shell
- Windows(192.168.129) 攻擊主機
使用 vulhub 可以快速搭建漏洞環(huán)境。
復(fù)制成功bashcd /vulhub/shiro/CVE-2016-4437 docker-compose up -d0x03 漏洞檢測
1. 驗證Shiro框架
首先,使用BurpSuite進行抓包,在請求包中的cookie字段中添加rememberMe=123;,看響應(yīng)包header中是否返回rememberMe=deleteMe值,若有,則證明該系統(tǒng)使用了Shiro框架。
2. Burp Shiro 漏洞檢測插件
- BurpShiroPassiveScan 點擊下載 提取碼:j43f
在BurpSuite的擴展(Extend)中安裝并啟動Shiro檢測插件
當(dāng)BurpSuite抓取到Shiro的數(shù)據(jù)包時會自動進行檢測Key,當(dāng)發(fā)現(xiàn)存在Shiro默認key時會有相應(yīng)的告警
3. Shiro 漏洞檢測工具
3.1 工具一:ShiroExploit By 飛鴻
- ShiroExploit 點擊下載
使用工具檢測 Shiro-550 漏洞
選擇漏洞檢測方式
注意在使用回顯進行漏洞檢測時,會在目標(biāo)網(wǎng)站上自動生成一個文件其中記錄了執(zhí)行命令的結(jié)果,所以不建議在正式環(huán)境測試中使用這種檢測方式。
檢測到目標(biāo)存在Shiro反序列化漏洞
3.2 工具二:shiro_attack By j1anFen
- shiro_attack 點擊下載
使用shiro_attack進行爆破Shiro密鑰檢測漏洞,當(dāng)目標(biāo)系統(tǒng)存在漏洞時,檢測結(jié)果如下圖所示:
0x04 漏洞利用
1. 命令執(zhí)行
- 演示工具:shiro_attack 點擊下載
使用shiro_attack工具可以直接執(zhí)行命令并回顯結(jié)果
2. 反彈Shell
- 演示工具:ShiroExploit 點擊下載
首先,在kali上開啟nc監(jiān)聽本地1111端口,用來接收反彈的Shell
bashnc -l -p 1111然后用ShiroExploit工具的反彈Shell給Kali(192.168.126.128)的1111端口。
上述工具利用成功后,在Kali上成功接收到了反彈的Shell
0x05 修復(fù)方案
- 升級Shiro至新版本;
- 更改默認密鑰;
參考文章
- https://www.cnblogs.com/Cl0ud/p/13412341.html
- https://github.com/feihong-cs/ShiroExploit/blob/master/README.md
- https://github.com/j1anFen/shiro_attack/blob/master/README.md
總結(jié)
以上是生活随笔為你收集整理的Shiro-550反序列化漏洞复现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Fofa搜索技巧
- 下一篇: IIS-ShortName-Scanne