java – Web应用程序中的CSRF保护

前端之家收集整理的这篇文章主要介绍了java – Web应用程序中的CSRF保护前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我的应用程序具有apache模块提供的CSRF保护.我的应用程序包含几个页面,允许上传一些文件,如下所示:

当我们将apache版本从httpd-2.2.3更新为httpd-2.2.15时,所有工作都运行正常.

我已经google了一段时间,发现问题可能与我的表单中的multipart / form-data参数有关.在这种情况下,表单发送为不安全.另外我发现spring可以通过Spring doc http://docs.spring.io/spring-security/site/docs/3.2.0.CI-SNAPSHOT/reference/html/csrf.html#csrf-multipartfilter中的MultipartFilter处理上面的内容

我是CSRF新手.很高兴知道可以使用带有apache配置的spring CSRF保护来处理这种情况.

此外,我找到了解决方法,我可以为所需的URL禁用CSRF,例如

RewriteRule /url/mycontroller.controller – [E=CSRF_IGNORE:yes]

但我不确定哪一个是正确的.

最佳答案
以下是我的建议:

如果不需要,请删除enctype,因为某些CSRF库(包括CSRF Guard)不支持multipart / form-data.

如果使用隐藏属性设置CSRF令牌,请尝试在action属性中附加令牌.
这是这个链接https://code.google.com/p/csrf-filter/

如果您仍然遇到同样的问题,则可能必须从CSRF检查中排除该URL.

猜你在找的Spring相关文章