我有一个客户在 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.NET 2.0 的,它毕竟是一个经典的 ASP 应用程序,并且根本不支持 HttpOnly。
客户的网站使用 aglobal.asa
而不是global.asax
. 这排除了使用 Application_EndRequest 添加 HttpOnly。
我可以使用 Firefox/Firebug 加载客户端的站点并查看 cookie。那些手动创建的设置了 HttpOnly,但 ASPSESSIONID cookie 不是 HttpOnly。
有谁知道在这种设置方案下如何使 ASPSESSIONID cookie 成为 HttpOnly ?