Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 如何利用反伪造技术防止.NET4.0MVCWeb应用中的跨站点伪造攻击(重放攻击)_Asp.net Mvc_Csrf_Replay - Fatal编程技术网

Asp.net mvc 如何利用反伪造技术防止.NET4.0MVCWeb应用中的跨站点伪造攻击(重放攻击)

Asp.net mvc 如何利用反伪造技术防止.NET4.0MVCWeb应用中的跨站点伪造攻击(重放攻击),asp.net-mvc,csrf,replay,Asp.net Mvc,Csrf,Replay,为了防止.NET 4.0 MVC web应用程序中的跨站点伪造攻击,我们使用@Html.AntiForgeryToken()为每页生成了CSRF令牌。令牌验证使用框架在各自的控制器和操作中提供的[ValidateAntiForgeryToken]api对每个请求处理进行 当来自客户端浏览器的请求被跟踪并使用此跟踪数据从代理工具再次发送时,服务器应用程序将接受该请求,并且不会显示任何验证错误 跟踪的数据将包含生成的令牌值(\uu RequestVerificationToken)和请求正文 该应用

为了防止.NET 4.0 MVC web应用程序中的跨站点伪造攻击,我们使用
@Html.AntiForgeryToken()
为每页生成了CSRF令牌。令牌验证使用框架在各自的控制器和操作中提供的
[ValidateAntiForgeryToken]
api对每个请求处理进行

当来自客户端浏览器的请求被跟踪并使用此跟踪数据从代理工具再次发送时,服务器应用程序将接受该请求,并且不会显示任何验证错误

跟踪的数据将包含生成的令牌值(
\uu RequestVerificationToken
)和请求正文

该应用程序启用SSL(自签名)并以HTTPS托管

工具可以从请求主体复制经过验证的令牌,并且他可以使用这个旧令牌发送新请求。ie验证的令牌仍然可用。任何使已生成的表单令牌无效或移除的方法


我们想知道,是否有其他安全措施可以防止跨站点攻击。

您描述的攻击是中间人/重播攻击,而不是CSRF攻击。MVC的反CSRF API确实支持重播保护,但设置它并不是一件小事,而且听起来也不一定能解决您的问题。例如,如果我可以MITM您的应用程序,那么我就可以完全访问您的身份验证cookie。我只需以您的身份登录,就不必担心我的CSRF令牌是否有效,因为我可以随时要求服务器为我生成新的有效令牌

你想解决的具体情况是什么