Mozilla开始在Firefox浏览器上推出“站点隔离”安全功能

Mozilla已经开始在其Firefox浏览器的夜间和beta频道推出一项新的安全功能,旨在保护用户免受恶意网站的一类新的侧频道攻击。
这种被称为“站点隔离”的实现将每个网站分别加载到自己的操作系统进程中,从而防止来自恶意网站的不可信代码访问存储在其他网站中的机密信息。
Mozilla在一份声明中说:“Firefox安全架构的根本性重新设计通过为Firefox for Desktop中加载的所有站点创建操作系统进程级边界,扩展了当前的安全机制。”。“将每个站点隔离到一个单独的操作系统进程中会使恶意站点更难读取另一个站点的机密或私有数据。”
网站隔离的动机可以追溯到2018年1月,当时Spectre和Meldown漏洞被公开披露,迫使浏览器供应商和芯片制造商整合防御措施,以消除可能打破不同应用程序之间界限并允许对手读取密码的攻击,加密密钥,以及其他直接来自计算机内核内存的有价值信息。
令人不安的是,这种定时端通道攻击可能会通过运行恶意JavaScript代码的网站远程发起,这迫使包括Mozilla在内的浏览器制造商通过降低计时功能的精度来提供缓解措施。然而,目前的Spectre补丁仅仅是“创可贴”,并不能针对所有理论上的攻击提供保护。

Mozilla的Anny Gakhokidze说:“尽管存在安全缓解措施,但为防御幽灵式攻击提供必要内存保护的唯一方法是依靠使用操作系统的进程分离将不同站点的内容隔离所带来的安全保障。”。
因此,Mozilla于2018年4月开始了名为裂变项目的站点隔离计划。虽然Firefox当前的架构允许特权“父”进程生成八个web内容进程,但它也可能为两个完全不同的网站在同一进程中结束,从而共享进程内存的情况打开大门,从而使合法网站面临投机性执行攻击的风险。
这也意味着,一个嵌入了来自不同站点的多个子帧(例如,网页中的广告槽)的网页将共享相同的进程内存,从而使顶级站点能够从一开始不应该访问的嵌入子帧中获取机密,反之亦然。
这就是站点隔离的意义所在。它将每个网站加载到自己的进程中,更不用说嵌入页面的进程,并将它们的内存彼此隔离,从而有效地使恶意域难以访问在不同域中输入的信息。
除了通过为每个站点提供操作系统级的进程隔离来加强Firefox的安全性之外,站点隔离还有望带来其他性能优势,包括有效使用底层硬件和提高稳定性,因为子帧或选项卡崩溃将不再影响其他网站或进程。
运行Firefox夜间版本的用户可以通过导航到“关于:首选项#实验性”并勾选“裂变(站点隔离)”复选框来启用该功能。Firefox测试版上的用户可以通过标题为“about:config”并将“裂变.自动启动”设置为“true”来实现