会话Cookie HTTPOnly标志未在注销响应时设置(Django)

时间:2015-11-18 17:39:48

标签: python django security httponly

我有一个Django应用程序,正在配置一些安全设置。其中一个设置是SESSION_COOKIE_HTTPONLY标志。我将此标志设置为True。

在会话创建(登录)上,如果我检查cookie,我可以看到会话HTTPOnly标志。注销时,服务器发回一个带有空值的会话cookie更新,以显示cookie已被销毁。这个空cookie不会在设置httpOnly标志的情况下发回。

我的问题:这是一个安全问题吗?有没有办法强制Django在注销时设置这个标志?或者这只是预期的行为,并不是安全问题,因为返回的会话cookie是空白的?

1 个答案:

答案 0 :(得分:2)

  

注销时,服务器会发回一个会话cookie更新,其中为空   值表示cookie已被销毁。

HTTPOnly标志设置为阻止XSS漏洞披露秘密会话ID。通过将cookie设置为空值来“删除”cookie时,将从cookie中删除任何敏感数据。攻击者对空值没有任何用处,因此没有必要设置HTTPOnly标志。

除此之外,过期日期已设置,max-age设置为0。客户端将立即删除cookie,使任何攻击者无法通过XSS攻击读取cookie。