论文标题

在Firefox渲染器(扩展版本)中改造细谷物隔离

Retrofitting Fine Grain Isolation in the Firefox Renderer (Extended Version)

论文作者

Narayan, Shravan, Disselkoen, Craig, Garfinkel, Tal, Froyd, Nathan, Rahm, Eric, Lerner, Sorin, Shacham, Hovav, Stefan, Deian

论文摘要

Firefox和其他主要浏览器依靠数十个第三方库来渲染音频,视频,图像和其他内容。这些库是漏洞的常见来源。为了减轻这种威胁,我们将Firefox迁移到一个在轻质沙箱中隔离这些库的建筑,从而大大减少了折衷的影响。 改造隔离可能是劳动力密集的,非常容易受到安全错误,并且需要对性能进行批判性关注。为了提供帮助,我们开发了RLBox,该框架可以最大程度地减少将Firefox转换为安全有效地使用不信任代码的负担。为了实现这一目标,RLBox采用静态信息流执行和直接在C ++类型系统中表达的轻型动态检查。 RLBOX通过基于软件的故障隔离或多核过程隔离来支持有效的沙箱。性能开销是适度和瞬态的,对页面延迟的影响只有很小的影响。我们通过沙箱性能敏感的图像解码库(libjpeg和libpng),视频解码库(libtheora和libvpx),libvorbis音频解码库以及Zlib Decompression Decompression库来证明这一点。 使用WebAssembly沙箱的RLBox已集成到生产Firefox中,以沙盒libgraphite字体塑造库。

Firefox and other major browsers rely on dozens of third-party libraries to render audio, video, images, and other content. These libraries are a frequent source of vulnerabilities. To mitigate this threat, we are migrating Firefox to an architecture that isolates these libraries in lightweight sandboxes, dramatically reducing the impact of a compromise. Retrofitting isolation can be labor-intensive, very prone to security bugs, and requires critical attention to performance. To help, we developed RLBox, a framework that minimizes the burden of converting Firefox to securely and efficiently use untrusted code. To enable this, RLBox employs static information flow enforcement, and lightweight dynamic checks, expressed directly in the C++ type system. RLBox supports efficient sandboxing through either software-based-fault isolation or multi-core process isolation. Performance overheads are modest and transient, and have only minor impact on page latency. We demonstrate this by sandboxing performance-sensitive image decoding libraries ( libjpeg and libpng ), video decoding libraries ( libtheora and libvpx ), the libvorbis audio decoding library, and the zlib decompression library. RLBox, using a WebAssembly sandbox, has been integrated into production Firefox to sandbox the libGraphite font shaping library.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源