Isolation without taxation: near-zero-cost transitions for WebAssembly and SFI

Author:

Kolosick Matthew1,Narayan Shravan1,Johnson Evan1,Watt Conrad2,LeMay Michael3ORCID,Garg Deepak4ORCID,Jhala Ranjit1,Stefan Deian1

Affiliation:

1. University of California at San Diego, USA

2. University of Cambridge, UK

3. Intel Labs, USA

4. MPI-SWS, Germany

Abstract

Software sandboxing or software-based fault isolation (SFI) is a lightweight approach to building secure systems out of untrusted components. Mozilla, for example, uses SFI to harden the Firefox browser by sandboxing third-party libraries, and companies like Fastly and Cloudflare use SFI to safely co-locate untrusted tenants on their edge clouds. While there have been significant efforts to optimize and verify SFI enforcement, context switching in SFI systems remains largely unexplored: almost all SFI systems use heavyweight transitions that are not only error-prone but incur significant performance overhead from saving, clearing, and restoring registers when context switching. We identify a set of zero-cost conditions that characterize when sandboxed code has sufficient structured to guarantee security via lightweight zero-cost transitions (simple function calls). We modify the Lucet Wasm compiler and its runtime to use zero-cost transitions, eliminating the undue performance tax on systems that rely on Lucet for sandboxing (e.g., we speed up image and font rendering in Firefox by up to 29.7% and 10% respectively). To remove the Lucet compiler and its correct implementation of the Wasm specification from the trusted computing base, we (1) develop a static binary verifier , VeriZero, which (in seconds) checks that binaries produced by Lucet satisfy our zero-cost conditions, and (2) prove the soundness of VeriZero by developing a logical relation that captures when a compiled Wasm function is semantically well-behaved with respect to our zero-cost conditions. Finally, we show that our model is useful beyond Wasm by describing a new, purpose-built SFI system, SegmentZero32, that uses x86 segmentation and LLVM with mostly off-the-shelf passes to enforce our zero-cost conditions; our prototype performs on-par with the state-of-the-art Native Client SFI system.

Funder

EPSRC

NSF

Publisher

Association for Computing Machinery (ACM)

Subject

Safety, Risk, Reliability and Quality,Software

Reference89 articles.

1. 2019. Java Platform , Standard Edition : Java Virtual Machine Guide . https://docs.oracle.com/en/java/javase/13/vm/java-virtual-machine-guide.pdf 2019. Java Platform, Standard Edition: Java Virtual Machine Guide. https://docs.oracle.com/en/java/javase/13/vm/java-virtual-machine-guide.pdf

2. Efficient and language-independent mobile programs

3. Deconstructing process isolation

4. Faulty Point Unit: ABI Poisoning Attacks on Intel SGX

5. Language-independent sandboxing of just-in-time compilation and self-modifying code

Cited by 7 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. Encapsulated Functions: Fortifying Rust's FFI in Embedded Systems;Proceedings of the 1st Workshop on Kernel Isolation, Safety and Verification;2023-10-23

2. Exploring Missed Optimizations in WebAssembly Optimizers;Proceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis;2023-07-12

3. Evolving Operating System Kernels Towards Secure Kernel-Driver Interfaces;Proceedings of the 19th Workshop on Hot Topics in Operating Systems;2023-06-22

4. Iris-Wasm: Robust and Modular Verification of WebAssembly Programs;Proceedings of the ACM on Programming Languages;2023-06-06

5. SecureCells: A Secure Compartmentalized Architecture;2023 IEEE Symposium on Security and Privacy (SP);2023-05

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3