switching from cookie storage to client storage
Recently my app was scanned for vulnerabilities and I was flagged for a few - mostly pertaining to the client variables and the assoicated cookies. Specifically with a cookie being utilized called CFClient_SMITH (let's just say that my application is called SMITH). My hosting site does not allow session variables, so I must use client variables. Evidently because there is not client storage set, all of the client varaibles are now being stored in the CFClient_SMITH and are available for the picking. I am getting nailed for Privilege Escalation, User Impersonation, Forced browsing - just to name a few.
I was told that by naming a clientstorage value this would eliminate this issue. The hosting group told me to use a specific clientstorage value (let's say APPLE) and to set the client cookies to no as shown below:
<cfapplication name="SMITH"
applicationtimeout="#createTimeSpan(0,4,0,0)#"
clientmanagement="Yes"
setclientcookies="No"
setdomaincookies="yes"
clientstorage="apple"
sessionmanagement="No"
scriptprotect="all"
So I thought that was all I needed, but the website worked in IE 11 but not in FireFox and Chrome.
My question is - is this the correct approach? And if yes, then I assume that I now need to go back into all of the code and append the cookies to the pages that really need them to be passed to using:
<cfset myEncodedURL=URLSessionFormat("MyActionPage.cfm")>
<cfform method="Post" action="#myEncodedURL#">
Any help and guidance you can provide is greatly appreciated!
Libby Hornbostel
