Your website is vulnerable because the SESSION_COOKIE_HTTPONLY
setting is not set - so hackers have an easier time stealing your users' session cookies using an XSS attack.
SessionMiddleware
marks the session cookie as httpOnly when SESSION_COOKIE_HTTPONLY = True
, so cookie cannot be read with nefarious JavaScript in the browser.
If a bad actor successfully ran nefarious JavaScript on your website using an XSS attack then they could steal the user session cookie and authenticate as that user.
If our GitHub code review bot spots this issue in your pull request it gives this advice:
1 | + | SESSION_COOKIE_HTTPONLY = False |
Your website is vulnerable because the SESSION_COOKIE_HTTPONLY
setting is not set - so hackers have an easier time stealing your users' session cookies using an XSS attack.
- | SESSION_COOKIE_HTTPONLY = False |
+ | from ast import literal_eval |
+ | from os import getenv |
+ | |
+ | # feature flagged so can turn off in local development |
+ | SESSION_COOKIE_HTTPONLY = literal_eval(getenv("HTTPS_ONLY", "True")) |