此链接 ( http://software-security.sans.org/developer-how-to/developer-guide-csrf ) 告诉我,从 Visual Studio 2012 开始,Microsoft 添加了内置的跨站点请求伪造 (CSRF) 保护到新的 Web 表单应用程序项目。将新的 ASP .NET Web 窗体应用程序添加到您的解决方案并查看 Site.Master 代码隐藏页面。此解决方案将对从 Site.Master 页面继承的所有内容页面应用 CSRF 保护。
Visual Studio 2012 自动生成的代码会生成一个随机 GUID,然后将 GUID 存储到一个 HttpCookie 中,然后由不同的网页使用。在每个页面上,此 GUID 都分配给 Page.ViewStateUserKey 以便 ViewStateUserKey 可以保护 CSRF 攻击。条件是应用程序必须使用 SSL。
为什么cookie不需要加密?我知道该应用程序需要有 SSL。但是在 cookie 中存储纯文本的 GUID 安全性不好,是吗?