首页安全服务安全公告
正文

Apache Struts2远程代码执行漏洞(S2-057)安全预警与建议

发布时间:2018-08-12 14:08   浏览次数:50

漏洞概述


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


2019手机棋牌游戏平台排名_棋牌游戏大全平台排名  联系: hxzhb@heidun.net 闽ICP备06011901号 (c) 1999-2019 Fujian Strait Information Corporation. All Rights Reserved.

返回顶部