为经典Asp会话Cookie设置HTTPONLY

E.S*_*fii 29 httponly asp-classic session-cookies

有谁知道如何在经典ASP会话cookie上设置HTTPONLY?

这是在漏洞扫描中标记的最后一件事,需要尽快修复,所以任何帮助都表示赞赏.

~~~关于我的问题的更多信息~~~

有人可以帮我这个吗?

我需要知道如何在默认情况下从ASP和IIS创建的ASPSESSION cookie上设置HTTPONLY.

这是服务器为所有asp页面自动创建的cookie.

如果需要,我可以在网站上的所有cookie上设置HTTPONLY.

任何有关如何做到这一点的帮助都将受到大力赞赏.

谢谢

谢谢艾略特

小智 11

Microsoft包含一个使用ISAPI筛选器到所有出站cookie的示例:http://msdn.microsoft.com/en-us/library/ms972826

或URL重写可以使用http://forums.iis.net/p/1168473/1946312.aspx

<rewrite>
        <outboundRules>
            <rule name="Add HttpOnly" preCondition="No HttpOnly">
                <match serverVariable="RESPONSE_Set_Cookie" pattern=".*" negate="false" />
                <action type="Rewrite" value="{R:0}; HttpOnly" />
                <conditions>
                </conditions>
            </rule>
            <preConditions>
                <preCondition name="No HttpOnly">
                    <add input="{RESPONSE_Set_Cookie}" pattern="." />
                    <add input="{RESPONSE_Set_Cookie}" pattern="; HttpOnly" negate="true" />
                </preCondition>
            </preConditions>
        </outboundRules>
    </rewrite>
Run Code Online (Sandbox Code Playgroud)

  • 虽然这有效 - 我必须建议,如果任何经典ASP页面的Response.Buffer = false,页面将是纯垃圾. (8认同)

Jer*_*own 7

如果您有 IIS7 +,则需要确保安装了 URL 重写模块。您可以使用 Web 平台安装程序来安装它。Web 平台安装程序可以在您网站的功能视图中找到。您需要以管理员身份运行 IIS 管理器。

以管理员身份运行 IIS

单击您网站的功能视图中的 Web 平台安装程序:

网络平台安装程序

确保已安装 URL 重写服务器产品。如果没有,请安装它。

URL重写服务器产品

安装 URL 重写服务器产品后,您可以使用网站上的 URL 重写功能添加规则,为您的会话 ID cookie 添加 HttpOnly。

URL重写功能

在此输入图像描述

添加 HttpOnly 出站规则

您应该会看到为 ASP 站点创建的 web.config 文件(如果尚不存在)。它将包含以下内容:

在此输入图像描述

如果您在 Firefox 中使用 Firebug 来检查您的 cookie,您现在应该会看到 HttpOnly 标志已设置:

在此输入图像描述

  • 可爱的解释。我将添加以下详细信息。您需要创建一个前提条件。执行此操作时,将其命名为“No HttpOnly”。使用“正则表达式”,本地分组“全部匹配”。添加两个条件。首先,{RESPONSE_SET_COOKIE},匹配模式“。” (不带引号)。其次,{RESPONSE_SET_COOKIE},与模式不匹配,“; No HttpOnly”(不带引号)。 (5认同)

Mar*_*Eve 2

Response.AddHeader "Set-Cookie", "CookieName=CookieValue; path=/; HttpOnly" 
Run Code Online (Sandbox Code Playgroud)

来源: http: //www.asp101.com/tips/index.asp? id=160

  • 因为这个 cookie 是由 ASP 和 IIS 默认创建的,所以我们没有机会以编程方式添加它。我想知道是否是其他地方的其他设置???我更新了 IIS Metabase.xml 中的 KeepASPCookieSecure,我想知道这是否是类似的修复? (5认同)
  • 请注意,使用“addheader”添加 cookie 不会将 cookie 添加到同一请求中 ASP 中的 request.cookies() 集合中。该 cookie 仅在浏览器往返之后在 request.cookies 范围内可见。这与常规的 response.cookies() 命令不同,后者将使 cookie 在同一请求的 request.cookies 范围内可用。 (2认同)