为了防止CSRF4.0MVC web应用程序中的跨站伪造攻击,我们使用@Html.AntiForgeryToken()在每个页面上生成.NET令牌。令牌验证是使用相应控制器和操作中的框架提供的[ValidateAntiForgeryToken]应用程序接口在每个请求处理上完成的。
当跟踪来自客户端浏览器的请求并使用此跟踪数据从代理工具再次发送时,服务器应用程序将接受该请求,并且不会显示验证错误。
跟踪的数据将包含生成的令牌值(__RequestVerificationToken)和请求正文。
该应用程序启用了SSL(自签名),并托管在HTTPS中。
工具可以从请求正文中复制经过验证的令牌,并且他可以使用这个旧令牌发送新请求。即验证的令牌仍然可用。任何使已生成的表单令牌无效或删除的方法。
我们想知道,是否有任何其他安全措施可以考虑,以防止跨站点攻击。
发布于 2013-12-24 23:53:54
您所描述的攻击是中间人/重放攻击,而不是CSRF攻击。MVC的反CSRF API确实支持重放保护,但是设置它并不是一件容易的事情,而且这听起来并不一定能解决您的担忧。例如,如果我可以MITM您的应用程序,那么我就可以完全访问您的身份验证cookie。我可以简单地以您的身份登录,而不必担心我的CSRF令牌是否有效,因为我可以随时要求服务器为我生成新的有效令牌。
您尝试解决的确切场景是什么?
https://stackoverflow.com/questions/20673704
复制相似问题