2011-06-06 66 views
7

我在寻找可能的解决方案来保护我的GWT应用程序免受XSRF攻击。GWT&XSRF保护

如果我正确理解GWT's solution - 它提供了一个Servlet,用于在客户端(在调用RPC端点时)生成令牌并在服务器端验证(当呼叫遇到您的服务时)。

此解决方案是否仅适用于RPC调用?当然,我们需要它来覆盖所有用户对服务器生成的请求?

任何其他推荐的XSRF解决方案(我也在看OWASP's CSRFGuard)?

+0

除了GWT RPC之外,您还使用了哪些类型的用户生成请求? – 2011-06-12 03:17:52

+0

我们有一些servlet,Jack Rabbit存储库等,用户可以为其生成请求。 – 2011-06-14 18:22:06

回答

5

我修改了GWT示例应用程序以防XSRF。该解决方案大致基于GWT开发人员文档中提供的解决方案。 http://code.google.com/p/xsrf-safe/

+0

我看着你的解决方案,我在流浪,你在哪里创建和处理客户端的cookie?因为我不使用谷歌应用程序,我怎样才能使用cookie JSESSIONID,它没有价值,你在哪里设置了cookie的价值,以及如何处理cookie ......你能解释一下这个,或者指向我的链接? tnx – Darwly 2012-06-20 13:21:38

+0

“JSESSIONID cookie是在会话创建时创建/发送的,当您的代码第一次调用request.getSession()或request.getSession(true)时,将创建Session。” -http://stackoverflow.com/questions/595872/under-what-c​​onditions-is-a-jsessionid-created – 2012-06-20 14:09:51

+0

在示例中,request.getSession()在Xsrf_Safe.jsp中调用http://code.google.com /p/xsrf-safe/source/browse/trunk/war/Xsrf_Safe.jsp – 2012-06-20 14:11:55