Iis 在ASP 1.1会话ID cookie上设置HttpOnly=true

Iis 在ASP 1.1会话ID cookie上设置HttpOnly=true,iis,cookies,asp-classic,iis-6,session-cookies,Iis,Cookies,Asp Classic,Iis 6,Session Cookies,我有一个客户在IIS 6.0下运行他的经典ASP站点。该网站在ASP.NET配置选项卡中针对ASP.NET 2.0。最近对他的站点进行的PCI扫描失败,他的ASPSESSIONID cookie上存在HttpOnly漏洞 我已经安装了一个ISAPI.dll,它成功地在所有手动创建的cookie上设置了HttpOnly,但由于某些原因,ASPSESSIONID cookie不会受到此影响 我已使用以下配置设置web.config: <system.web> <httpCo

我有一个客户在IIS 6.0下运行他的经典ASP站点。该网站在ASP.NET配置选项卡中针对ASP.NET 2.0。最近对他的站点进行的PCI扫描失败,他的ASPSESSIONID cookie上存在HttpOnly漏洞

我已经安装了一个ISAPI.dll,它成功地在所有手动创建的cookie上设置了HttpOnly,但由于某些原因,ASPSESSIONID cookie不会受到此影响

我已使用以下配置设置web.config:

<system.web>
    <httpCookies httpOnlyCookies="true" />
</system.web>

这种配置似乎对任何事情都没有任何影响。我怀疑,尽管该网站是针对ASP.NET2.0的,但它毕竟是一个经典的ASP应用程序,HttpOnly根本不受支持

客户的网站使用
global.asa
而不是
global.asax
。这排除了使用Application_EndRequest添加HttpOnly的可能性

我可以使用Firefox/Firebug加载客户端的站点并查看cookies。那些手动创建的正在设置HttpOnly,但是ASPSESSIONID cookie不是HttpOnly


是否有人知道如何使ASPSESSIONID cookie仅在给定此设置方案的情况下被HttpOnly设置?

ASP会话cookie不能由经典ASP代码修改,因此对于IIS 6,您需要让ISAPI模块重写cookie

客户端JavaScript解决方案


请求。ServerVariables(“HTTP\U COOKIE”)将获取当前COOKIE值,然后您可以使用更新的COOKIE响应该值,添加HttpOnly,但唯一的问题是,如果您试图通过安全扫描,它们通常不会获取COOKIE的更新值,而只获取初始值

我已经安装了ISAPI过滤器来重写cookies。它成功地将HttpOnly添加到手动创建的cookie,但不会影响ASPSESSIONID cookie。您提供的两个链接非常好,但并没有提供专门在ASPSESSIONID cookie上设置HttpOnly的解决方案。@rwkiii您安装了什么ISAPI过滤器?第二个链接中的一个,大约在“好消息:缓解跨站点脚本问题”页面的一半。我想是JavaScript=(除非你可以升级到IIS 7。它也是一个实时网站。Javascript不是我的强项。谢谢肖恩。