I have joust built a website with a login system. After I've just got ready I have scanned it with Acunetix, but I got the following message:
Session Cookie without HttpOnly flag set Session Cookie without Secure flag set (i guess this is only if I have SSL connection)
So my question would be, that how can I set HttpOnly flag for all my Session data? I'm just using sessions when I log in the users. I'm giving them a session with their userID number and than I'm getting data using that userID.
Is there any simple way that I can set ALL of the session HTTPOnly and secure them, so noone can touch them?
You should check out this excellent site for this question. It comes down to setting it in the sessions-section of your php.ini (or via the appropriate runtime function):
You could also just set the
httponly
flag tofalse
when you use PHP'ssetcookie
:You can either change settings in php.ini, or via
ini_set()
calls to changesession.cookie_secure
andsession.cookie_httponly
values totrue
.Alternately, you can use
session_set_cookie_params()
before starting your session to get the effect you are looking for.http://us3.php.net/manual/en/function.session-set-cookie-params.php