JBoss5.x6.x 反序列化漏洞
2). 環(huán)境搭建
wget http://download.jboss.org/jbossas/6.1/jboss-as-distribution-6.1.0.Final.zip
第二步:修改配置文件,使網(wǎng)絡(luò)中的主機(jī)都能訪問 JBOSS
vim ~/jboss-6.1.0.Final/server/default/deploy/jbossweb.sar/server.xml
第三步:啟動(dòng)JBOSS
./jboss-6.1.0.Final/bin/run.sh
第四步:下載EXP
git clone https://github.com/yunxu1/jboss-_CVE-2017-12149
有腳本EXP利用方式,同時(shí)也有圖形化利用方式
3). 信息收集
第一步:利用nmap對目標(biāo)主機(jī)進(jìn)行常用端口掃描
nmap -p 1-65535 -A 192.168.1.107
第二步:訪問目標(biāo)主機(jī)的8080端口,看看能否正常訪問
4). 漏洞利用
利用剛才下載好的 EXP 進(jìn)行漏洞利用,打開圖形化工具 jboss 反序列化_CVE-2017-12149.jar
github出了一個(gè)檢測jboss的項(xiàng)目:https://github.com/joaomatosf/jexboss
這里搭建環(huán)境驗(yàn)證:
漏洞ip:192.168.127.128
把項(xiàng)目直接clone到本地利用即可
上圖標(biāo)紅就說明有問題
可以看到shell已經(jīng)反彈成功。
這個(gè)項(xiàng)目還能實(shí)現(xiàn)批量掃描,總體很不錯(cuò)!
理解Java 反序列化漏洞
推薦學(xué)習(xí)Paper:Java反序列化漏洞從入門到深入:https://xz.aliyun.com/t/2041。內(nèi)容較多,先了解簡單Java語法結(jié)構(gòu)和面向?qū)ο缶幊袒A(chǔ),再學(xué)習(xí)序列化、反序列化的基本概念和漏洞成因。
(1)序列化:把 Java 對象轉(zhuǎn)換為字節(jié)序列的過程便于保存在內(nèi)存、文件、數(shù)據(jù)庫中。ObjectOutputStream類的writeObject()方法可以實(shí)現(xiàn)序列化。
(2)反序列化:把字節(jié)序列恢復(fù)為Java對象的過程。ObjectInputStream類的readObject()方法用于反序列化。
(3)漏洞成因:暴露反序列化API或傳入點(diǎn) ,用戶可以操作傳入數(shù)據(jù),并且反序列化的readObject()方法未對用戶傳入數(shù)據(jù)進(jìn)行有效的安全檢測,攻擊者可以精心構(gòu)造反序列化對象并執(zhí)行惡意代碼。
總結(jié)
以上是生活随笔為你收集整理的JBoss5.x6.x 反序列化漏洞的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。