1. Shiro高版本默認(rèn)密鑰的漏洞利用

        共 1209字,需瀏覽 3分鐘

         ·

        2021-12-12 17:19

        在Shiro反序列化漏洞修復(fù)的過(guò)程中,如果僅進(jìn)行Shiro的版本升級(jí),而沒(méi)有重新生成密鑰,那么AES加密的默認(rèn)密鑰扔硬編碼在代碼里,仍然會(huì)存在反序列化風(fēng)險(xiǎn)。


        01、漏洞案例

        本案例引用的shiro版本已是目前最新的1.8.0。嘗試訪問(wèn)系統(tǒng)進(jìn)行登錄,抓包獲取參數(shù)特征,包含xxx_rememberMe=deleteMe字段。

        注意:在Shiro1.4.2版本后,Shiro的加密模式由AES-CBC更換為 AES-GCM,Shiro高版本下的漏洞利用,就需要考慮加密模式變化的情況。另外,這里cookie傳遞的參數(shù)是自定義的,而不是常見(jiàn)的rememberMe,這也是需要注意的地方。

        02、漏洞利用

        為了減少手工構(gòu)造生成反序列化數(shù)據(jù)的繁瑣,這里,我們使用一個(gè)Shiro反序列化利用工具,python編寫(xiě),而且作者增加了AES-GCM加密方式的漏洞利用支持,可以很方便地進(jìn)行修改和參數(shù)構(gòu)建,

        Github項(xiàng)目地址:

        https://github.com/Ares-X/shiro-exploit.git

        首先,我們需要修改python腳本參數(shù),將rememberMe 替換為 xxx_remeberme,使參數(shù)能夠正常傳遞。

        利用腳本來(lái)爆破Shiro key:

        python shiro-exploit.py check -u http://10.xxx.xxx.72/shiro-cas.shtml

        成功獲取到了Shiro key。

        發(fā)送回顯Payload,獲取命令執(zhí)行結(jié)果。

        python shiro-exploit.py echo -g CommonsBeanutils2  -v 2 -k 3AvVhmFLUs0KTA3Kprsdag== -c whoami -u http://10.xxx.xxx.72/shiro-cas.shtml


        修改python腳本設(shè)置代理,在requests使用代理proxies,增加proxies={'http': 'http://' + '127.0.0.1:8888'}。

        這樣就可以將流量引入BurpSuite,抓取HTTP數(shù)據(jù)包,手動(dòng)利用查看回顯。

        以上便是Shiro高版本下默認(rèn)密鑰的漏洞利用過(guò)程,So,修復(fù)Shiro默認(rèn)密鑰漏洞,除了升級(jí)shiro至最新版本,一定要注意生成新的密鑰替換。


        記錄個(gè)有意思的事情,之前有個(gè)內(nèi)部系統(tǒng)確認(rèn)過(guò)Shiro版本和密鑰都有更換,但后來(lái)還是被檢測(cè)到存在漏洞,一度有點(diǎn)懷疑人生。找開(kāi)發(fā)一起排查了一下,原來(lái)有兩臺(tái)服務(wù)器負(fù)載,其中一臺(tái)是修復(fù)了,還有一臺(tái)舊服務(wù)器被遺忘了。我復(fù)測(cè)的時(shí)候是修復(fù)的狀態(tài),別人一掃描,漏洞還存在,直接淚崩。

        瀏覽 87
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
          
          

            1. 欧美做爰BBB性BBBBB8 | 91在线黄色视频 | 久久久成人免费 | 91视频青娱乐 | 香蕉网伊人 |