INTERNET OF THINGS SYSTEMS SECURITY: BENCHMARKING AND PROTECTION
Internet of Things (IoT) systems running on Microcontrollers (MCUS) have become a prominent target of remote attacks. Although deployed in security and safety critical domains, such systems lack basic mitigations against control flow hijacking attacks. Attacks against IoT systems already enabled malicious takeover of smartphones, vehicles, unmanned aerial vehicles, and industrial control systems. The thesis introduces a systemic analysis of previous defense mitigations to secure IoT systems. Building off this systematization, we identify two main issues in IoT systems security. First, efforts to protect IoT systems are hindered by the lack of realistic benchmarks and evaluation frameworks. Second, existing solutions to protect from control flow hijacking on the return edge are either impractical or have limited security guarantees. This thesis addresses these issues using two approaches. First, we present BenchIoT, a benchmark suite of five realistic IoT applications and an evaluation framework that enables automated and extensible evaluation of 14 metrics covering security, performance, memory usage, and energy. BenchIoT enables evaluating and comparing security mechanisms. Using BenchIoT, we show that even if two security mechanisms have similarly modest runtime overhead, one can have undesired consequences on security such as a large portion of privileged user execution. Second, we introduce Return Address Integrity (RAI) a novel security mechanism to prevent all control flow hijacking attacks targeting return edges, without requiring special hardware. We design and implement mRAI to enforce the RAI property. Our results show mRAI has a low runtime overhead of 0.1% on average, and therefore is apractical solution for IoT systems. This thesis enables measuring the security IoT systems through standardized benchmarks and metrics. Using static analysis and runtime monitors, it prevents control flow hijacking attacks on return edges with low runtime overhead. Combined, this thesis advances the state of the art of protecting IoT systems and benchmarking its security.