Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/270.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.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
C# Html Antiforgerytoken cookie和输入值不同_C#_Security_Csrf - Fatal编程技术网

C# Html Antiforgerytoken cookie和输入值不同

C# Html Antiforgerytoken cookie和输入值不同,c#,security,csrf,C#,Security,Csrf,我在学习 CSRF预防技术 有人提到 防伪代币 这是预防它的方法之一。在ASP.NET MVC应用程序中,我们可以使用Html帮助程序添加令牌 当我使用fiddler时,我注意到隐藏表单输入标记中的令牌值和同名Cookie中的值是不同的。应该是这样吗 在这种情况下,ASP.NET框架如何注意发现请求不是伪造的 希望我的问题清楚。有不同的数据集序列化到cookie(“salt”和token)和HTML标记(salt、token、创建时间、用户名)。它们虽不同,但仍具有可比性 一些更详细的解释: M

我在学习

CSRF预防技术

有人提到

防伪代币

这是预防它的方法之一。在ASP.NET MVC应用程序中,我们可以使用Html帮助程序添加令牌

当我使用fiddler时,我注意到隐藏表单输入标记中的令牌值和同名Cookie中的值是不同的。应该是这样吗

在这种情况下,ASP.NET框架如何注意发现请求不是伪造的


希望我的问题清楚。

有不同的数据集序列化到cookie(“salt”和token)和HTML标记(salt、token、创建时间、用户名)。它们虽不同,但仍具有可比性

一些更详细的解释:


MVC的cookie具有内部结构,因此它们的序列化版本看起来不同。内部的实际安全令牌应该相同。序列化程序存储不同的信息,具体取决于存在的信息(用户标识名等)。还有一个版本字节,一个是否是会话cookie的指示器,等等。

“[cookies和nonce]…是防止它的方法之一。”-这不完全正确。坏家伙总是有可能得到暂时的或饼干。OWASP在他们的CSRF页面的下面介绍了它。彻底补救的唯一方法是挑战用户。也就是说,让用户在高值事务上重新验证。OWASP只说不要使用“秘密Cookie”。在cookie机制之外提交的令牌值仍然是推荐值。的可能重复项