我刚刚在Github发现了Evercookie项目。
Evercookie是一个Javascript API,可以在浏览器中生成极其持久的cookie。它的目标是在客户删除标准cookie,Flash cookie(本地共享对象或LSO)等之后识别客户。
这是通过将cookie数据存储为尽可能多的浏览器存储机制来实现的。如果从任何存储机制中删除了cookie数据,只要一个机制仍然完好无损,evercookie就会在每个机制中积极地重新创建它。
如果LSO机制可用,Evercookie甚至可以在同一台客户机上的不同浏览器之间传播cookie!
我在this example page上在线测试了它。我点击了“创建evercookie”按钮,我删除了所有浏览数据,并刷新了页面。通过删除浏览数据删除的cookie再次返回。
这件事的浏览器安全性在哪里?这是安全的吗?
答案 0 :(得分:2)
如果要禁用基于Flash的Cookie,请使用Adobe的“全局存储设置”面板:
http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager03.html
执行所有步骤:
Chrome在Windows和Mac OS X上捆绑了自己的Flash插件。设置和磁盘存储与Adobe直接打包的插件是分开的,因此如果您使用Chrome,则可能需要执行上述步骤两次。另一方面,单独的storage location会阻止Flash用于将Cookie与Chrome和其他浏览器同步。
我建议使用我的个人网站进行测试:
“Zombie Cookie”部分可以准确显示Cookie的恢复方式,并帮助您确定上述步骤(或您使用的任何工具)是否正常工作。
答案 1 :(得分:1)
为了创造一个Evercookie,您只需要:
完全禁用对所有存储机制的访问会使大多数存储机制无用;对于他们中的大多数人来说,他们存在的全部理由是允许脚本使用它们。因此,唯一可行的远程可行选项是限制域的访问。不过,我不确定哪种浏览器(如果有的话)允许这种粒度。大多数可以允许或阻止JS作为一个整体从某些域,但至于什么功能给定域的脚本可以使用...?我至少在Chrome 26或IE 10中没有看到这种能力。
答案 2 :(得分:1)
嗯,它看起来效果不好。
奇怪的是,我没有在Flash网站存储设置面板中明确删除Flash Cookie。也许它已集成到Firefox中。或者我可能已禁用它们。
我认为还有其他几种方法可以存储Cookie并跟踪您。即使断开连接,Facebook也已经在网上跟踪你了。 Google也是(你使用Chrome吗?)。此外,使用IPv4地址,我们当然可以找回你(为什么不在你清空缓存之后!)。我们也可以在重新登录任何网站时找回您,并与之前的会话建立链接。
我建议: