我正在使用backbone和node.js创建一个网站,并且不认为默认情况下有任何针对CSRF的保护。在使用带有node.js的骨干网时,是否存在针对CSRF进行投影的标准方法? 感谢
答案 0 :(得分:4)
您可以简单地确保请求的X-Requested-By
标头的值为XMLHTTPRequest
。 AJAX请求具有跨域限制,因此如果该标头存在,则不是例如恶意网站上隐藏的表格。
答案 1 :(得分:2)
我不知道node.js + backbone的具体内容,但您可以使用http://www.senchalabs.org/connect/middleware-csrf.html(假设您正在使用express或者connect-compatible)。您需要在html中的某处输出令牌,就像元标记一样。然后,您可以修改主干同步方法以提取该标记并将其传递给表示通过标题,查询或表单。
答案 2 :(得分:1)
如果Allow-Origin
标头设置为允许的内容(例如,Allow-Origin:*
)X-Requested-By
,则不会阻止请求伪造。在另一台主机上运行的任何javascript都可以制作仍然启用请求伪造的请求。