【发布时间】:2011-09-23 14:31:02
【问题描述】:
如果我的 Ajax 请求设置了 X-Requested-With 标头,我可以跳过 CSRF 检查此标头是否存在吗?我可以确定它不能被伪造(使用用户会话)吗?
【问题讨论】:
如果我的 Ajax 请求设置了 X-Requested-With 标头,我可以跳过 CSRF 检查此标头是否存在吗?我可以确定它不能被伪造(使用用户会话)吗?
【问题讨论】:
只要您没有广泛开放的 crossdomain.xml(您可能有这个 b/c 您在您的网站上托管 flash 内容?)或者您的访问者使用旧浏览器;你应该比较安全。虽然我建议使用“crumb”-token(cookie 中的随机值和请求中的相同值)。这个 b/c flash 可能会设置 X-Requested-With,我认为旧的 IE 版本也允许你这样做(虽然不确定这个)。
“我可以跳过 CSRF 检查吗”我假设您指的是这个 crumb/token? B/c 检查 X-Requested-With 是一种检查 CSRF 的方法。
由于此标头是可选的,浏览器可能并不总是发送它,并且根据this page 他们似乎不是通过 SSL 发送的。
【讨论】:
这就是我们解决 JQuery 问题的方法 http://mylifewithjava.blogspot.com/2010/11/implicit-csrf-protection-of-ajax_22.html
【讨论】: