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

Session Cookie HTTPOnly flag not set on response from logout (Django)

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

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

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

On logout, the server sends back a session cookie update with an empty value to show that the cookie has been destroyed.

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

最重要的是,到期日期设置为过去,max-age 设置为 0。客户端会立即删除cookie,让任何攻击者没有机会通过XSS攻击读取cookie。