總機:020-87516161 傳真:020-87516161-8040
地址:廣州市天河北路898號信源大廈3206-3211室 郵編:510660
安全服務(wù) > 安全公告 > 關(guān)于Apache Struts2披露存在遠(yuǎn)程代碼執(zhí)行漏洞(S2-037)的安全公告
安全公告編號:CNTA-2016-0025
近日,國家信息安全漏洞共享平臺(CNVD)收錄了Apache Struts2 S2-037遠(yuǎn)程代碼執(zhí)行漏洞(CNVD-2016-04040,對應(yīng) CVE-2016-4438 )。遠(yuǎn)程攻擊者利用漏洞在安裝部署了REST插件的Struts 2服務(wù)器上遠(yuǎn)程執(zhí)行指令,取得服務(wù)器控制權(quán)限。由于利用代碼已經(jīng)公開,建議用戶緊急升級最新的Apache 2.3.29版本防范潛在的攻擊。
一、漏洞情況分析
Struts2是第二代基于Model-View-Controller(MVC)模型的java企業(yè)級web應(yīng)用框架,并成為當(dāng)時國內(nèi)外較為流行的容器軟件中間件。
根據(jù)CNVD技術(shù)組成員單位——杭州安恒公司提供的分析情況,服務(wù)器部署使用Rest插件之后,當(dāng)客戶端請求url符合如下格式“actionName/id/methodName”時會獲取methodName作為ActionMapping類的method屬性,但 method屬性未進(jìn)行嚴(yán)格過濾,導(dǎo)致漏洞產(chǎn)生。從已披露的利用代碼看,CNVD認(rèn)為攻擊者利用發(fā)起漏洞攻擊的原理與S2-032、S2-033漏洞基本一致,都是通過method屬性帶入到OGNL表達(dá)式中,靜態(tài)調(diào)用ognl.OgnlContext的DEFAULT_MEMBER_ACCESS屬性并覆蓋_memberAccess的方式進(jìn)行,進(jìn)而在服務(wù)器端執(zhí)行任意代碼。
該漏洞與6月初披露的S2-033漏洞相比,雖然也是安裝部署REST插件的條件下觸發(fā),但與是否啟用動態(tài)方法調(diào)用無關(guān),CNVD評估認(rèn)為該漏洞影響要大于S2-033漏洞的影響范圍,也有可能比S2-032漏洞影響范圍更大(取決于REST插件應(yīng)用比例,CNVD暫無準(zhǔn)確評估值)。
CNVD對該漏洞的綜合評級為“高危”。
二、漏洞影響范圍
漏洞影響部署使用REST插件的Struts2.3.20 - 2.3.28.1版本。
三、漏洞修復(fù)建議
目前,互聯(lián)網(wǎng)上已披露了該漏洞的利用代碼。Apache Struts官方已發(fā)布了升級程序修復(fù)該漏洞,CNVD建議用戶將程序升級至Struts 2.3.29版本。更新地址:
https://cwiki.apache.org/confluence/display/WW/Version+Notes+2.3.29
附:參考鏈接:
https://cwiki.apache.org/confluence/display/WW/S2-037
http://www.cnvd.org.cn/flaw/show/CNVD-2016-04040(s2-037漏洞)
http://www.cnvd.org.cn/flaw/show/CNVD-2016-03754)(S2-033漏洞
http://www.cnvd.org.cn/flaw/show/CNVD-2016-02506(S2-032漏洞)
http://seclab.dbappsecurity.com.cn/?p=1101(杭州安恒公司關(guān)于S2-033漏洞補丁修復(fù)無效的分析,目前Apache官方尚無直接回應(yīng))