Isolation Without Taxation: Near Zero Cost Transitions for SFI
Matthew Kolosick, Shravan Narayan, Evan Johnson, Conrad Watt, and Michael LeMay, Deepak Garg, Ranjit Jhala, Deian Stefan

TL;DR
This paper introduces zero-cost transitions for software fault isolation, significantly improving performance by enabling lightweight context switches and providing tools to verify security guarantees in sandboxed systems.
Contribution
It presents a set of zero-cost conditions for SFI, modifies the Lucet Wasm compiler to implement them, and develops VeriZero, a static verifier ensuring binary compliance, enhancing security and efficiency.
Findings
Up to 29.7% speedup in Firefox rendering tasks
VeriZero verifies binary compliance in seconds
Prototype system performs on par with Native Client SFI
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 \emph{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 \emph{zero-cost conditions} that characterize when sandboxed code has sufficient structured to guarantee security via lightweight \emph{zero-cost} transitions (simple function calls).…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSecurity and Verification in Computing · Advanced Malware Detection Techniques · Physical Unclonable Functions (PUFs) and Hardware Security
