2

我对 cookie 中的 HTTPOnly 属性有点困惑。我知道它的主要用途是防止 XSS 攻击。让我们假设有一个 Web 应用程序为 cookie 设置了 httponly。为此,我使用了 Fiddler 之类的拦截代理。但是在所有后续事务中,cookie 都没有附带 httponly 标志。这是一个像设置一次一样的功能,整个会话都被 httponly 标志覆盖......或者这是一个实现缺陷。但是,当通过 cookie 管理器插件进行监控时,属性显示 httponly 已启用。我的问题是它是否启用了为什么 cookie 管理器显示它已启用但不是拦截代理,这是正常的预期行为还是错误的实现。请帮我理解。

4

1 回答 1

4

HttpOnly 由服务器在 Set-Cookie 标头中发送,以指示浏览器不要使 cookie 可用于 javascript。浏览器仍将通过 http 连接发送它。Set-Cookie 标头可以包含 cookie 的各种指令,例如它们何时过期、它们的域、路径、它们是否应该只通过 https(安全标志)和 HttpOnly 发送。这些都是从服务器到浏览器的指令,因此浏览器没有必要在每次请求时将它们发送回服务器。

于 2012-05-23T05:23:20.563 回答