Firefox 95 更新沙盒技术RLBox,可避免零日漏洞

Mozilla 刚刚发布了 Firefox 95,这个新版本最有趣的一个更新是安全沙盒技术——RLBox。

RLBox沙盒技术是由 Mozilla、加州大学圣地亚哥分校、德克萨斯大学奥斯汀分校和斯坦福大学的研究人员共同开发,目前该功能已经扩展到Firefox Windows、iOS和Android。

RLBox由一个基于WebAssembly的沙盒和一个用于在沙盒库内改装现有应用程序代码的API组成,它的工作原理是将第三方库与应用程序的本机代码分开。RLBox 将率先用于隔离以下模块:Graphite、Hunspell、Ogg、Expat 和 Woff2。RLBox 保护 Firefox 免受这些库中漏洞的攻击。 

Firefox 是用数百万行 C 和 C++ 代码编写的,这些代码容易出现与内存相关的安全漏洞,因此Mozilla希望能够通过RLBox来解决浏览器到安全性问题。虽然新组件是用 Rust 编写的,但 C/C++ 代码预计会保留在浏览器中。RLBox 将使以更细粒度的方式隔离代码块,这是当前进程级沙盒无法实现的。 

Firefox 已经在自己的进程中运行每个站点。但是,黑客仍然可以将两个漏洞链接在一起,例如,逃离沙箱。

Mozilla表示:"这正是 RLBox 的用武之地。我们没有将代码提升到一个单独的进程中,而是将其编译成 WebAssembly,然后将该 WebAssembly 编译成本机代码。这使得我们不会在 Firefox 中传送任何 .wasm 文件,因为WebAssembly 步骤只是我们构建过程中的一个中间表示。”

除此之外,RLBox还有助于应对软件供应链攻击,同时满足针对上游项目披露的已发布补丁的需求。