2010-10-22 110 views
2


我目前有一个webapp,包含~100个唯一的URL +〜75页。该应用程序使用Spring进行安全性并使用Tomcat进行托管。我的问题是我如何防止发生下列:
http://localhost/myApp/myPage;rollback;Spring + Tomcat URL白名单,以防止命令注入

如果不清楚,我试图阻止从处理事情过去myPage这将白名单中找到我的应用程序。如果这不是解决这个问题的正确方法,那是什么?

EDIT

为了完整性的缘故。我正在使用Spring MVC。应用程序将查询字符串传递回我的应用程序,处理sql命令(当它通过DAO时)会发生什么。我们已经通过对返回的信息进行编码来解决这个问题,以便尽可能缓解这种情况。

+0

为什么你在URL中使用分号而不是标准参数? – Seth 2010-10-22 18:05:27

+0

让我们从我的URL最初看起来如下的想法看待'http:// localhost/myApp/myPage'然后有人将它改变为以下'http:// localhost/myApp/myPage;回滚;' – Woot4Moo 2010-10-22 18:08:33

+0

@ Woot4Moo我认为这是您的应用程序的设计问题。 – rook 2010-10-22 18:14:42

回答

0

我们已经决定,最好的行动方式是编码通过查询字符串处理的所有数据。为什么这个以前没有实施是超出我的。

2

您可以在spring安全筛选器链中添加custom filter以查找分号并在请求到达servlet代码前过滤掉请求。

+0

我不一定知道这是否解决了这个问题,确定我过滤掉了分号,但我只能确定有更多方法可以通过我的服务器发送信息 – Woot4Moo 2010-10-22 18:30:11