CRMay 29, 2017

HardScope: Thwarting DOP with Hardware-assisted Run-time Scope Enforcement

arXiv:1705.10295v223 citations
Originality Incremental advance
AI Analysis

This addresses a critical security vulnerability in systems using memory-unsafe languages like C/C++, offering an efficient defense against DOP attacks, though it is incremental as it builds on compile-time constraints.

The paper tackles the problem of data-oriented programming (DOP) attacks, which bypass existing memory corruption defenses, by proposing run-time scope enforcement (RSE) to enforce compile-time memory safety constraints at run-time, resulting in mitigation of all known DOP attacks with a 3.2% performance overhead in embedded benchmarks.

Widespread use of memory unsafe programming languages (e.g., C and C++) leaves many systems vulnerable to memory corruption attacks. A variety of defenses have been proposed to mitigate attacks that exploit memory errors to hijack the control flow of the code at run-time, e.g., (fine-grained) randomization or Control Flow Integrity. However, recent work on data-oriented programming (DOP) demonstrated highly expressive (Turing-complete) attacks, even in the presence of these state-of-the-art defenses. Although multiple real-world DOP attacks have been demonstrated, no efficient defenses are yet available. We propose run-time scope enforcement (RSE), a novel approach designed to efficiently mitigate all currently known DOP attacks by enforcing compile-time memory safety constraints (e.g., variable visibility rules) at run-time. We present HardScope, a proof-of-concept implementation of hardware-assisted RSE for the new RISC-V open instruction set architecture. We discuss our systematic empirical evaluation of HardScope which demonstrates that it can mitigate all currently known DOP attacks, and has a real-world performance overhead of 3.2% in embedded benchmarks.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes