Litcius/Paper detail

μSwitch: Fast Kernel Context Isolation with Implicit Context Switches

Dinglan Peng, Congyu Liu, Tapti Palit, Pedro Fonseca, Anjo Vahldiek-Oberwagner, Mona Vij

202310 citationsDOI

Abstract

Isolating application components is crucial to limit the exposure of sensitive data and code to vulnerabilities in the untrusted components. Process-based isolation is the de facto isolation used in practice, e.g., web browsers. However, it incurs significant performance overhead and is typically infeasible when frequent switches between isolation domains are expected. To address this problem, many intra-process memory isolation techniques have been proposed using novel kernel abstractions, recent CPU extensions (e.g., Intel <sup xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">®</sup> MPK), and software-based fault isolation (e.g., WebAssembly). However, these techniques insufficiently isolate kernel resources, such as file descriptors, or do so by incurring high overheads when resources are accessed. Other work virtualizes the kernel context inside a privileged user space domain, but this is ad-hoc, error-prone, and provides only limited kernel functionalities.We propose μSwitch, an efficient kernel context isolation mechanism with memory protection that addresses these limitations. We use a protected structure, shared by the kernel and the user space, for context switching and propose implicit context switching to improve its performance by deferring the kernel resource switch to the next system call. We apply μSWITCH to isolate libraries in the Firefox web browser and an HTTP server, and reduce the overhead of isolation by 32.7% to 98.4% compared with other isolation techniques.

Topics & Concepts

Computer scienceIsolation (microbiology)Kernel (algebra)Context (archaeology)Overhead (engineering)Context switchOperating systemUser spaceAddress spaceFault detection and isolationDistributed computingEmbedded systemParallel computingArtificial intelligenceMathematicsPaleontologyBiologyMicrobiologyActuatorCombinatoricsSecurity and Verification in ComputingCloud Data Security SolutionsDistributed systems and fault tolerance
μSwitch: Fast Kernel Context Isolation with Implicit Context Switches | Litcius