安全通告 | S2-053远程代码执行漏洞

2018-04-10 11:32:44 浏览数 (1)

安全通告

S2-053远程代码执行漏洞

1. 漏洞描述

(S2-053/CVE-2017-12611)

Struts2 REST插件存在远程代码执行漏洞,开发人员在使用表达式文本或Freemarker标签强制表达式和使用要求的值可能会导致远程代码执行攻击。

2. 危害等级

中危

3. 影响范围

Struts 2.0.1 - Struts 2.3.33

Struts 2.5 - Struts 2.5.10

4. 利用方式

远程利用

5. 示例

在这两种情况下,值属性都使用可写属性,都会受到Freemarker的表达式的影响:

<@s.hidden name="redirectUri" value=redirectUri />

<@s.hidden name="redirectUri" value="${redirectUri}" />

6. 修复方案

1. 开发人员应避免在Freemarker的结构代码中使用可写的属性,或者使用只读属性来初始化value属性(仅限getter属性)。

2. 升级到Apache Struts 2.5.13或2.3.34版本;官方表示,虽然新版本限制了Freemarker的配置属性,但是开发人员还是应该避免使用有问题的结构属性。

官方下载地址:

http://struts.apache.org/download.cgi#struts-ga

3. 虽然S2-053的漏洞利用代码暂未公开,但最近的S2-052的漏洞利用代码已经公开,强烈建议更新到最新版本或使用WAF等措施缓解威胁。

- END -

0 人点赞