在 ASP.NET MVC 1.0 中,有一个处理跨站请求伪造安全问题的新特性:
<%= Html.AntiForgeryToken() %>
[ValidateAntiForgeryToken]
public ViewResult SubmitUpdate()
{
// ... etc
}
我发现每次呈现新表单时,以 html 表单生成的令牌都会不断变化。
我想知道这些令牌是如何生成的?并且当使用某些软件扫描这个站点时,它会报告另一个安全问题:会话已修复。为什么?既然token一直在变,怎么会出现这个问题呢?
还有一个功能,就是 salt 的antiForgeryToken
,但是我真的知道这个是干什么用的,即使我们不使用 salt 来生成 token,token 也会一直在变化,为什么会有这样的功能?