【问题标题】:Current state of HTTP State Management Mechanism (Cookies)HTTP 状态管理机制 (Cookies) 的当前状态
【发布时间】:2011-07-07 04:14:44
【问题描述】:

我想知道是否有关于浏览器遵守三个 Cookie 规范的当前状态的调查或报告:Netscape’s original draftRFC 2109RFC 2965,它们已过时 RFC 2109。

我知道,由于其年代久远,Netscape 的草案将得到大多数客户的支持。但有些人建议不要再使用它,例如this tutorial on Apache’s HttpClient:

Netscape 草案: 本规范符合 Netscape Communications 发布的原始草案规范。除非绝对有必要与遗留代码兼容,否则应避免使用它。

那么其他规范呢?准备好使用了吗?

【问题讨论】:

  • 似乎没有任何确凿的信息可以回答您的问题。获取一些数据的一种方法是编写一个应用程序,尝试以各种方式设置 cookie,并将结果与​​浏览器信息一起记录,然后让很多人上网。您可能可以让很多人免费这样做;还有机械土耳其人。
  • @Tom Zych:我知道。但是我现在有点懒,希望已经有这样的调查。 :)
  • 看起来不像。但是有 500 个代表处于危险之中,也许有人会很快做一个 :)
  • @Tom Zych:这就是我所希望的。 :) 但我想我会编写自己的测试套件。
  • 我开始创建一个测试套件,但我认为这没有任何意义。到目前为止只在 Chrome 和 FF 中进行了测试,但它们都不支持Set-Cookie2。他们根本没有发回 dollar 变量(即使 cookie 是使用Version=1 发送的)。所以在这一点上,我认为进一步测试没有任何意义。

标签: cookies standards-compliance


【解决方案1】:

大家的共识似乎是它们还没有准备好使用。 Some of the reasons for that are mentioned here 主要与浏览器合规性有关。


但是,凭直觉,我怀疑您提出此问题的动机可能与会话劫持问题有关,该问题已被 FireSheep 等应用程序引起关注。

如果是这样的话,我发现了一篇有趣的论文,它提出了一种解决问题的方法,称为 OTC 的一次性 cookie。它可能值得一读。它的标题是One-Time Cookies: Preventing Session Hijacking Attacks with Disposable Credentials,来自乔治亚理工学院的 4 名博士生。

(如果 google Docs 链接不起作用,这里是a direct link to the PDF。)

综上,基本总结如下:

虽然用 HTTPS 完全取代 HTTP 将提高 Web 的整体安全性,但对于某些 Web 应用程序来说,这可能是一个具有挑战性和复杂性的项目。 . .因此,在部署站点范围的 HTTPS 时,许多 Web 应用程序仍然容易受到攻击,而这一过程可能需要数年时间。

...

OTC 依赖于众所周知的加密结构(例如哈希链)创建不可重复使用的一次性身份验证令牌,从而提供更强大的会话完整性。 . . OTC 比 HTTPS 效率高得多,并且性能与当前基于 cookie 的机制大致相同。

这是一本非常有趣的读物。我希望在某种程度上对某人有所帮助,

~gMale

【讨论】:

  • 感谢您的回答。我的问题实际上旨在概述当前 Web 浏览器遵守三种不同(事实上)标准的现状。有趣的是,我也回答了你喜欢的问题。但答案是不明确的,它们对这个问题毫无价值(包括我的答案)。
【解决方案2】:

最近的一项调查似乎是由Ka-Ping Yee in 2002 撰写的,这在 WWW/Internet 的发展过程中被认为是古老的。好处是它调查了 3 个操作系统的 12 款浏览器,这可能会提供关于它们如何适应 cookie 管理的公平见解。

Yee, Ka-Ping,“Cookie 调查 管理功能和可用性 在网络浏览器中," http://zesty.ca/2002/priv/cookie-survey.pdf, 2002.

另一篇较新的文章,虽然不太相关,但由 Yue, Xie, and Wang in 2009 撰写(发表于 2010 年)。它对 5000 多个网站进行了大规模的 HTTP cookie 管理研究,使用的系统可以自动验证来自网站的 cookie 的有用性,并代表用户设置 cookie 的使用权限。

传悦、谢孟君、海宁 王,“自动 HTTP Cookie 管理系统,”在杂志 计算机网络 (COMNET),第 54(13) 页。 2182--2198, 2010.

【讨论】:

    【解决方案3】:

    您可能需要检查

    http://lists.w3.org/Archives/Public/www-tag/2011Mar/0021.html

    指的是

    http://www.ietf.org/id/draft-ietf-httpstate-cookie-23.txt

    这是为了废弃 RFC 2965。

    "Document Quality
    
    This document defines the HTTP Cookie and Set-Cookie HTTP
    header fields as they are presently utilized on the Internet. As a
    result, there are already many implementations of this specification."
    

    【讨论】:

    • 这如何回答我关于浏览器是否符合上述规范的问题?
    • 这似乎是有关浏览器符合哪些规范的有用且最新的信息。你会更喜欢它作为评论而不是答案吗?
    • 我还没有阅读草稿以了解它与 RFC 2965 有何不同。但除此之外,还有许多已过时但仍在当今浏览器中使用的 RFC。因此,我想您的帖子与其说是对我的问题的回答,不如说是评论。不过还是谢谢。
    猜你喜欢
    • 1970-01-01
    • 2014-04-16
    • 2011-09-01
    • 1970-01-01
    • 2020-08-14
    • 2012-08-06
    • 1970-01-01
    • 2020-06-28
    • 1970-01-01
    相关资源
    最近更新 更多