【发布时间】:2017-08-16 15:07:54
【问题描述】:
考虑一个仅包含 HTML 和 JS 前端的 Web 应用程序,并与 Web API 进行通信。
我正在努力保护我的应用程序免受 CSRF 攻击,为此我参考了this article。
使用本文中的方法,我能够生成 Anti CSRF 令牌并将其传递给客户端。但是,这取决于在进行常规 CRUD 操作调用之前必须发生的第一个 AJAX 调用。
使用这种方法,我需要澄清一些事情以及一些替代方案(如果有的话)。考虑一个客户端访问这个 Web 应用程序(由基于 AJAX 的 Anti CSRF 令牌保护),并保持他的会话打开,他访问一个恶意网站,该网站包含进行相同 AJAX 调用以获取 CSRF 令牌的页面(假设攻击者知道这个过程),我想他可以使用标头进行意外调用,从而导致攻击。
那么我怎样才能保护我的应用程序免受这些影响呢?
请提供有关此的更多详细信息,或者如果它具有误导性,请通过提供正确的详细信息来帮助我,以便我可以更好地解决它。
【问题讨论】:
标签: ajax asp.net-web-api csrf csrf-protection