ACES: Automatic compartments for embedded systems
Securing the rapidly expanding Internet of Things (IoT) is critical. Many of these "things" are vulnerable bare-metal embedded systems where the application executes directly on hardware without an operating system. Unfortunately, the integrity of current systems may be compromised by a single vulnerability, as recently shown by Google's P0 team against Broadcom's WiFi SoC. We present ACES (Automatic Compartments for Embedded Systems)1, an LLVM-based compiler that automatically infers and enforces inter-component isolation on bare-metal systems, thus applying the principle of least privileges. ACES takes a developer-specified compartmentalization policy and then automatically creates an instrumented binary that isolates compartments at runtime, while handling the hardware limitations of baremetal embedded devices. We demonstrate ACES' ability to implement arbitrary compartmentalization policies by implementing three policies and comparing the compartment isolation, runtime overhead, and memory overhead. Our results show that ACES' compartments can have low runtime overheads (13% on our largest test application), while using 59% less Flash, and 84% less RAM than the Mbed μVisor-the current state-of-the-art compartmentalization technique for bare-metal systems. ACES' compartments protect the integrity of privileged data, provide control-flow integrity between compartments, and reduce exposure to ROP attacks by 94.3% compared to μVisor.
2-s2.0-85068863481
Purdue University
Purdue University
Purdue University
École Polytechnique Fédérale de Lausanne
2018
9781939133045
7
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); 14828 LNCS
1611-3349
0302-9743
65
82
REVIEWED
EPFL
Event name | Event acronym | Event place | Event date |
Baltimore, United States | 2018-08-15 - 2018-08-17 | ||
Funder | Funding(s) | Grant Number | Grant URL |
Brenden Dolan-Gavitt | |||
Honeywell International Inc. | |||
NSF CNS-1513783 | |||
Show more |