DeepAI AI Chat
Log In Sign Up

μTiles: Efficient Intra-Process Privilege Enforcement of Memory Regions

by   Zahra Tarkhani, et al.

With the alarming rate of security advisories and privacy concerns on connected devices, there is an urgent need for strong isolation guarantees in resource-constrained devices that demand very lightweight solutions. However, the status quo is that Unix-like operating systems do not offer privilege separation inside a process. Lack of practical fine-grained compartmentalization inside a shared address space leads to private data leakage through applications' untrusted dependencies and compromised threads. To this end, we propose μTiles, a lightweight kernel abstraction and set of security primitives based on mutual distrust for intra-process privilege separation, memory protection, and secure multithreading. μTiles takes advantage of hardware support for virtual memory tagging (e.g., ARM memory domains) to achieve significant performance gain while eliminating various hardware limitations. Our results (based on OpenSSL, the Apache HTTP server, and LevelDB) show that μTiles is extremely lightweight (adds ≈ 10KB to kernel image) for IoT use cases. It adds negligible runtime overhead (≈ 0.5%-3.5%) and is easy to integrate with existing applications for providing strong privilege separation.


page 1

page 2

page 3

page 4


Practical Fine-grained Privilege Separation in Multithreaded Applications

An inherent security limitation with the classic multithreaded programmi...

Camouflage: Hardware-assisted CFI for the ARM Linux kernel

Software control flow integrity (CFI) solutions have been applied to the...

Neverland: Lightweight Hardware Extensions for Enforcing Operating System Integrity

The security of applications hinges on the trustworthiness of the operat...

Enclave-Aware Compartmentalization and Secure Sharing with Sirius

Hardware-assisted trusted execution environments (TEEs) are critical bui...

The Endokernel: Fast, Secure, and Programmable Subprocess Virtualization

Commodity applications contain more and more combinations of interacting...

Domain Page-Table Isolation

Modern applications often consist of different security domains that req...

Polytope: Practical Memory Access Control for C++ Applications

Designing and implementing secure software is inarguably more important ...