【发布时间】:2011-11-07 10:43:38
【问题描述】:
这是一个理论问题。
如果他/她知道我的帖子操作(URL、参数...)的所有信息,可以加载我的一个网址,解析出防伪令牌值,并通过 ajax 调用前面提到的帖子并获得成功?
或者,这些令牌是否受到某种保护?我真的不知道,因为我才刚刚开始 MVC,我想确保我的安全。
【问题讨论】:
标签: asp.net-mvc antiforgerytoken
这是一个理论问题。
如果他/她知道我的帖子操作(URL、参数...)的所有信息,可以加载我的一个网址,解析出防伪令牌值,并通过 ajax 调用前面提到的帖子并获得成功?
或者,这些令牌是否受到某种保护?我真的不知道,因为我才刚刚开始 MVC,我想确保我的安全。
【问题讨论】:
标签: asp.net-mvc antiforgerytoken
令牌用于缓解CSRF attacks,因此如果攻击者能够获取特定 URL 的令牌,将其放入网页并让您在指定的时间间隔内专门访问该网页,那么他们理论上可以对您进行成功的 CSRF 攻击。这涉及到很多小概率,这将是一种相对低效的攻击,因为在简单的情况下它只有一个目标。
如果我没记错的话(目前无法检查),令牌包含特定于一个用户的加密数据、有效提交窗口的日期时间和可选的静态盐字符串。该令牌值被放入表单中的隐藏输入中,也放入 cookie 中。提交表单时,每个值都被解密并比较各个数据的值。如果它们相同,则认为请求来自已知来源。
在我看来,框架实现当然是一个非常好的实现,并且对于大多数应用程序来说都很好。
【讨论】: