安全研究

安全漏洞
XWork AltSyntax功能OGNL命令注入漏洞

发布日期:2007-09-04
更新日期:2007-09-05

受影响系统:
OpenSymphony XWork 2.0.3
OpenSymphony XWork 2.0.2
OpenSymphony XWork 2.0.1
不受影响系统:
OpenSymphony XWork 2.0.4
描述:
BUGTRAQ  ID: 25524
CVE(CAN) ID: CVE-2007-4556

XWork是一个命令模式框架,用于支持Struts 2及其他应用。

如果启用了altSyntax功能的话,XWork就允许向文本字符串中注入OGNL表达式并递归的处理。远程攻击者可以通过HTML文本字段提交字符串,并在其中包含OGNL表达式,如果表单验证失败的话就会执行该表达式。例如,如果以下表单要求phoneNumber字段为非空的话:

<s:form action="editUser">
  <s:textfield name="name" />
  <s:textfield name="phoneNumber" />
</s:form>

用户可以将phoneNumber字段保持为空来触发验证错误,然后在name字段填充%{1+1},当向用户重新显示表单时name字段的值就会为2。

<*来源:Andrea Vettori
  
  链接:http://secunia.com/advisories/26681/
        http://secunia.com/advisories/26693/
        http://struts.apache.org/2.x/docs/s2-001.html
        https://issues.apache.org/struts/si/jira.issueviews:issue-html/WW-2030/WW-2030.html
        http://secunia.com/advisories/26694/
*>

建议:
厂商补丁:

OpenSymphony
------------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

https://xwork.dev.java.net/files/documents/709/62331/xwork-2.0.4-all.zip

浏览次数:3200
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障