Entry № 559
HttpOnly Cookie 标志
HttpOnly Cookie 标志 是什么?
HttpOnly Cookie 标志禁止 JavaScript 通过 document.cookie 访问的 Cookie 属性,可在出现 XSS 时限制会话被窃取。
Set-Cookie 中的「HttpOnly」属性将 Cookie 标记为脚本不可访问。浏览器仍会随 HTTP(S) 请求带上它,但 document.cookie、DOM 与 XHR 等任何接口都无法读取或修改。对会话与认证 Cookie 来说,HttpOnly 是关键防御:它阻止了最常见的 XSS 后利用——窃取会话 Cookie 并在攻击者设备上重放。HttpOnly 本身既不能阻止 XSS,也不能阻止 CSRF,应与 Secure、SameSite、较短的会话有效期以及强 CSP 配合使用。需要被前端代码读取的 Cookie(例如 CSRF 双提交令牌)会有意省略 HttpOnly。
● 示例
- 01
「Set-Cookie: SID=abc; HttpOnly; Secure; SameSite=Lax; Path=/」。
- 02
发生 XSS 后,由于 Cookie 设置了 HttpOnly,攻击者的载荷无法读取会话 Cookie。
● 常见问题
HttpOnly Cookie 标志 是什么?
禁止 JavaScript 通过 document.cookie 访问的 Cookie 属性,可在出现 XSS 时限制会话被窃取。 它属于网络安全的 应用安全 分类。
HttpOnly Cookie 标志 是什么意思?
禁止 JavaScript 通过 document.cookie 访问的 Cookie 属性,可在出现 XSS 时限制会话被窃取。
如何防御 HttpOnly Cookie 标志?
针对 HttpOnly Cookie 标志 的防御通常结合技术控制与运营实践,详见上方完整定义。
HttpOnly Cookie 标志 还有哪些其他名称?
常见的别称包括: HttpOnly 属性。