Struts 2安全漏洞问题

时间:2014-05-06 16:07:37

标签: ajax security struts2

我们有使用Struts 2.0和2.1的项目。

我们正在使用Tomcat进行Web托管,这两个项目在远程服务器上运行良好。最近,我们收到了来自虚拟主机提供商的警告消息,如:

  

此通知告诉您,最近发现了许多与Struts和Struts2框架以及使用OGNL类的框架相关的漏洞。

     

由于您的应用程序使用的是Struts或Struts2框架,我们强烈建议您将其紧急更新到最新版本:Struts v2.3.16.1

经过研究,我们发现有一致的升级: http://struts.apache.org/announce.html

因此,我们尝试将Struts2升级到2.3.16.3(目前最新版本)。但是,我们发现升级Struts2并不是一项微不足道的任务,因为一切都行不通,包括AJAX标签,AJX表单提交,自动完成等等。从这个意义上讲,Struts 2并不是为可扩展性而设计的。

一个例子是,每当我们提交我们的AJAX表单时,结果将在新页面中,而不是在sx:submit或sj:submit标记中定义的目标字段中。我们不想仅仅因为升级而重写所有代码。

我们想知道我们是否不将Struts2升级到最新版本,我们的Web应用程序将面临哪些漏洞。任何人都可以根据我们的情况向我们提供更多细节或任何解决方案的提示吗?非常感谢。

2 个答案:

答案 0 :(得分:1)

您可能正在寻找Security Bulletins。每个文档都描述了解决问题的摘要,问题和解决方案。在每个文档的末尾,您可以找到可用的修补程序。

答案 1 :(得分:0)

  

一个例子是每当我们提交我们的ajax表单时,结果都会   在新页面而不是在。中定义的目标字段中   sx:submit或sj:submit tag。

看来你正在使用struts2和struts 2 jquery插件,所以尝试更新到struts 2 jquery 3.7.0。

我建议接受一些reworks和升级,因为一些安全问题很严重。

有一些关键部分已经发生变化,可能需要在acceptableParameterName等升级过程中加以考虑。还要检查param拦截器堆栈和排除参数列表。