首頁安全服務安全公告
正文

Apache Struts2遠程代碼執行漏洞(S2-057)安全預警與建議

發布時間:2018-08-12 14:08   瀏覽次數:412

漏洞概述


2018年8月22日,海峽黑盾矩陣安全實驗室關注到Apache官方發布了Apache Struts2 框架最新漏洞S2-057(高危,CVE編號:CVE-2018-11776),此漏洞可遠程執行任意代碼,進一步可遠程執行系統命令。


漏洞說明


在使用Struts2框架定義XML配置時,如果命名空間namespace值未設置,且上層動作配置(action configuration)未設置或使用通配符命名空間時,可能導致遠程任意代碼執行。或當使用未設置value及action值的struts url標簽,且上層動作配置未設置或使用通配符命名空間時,同樣可能導致遠程任意代碼執行。


影響范圍


Struts 2.3 - Struts 2.3.34, Struts 2.5 - Struts 2.5.16


修復建議


我們提供兩種建議方案供參考:

1) 升級框架:查看系統所使用的struts2框架版本,如有在影響范圍內,建議升級至Struts 2.3.35或Struts 2.5.17,高版本s2框架整體安全性較好,可避免可能出現新的s2漏洞。查看strut2版本號方法如下:在應用部署的同目錄下查看\WEB-INF\lib\struts2-core-x.x.x.jar文件,其中x.x.x即為struts2版本號


TIM截圖20190725145416.png

2) 如果升級框架可能會影響系統的正常運行,可采用如下方案進行緩解:為Struts2框架所有 XML配置文件中package節點添加命名空間配置,如下示例:

      <package name="access" namespace="/access"   extends="struts-default">

     <action name="Login" class="com.app.struts2.action.LoginAction">

<result name="success">/access/success.jsp </result>

      </action>

</package>

同時為使用url標簽的頁面都設置屬性值及action,示例如下

<s:url value=”http://x.x.x.x/register”action="Register"/>

如果上層動作配置沒有設置命名空間或者使用通配符命名空間,也同樣為它們進行設置。


參考相關鏈接

https://cwiki.apache.org/confluence/display/WW/S2-057?tdsourcetag=s_pctim_aiomsg


福建省海峽信息技術有限公司 版權所有  聯系: [email protected] 閩ICP備06011901號 ? 1999-2019 Fujian Strait Information Corporation. All Rights Reserved.

返回頂部

三晋棋牌大同攉龙