我们需要确保CF7站点上的所有cookie都设置为HttpOnly。
我们使用jsessionid来控制会话,而JRun并不将其创建为HttpOnly。
虽然可以修改现有的cookie来添加此设置,但我们需要从一开始就将其设置为HttpOnly。
有什么建议吗?
发布于 2011-03-08 15:53:58
来自:http://www.petefreitag.com/item/764.cfm
运行CF 8或更低版本并使用Application.cfc
<cfcomponent>
<cfset this.sessionmanagement = true>
<cfset this.setclientcookies = false>
<cffunction name="onSessionStart">
<cfheader name="Set-Cookie" value="CFID=#session.CFID#;path=/;HTTPOnly">
<cfheader name="Set-Cookie" value="CFTOKEN=#session.CFTOKEN#;path=/;HTTPOnly">
</cffunction>
<cfcomponent>确保您有setclientcookie= false指定。
如果使用Application.cfm
如果仍在使用Application.cfm文件,则可以使用以下内容:
<cfapplication setclientcookies="false" sessionmanagement="true" name="test">
<cfif NOT IsDefined("cookie.cfid") OR NOT IsDefined("cookie.cftoken")>
<cfheader name="Set-Cookie" value="CFID=#session.CFID#;path=/;HTTPOnly">
<cfheader name="Set-Cookie" value="CFTOKEN=#session.CFTOKEN#;path=/;HTTPOnly">
</cfif>发布于 2011-08-03 06:15:26
首先,热烈欢迎所有PCI DSS难民!此外,还邀请了阿普扫描、魏宾思温、冰雹和NTOSpider逃犯。请坐,我给你准备了蛋糕:
虽然对Peter来说为时已晚,但实际上可以让JRun从一开始就按照他的要求生成HTTPOnly (和安全)cookie。查找jrun-web.xml文件。它可能在一个目录中,如
C:\JRun4\servers\servername\cfusion-ear\cfusion-war\WEB-INF\。
必须将以下内容添加到cookie-配置部分中
<cookie-config>
<cookie-path>/;HttpOnly</cookie-path>
</cookie-config>如果您的站点是HTTPS,您还应该启用选项。但是要小心,它的服务器范围很广,而不是特定于应用程序。因此,它可能不适合您的共享环境:
<cookie-config>
<cookie-secure>true</cookie-secure>
<cookie-path>/;HttpOnly</cookie-path>
</cookie-config>如果您没有被困在MX7或CF8中,则有这在CF9.01中 Dcoldfusion.sessioncookie.httponly的官方设置
我已经在ColdFusion MX7上测试过它,它的工作原理和预期一样。躲过了阿普扫描。
发布于 2009-06-29 16:51:32
目标是第一个请求是安全的(并通过扫描),所以如果这篇文章涵盖了这一点,那么它将解决问题。
如果我错了,请纠正我,但如果请求是通过HTTP传入的,则似乎需要重定向到HTTPS。在将请求发送到ColdFusion之前,您不能用URL重写规则捕捉到这一点吗?
https://stackoverflow.com/questions/1048436
复制相似问题