谷歌改变了Chrome浏览器的核心组件的工作方式,以便为用户增加额外的隐私保护。
被称为HTTP缓存或共享缓存的Chrome组件通过保存加载在网页上的资源副本(如图像、CSS文件和JavaScript)来工作文件。
其理念是当用户访问同一网站或访问使用相同文件的其他网站时,Chrome将从其内部缓存中加载这些文件,与浪费时间重新下载每个文件不同。
这个组件不仅存在于Chrome中,而且从互联网早期起就存在于所有的web浏览器中,在那里它是一种节省带宽的功能。
在所有浏览器中,缓存系统通常都是以相同的方式工作的。缓存中保存的每个图像、CSS或JS文件都会收到一个存储密钥,该密钥通常是资源的URL。
例如,图像的存储密钥将是图像URL本身:https://x.example/doge.png
当浏览器加载新页面时,它会在内部缓存数据库中搜索密钥(URL),然后查看是否需要下载图像或从缓存中加载图像,网络广告和分析公司意识到,同样的功能也可能被滥用来跟踪用户。
“从性能的角度来看,这一机制长期以来一直运行良好,”谷歌的开发者倡导者Eiji Kitamura说。
“然而,网站响应HTTP请求所用的时间可以显示浏览器过去访问过相同的资源,这会使浏览器面临安全和隐私攻击。“
这些包括:
但使用chrome86,本周早些时候发布,Google已经对这个机制进行了重要的修改。
被称为“缓存分区”,这个特性通过改变HTTP缓存中资源的保存方式来工作,它基于两个额外的因素。从现在起,资源的存储密钥将包含三个项目,而不是一个:
通过在缓存预加载检查过程中添加额外的密钥,Chrome有效地阻止了过去针对其缓存机制的所有攻击,由于大多数网站组件只能访问自己的资源,无法检查自己未创建的资源。
不过,在某些情况下,缓存可能会交叉,但攻击面比以前小得多。(查看此处了解所有边缘情况)
谷歌一直在测试缓存分区自Chrome 77于2019年9月发布以来,并表示,新系统不会对用户或开发者产生任何影响。
唯一会看到变化的是网站所有者,他们最有可能观察到网络流量增加了约4%。
缓存分区目前仅在Chrome中处于活动状态,但基于Chromium开源代码的其他浏览器也可以使用缓存分区,所有这些公司都很可能在接下来的几个月里部署它。其中包括Edge、Brave、Opera、Vivaldi等https://bugzilla.mozilla.org/show\u bug.cgi?id=1536058“target=”nu blank“rel=”noopener noreferrer nofollow“data component=”externalLink“>宣布了类似的计划来实现Chrome的缓存分区机制,但在Firefox上还没有最后期限。
苹果,另一家主要的浏览器供应商,一直在使用有限的缓存分区系统自2019年初开始。不过,Safari的缓存分区系统只使用两个检查(#1和#3),而不是Chrome更彻底的三个检查。
“缓存分区是一个很好的做法,大多数大公司创建的浏览器都应该使用,“JohnJackson,Shutterstock的应用程序安全工程师,今天告诉了ZDNethttps://portswigger.net/daily-swig/new-xs-leak-technologies-reveal-fresh-ways-to-expose-user-information“target=”\u blank“rel=”noopener noreferrer nofollow“data component=”externalLink“>多年来反复证明,侧信道攻击是由统一缓存造成的。侧通道攻击导致攻击者获取代币、电子邮件地址、信用卡号码、电话号码、浏览历史记录等。
“很高兴看到谷歌正在着手实施一项本应实施的安全措施,“Jackson补充道。
,您同意
2023-03-22 10:04:21