4月26日,互聯(lián)網(wǎng)上披露了安全威脅程度為高的Apache Struts2 S2-032遠(yuǎn)程代碼執(zhí)行漏洞。各大漏洞報告平臺短時間內(nèi)收到大量關(guān)于此漏洞的報告,其中銀行占很大比例。預(yù)計接下來幾天會迎來該漏洞利用的爆發(fā)峰,由此造成的潛在數(shù)據(jù)泄漏量難以估計。該漏洞除了會影響銀行與互聯(lián)網(wǎng)企業(yè)以外,還可能影響政府、證券、保險等行業(yè),相關(guān)網(wǎng)站須提前做好安全應(yīng)急與防范措施。
圖1 某漏洞報告平臺上部分存在該漏洞的網(wǎng)站
該漏洞官方編號S2-032,CVE編號CVE-2016-3081,CNVD編號CNVD-2016-02506。特定版本的Apache Struts2服務(wù)在開啟動態(tài)方法調(diào)用(DMI)的情況下,可以被遠(yuǎn)程執(zhí)行任意命令,即存在該漏洞。利用該漏洞,黑客可以在存在該漏洞的網(wǎng)站服務(wù)器上執(zhí)行任意命令,部署木馬,竊取網(wǎng)站數(shù)據(jù),甚至以受害網(wǎng)站服務(wù)器為跳板,對企業(yè)內(nèi)網(wǎng)進行滲透和破壞。
Apache Struts2是第二代基于Model-View-Controller (MVC)模型的java企業(yè)級web應(yīng)用框架,是目前國內(nèi)外較為流行的容器軟件中間件之一。Struts2的核心jar包“struts2-core”中,存在一個名為“default.properties”的默認(rèn)配置文件用于配置全局信息,當(dāng)配置信息為“struts.enable.DynamicMethodInvocation = true”時,即開啟動態(tài)方法調(diào)用。在目前的安全策略中,盡管Struts2框架本身對部分動態(tài)調(diào)用方法進行了特殊字符傳遞的限制,但攻擊者仍能通過OGNL表達式靜態(tài)調(diào)用獲取ognl.OgnlContext的DEFAULT_MEMBER_ACCESS屬性,進而覆蓋_memberAccess參數(shù)繞過訪問控制,最終在受控服務(wù)器端執(zhí)行任意代碼。
針對S2-032漏洞,我所信息安全中心給出如下兩種解決方法:
1、禁用動態(tài)方法調(diào)用
修改Struts2的配置文件“default.properties”,將“struts.enable.DynamicMethodInvocation”的值設(shè)置為false,例如:
< constant name="struts.enable.DynamicMethodInvocation" value="false" / >;
2、升級軟件版本
該漏洞影響的軟件版本為2.3.20-2.3.28(2.3.20.2、2.3.24.2兩個版本除外),若條件允許,可升級Struts版本至2.3.20.2、2.3.24.2或者2.3.28.1,上述三個版本均不存在該漏洞。
升級地址:https://struts.apache.org/download.cgi#struts23281
相關(guān)鏈接:http://www.cnvd.org.cn/flaw/show/CNVD-2016-02506
Copyright © 2015. 中國賽寶實驗室 All rights reserved. 廣州市增城區(qū)朱村街朱村大道西78號
業(yè)務(wù)聯(lián)系:020-87236881
粵公網(wǎng)安備 44011802000613號
粵ICP備17163142號-12