读到这个问题, Different users get the same cookie - value in .ASPXANONYMOUS

我开始思考,寻找解决方案,if it is possible for some one to really steal the cookie with some way, and then place it on his browser and login lets say as administrator.

你知道表单认证如何确保即使cookie被盗,黑客也无法在实际登录中使用它吗?

还有其他的自动防御机制吗?

推荐答案

有没有可能偷一块cookies 是否以管理员身份进行身份验证?

是的,这是可能的,如果表单验证cookie未加密,有人可能会攻击他们的cookie以赋予他们提升的权限,或者如果不需要SSL,则复制其他人的cookie.但是,您可以采取以下步骤来缓解这些风险:

在系统上.web/authentication/forms元素:

  1. requireSSL=true.这要求cookie只能通过SSL传输
  2. slidengexpiration=false.如果为true,则可以重新激活过期票据.
  3. cookieless=错误.不要在试图加强安全性的环境中使用无Cookie会话.
  4. enableCrossAppRedirects=false.如果为False,则不允许跨应用程序处理Cookie.
  5. 保护=全部.使用机器中指定的机器密钥对表单Auth cookie进行加密和散列.配置或网络.配置.此功能将阻止有人入侵自己的cookie,因为此设置告诉系统生成cookie的签名,并在每个身份验证请求中,将签名与传递的cookie进行比较.

如果您愿意,可以在会话中添加一些身份验证信息,例如用户用户名的哈希(绝不是纯文本中的用户名或密码),从而增加一点保护.这将要求攻击者同时窃取会话cookie和表单身份验证cookie.

Asp.net相关问答推荐

调用context.Users和context.Set User有什么区别?

无法翻译 LINQ

如何在 ASP.NET 全球化中配置不变文化?

在每页级别增加 ASP.Net 超时

/应用程序中的服务器错误. ASP.NET

无法读取配置部分system.servicemodel,因为它缺少部分声明

ASP.NET 在更新面板更新时显示正在加载...消息

使用 JSON.NET 解析 json 字符串

学习什么 - Ruby on Rails 或 ASP .NET MVC...鉴于熟悉 ASP .NET

温莎城堡有什么缺点吗?

如何从 JS 访问 ViewBag

在 ASP.NET 4.5 WebForms 中通过 bundle.config 与 BundleConfig.cs Bundle 资源

在 ASP.NET 中实现 404 的最佳方法

根据 DropDownList 的值动态启用或禁用RequiredFieldValidator

在 Visual Studio 2010 Professional 中找不到请求的 .Net Framework 数据提供程序

global.asax 中的 Application_Error 未捕获 WebAPI 中的错误

ASP.NET MVC 5 Web.config:FormsAuthenticationModule或FormsAuthentication

为什么 C# 对于 CSC 文件会遇到此错误?

禁用文本框的模型绑定

如何在asp.net的GridView中按列名而不是按索引获取单元格值