Proceedings of the Seventeenth European Conference on Computer Systems 2022
DOI: 10.1145/3492321.3519553
|View full text |Cite
|
Sign up to set email alerts
|

Isolating functions at the hardware limit with virtines

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
5
0

Year Published

2022
2022
2024
2024

Publication Types

Select...
5
2
1

Relationship

0
8

Authors

Journals

citations
Cited by 12 publications
(5 citation statements)
references
References 28 publications
0
5
0
Order By: Relevance
“…In recent years, many works have looked at implementing various forms of compartmentalization [5-10, 12-16, 18, 22, 25, 27, 28, 32-34, 36-38, 44]. Many of these approaches have focused on library isolation [5, 6, 15, 22, 25, 28, 32-34, 37, 44], while others approach isolation in a much more fine-grained way, including function level isolation [13,14,36,38]. Isolation in single-address-space OSes such as Library OSes has also been explored [22,33,36], although using other mechanisms such as memory protection keys.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…In recent years, many works have looked at implementing various forms of compartmentalization [5-10, 12-16, 18, 22, 25, 27, 28, 32-34, 36-38, 44]. Many of these approaches have focused on library isolation [5, 6, 15, 22, 25, 28, 32-34, 37, 44], while others approach isolation in a much more fine-grained way, including function level isolation [13,14,36,38]. Isolation in single-address-space OSes such as Library OSes has also been explored [22,33,36], although using other mechanisms such as memory protection keys.…”
Section: Related Workmentioning
confidence: 99%
“…Contrary to many other protection techniques, compartmentalization allows defending against yet unknown/future vulnerabilities in existing code bases [41]. Many approaches have been proposed in recent years, utilizing different hardware and software isolation mechanisms to compartmentalize libraries [5, 6, 15, 22, 25, 28, 32-34, 37, 44] as well as smaller pieces of code such as functions [3,14,36,38].…”
Section: Introductionmentioning
confidence: 99%
“…Isolation Units Communication Mechanism Hardware Features Used Dune [6] Dune processes In-VM system calls Intel VT-x SeCage [20] Secret compartments VMFUNC Intel VT-x & Intel VMFUNC LwC [19] Lightweight contexts Memory mappings switching -Scone [4] Secure containers Shields & asynchronous syscalls Intel SGX Skybridge [21] Client/server processes EPTP switching VM function Intel VMFUNC & Intel EPT Donky [26] Security Domains Domain calls Intel MPK cubicleOS [25] Cubicles Cross-component function call Intel MPK cVM (cap-vm) [24] cap VMs Capability-based function call CHERI Virtines [28] Virtines Hypercalls 1 Intel VT-x, AMD SVM orbit [15] Orbit tasks PTEs copying 2 space in the case of single-threaded processes). This rigidity of processes and threads has been regularly challenged for being unsuitable or insufficient, especially for new EF and isolation scenarios [15], which seek extensibility (e.g., user-defined functions, web browser extensions, kernel extensions, etc.…”
Section: Namementioning
confidence: 99%
“…The current version of the toolchain imposes some constraints on the source code organization (e.g., the main routine for each EF must be implemented in its own file). In the next version, we intend to lift these restrictions and introduce support for additional types of isolation mechanisms (virtual machines, containers, and virtines [28]).…”
Section: Preliminary Prototypementioning
confidence: 99%
“…Recent years have seen the appearance of an increasingly large number of new isolation mechanisms [10], [4], [3], [65], [53], [45] that enable fine-grained compartmentalization. This resulted in compartmentalization works targeting finer and finer granularities, such as libraries [67], [60], [19], [42], [53], [35], [5], [51], [29], [2], modules [22], [2], [52], files [2], and even functions/blocks of code [16], [64], [57], [1]. In that context, major attention was dedicated to compartmentalizing existing code, since rewriting software from scratch to work in a compartmentalized manner is costly and complex [16].…”
Section: Introductionmentioning
confidence: 99%