gpt4 book ai didi

security - ASPXAUTH Cookie 的安全标志

转载 作者:行者123 更新时间:2023-12-02 16:08:20 29 4
gpt4 key购买 nike

我们有一个面向外部的应用程序,已由外部安全公司进行了渗透测试。应用程序在ASP.NET MVC4上开发并在IIS8/Windows 2012 Server上运行。

报告的漏洞之一是 ASPXAUTH 不安全。当我检查 cookie 检查器时,有一些带有安全标志的 cookie。但 ASPXAUTH 不是其中之一。

我做了一些研究,并在 web.config 上设置了下面的这些标志

<forms loginUrl="~/Account/Login" timeout="2880"  requireSSL=""  name="AppName" />

<httpCookies httpOnlyCookies="true" requireSSL="true" />

尽管有这些设置,身份验证 cookie 并未标记为安全。我认为这些标志应该足以将应用程序 cookie 标记为安全,但还有一些其他 cookie 也未标记为安全。我不太关心它们,因为它们不包含任何敏感信息。但我想将 ASPXAUTH 标记为安全。

我的问题是,

  1. 在 web.config 上设置这些标志后,没有安全标志的 ASPXAUTH 是否存在安全问题?
  2. 如果是这样,您能否告诉我将其标记为安全的正确方法是什么。

谢谢。

最佳答案

我发现这段代码可以确保我的身份验证 cookie 的安全。我不记得这个的来源,但如果你将它添加到你的 global.asax 中,它就可以解决问题。我不知道为什么,但标签中的 requireSSL=true 不足以确保其安全。

  protected void Application_EndRequest(Object sender, EventArgs e)
{
string authCookie = FormsAuthentication.FormsCookieName;

foreach (string sCookie in Request.Cookies)
{
if (sCookie.Equals(authCookie))
{
// Set the cookie to be secure. Browsers will send the cookie
// only to pages requested with https
var httpCookie = Response.Cookies[sCookie];
if (httpCookie != null) httpCookie.Secure = true;
}
}
}

关于security - ASPXAUTH Cookie 的安全标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21132912/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com