Field-sensitive Data Flow Integrity

02/15/2023
by   So Shizukuishi, et al.
0

Although numerous defenses against memory vulnerability exploits have been studied so far, highly-compatible, precise, and efficient defense is still an open problem. In fact, existing defense methods have at least one of the following problems: they (1) cannot precisely protect structure fields, (2) incur high protection overheads, and/or (3) cannot maintain compatibility with existing code due to imposing memory layout change on the protected program. In this paper, we propose a novel memory-protection method FIX-Sense that aims to solve all of these problems simultaneously. Our key idea is to perform memory protection based on field-sensitive data-flow integrity. Specifically, our method (1) computes a safe write-read relation for each memory object, at the structure-field granularity, based on field-sensitive value-flow analysis at the compile-time of the protected program. (2) At run-time, lightweight verification is performed to determine whether each memory read executed by the protected program belong to the safe write-read relation calculated for the memory object at compile time. (3) This verification is implemented by lightweight metadata management that tracks memory writes at the structure field granularity without changing the memory layout of the target program (especially the structure field layout).

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/27/2022

Fat Pointers for Temporal Memory Safety of C

Temporal memory safety bugs, especially use-after-free and double free b...
research
10/27/2018

FRAMER: A Cache-friendly Software-based Capability Model

Fine-grained memory protection for C and C++ programs must track individ...
research
04/18/2023

InversOS: Efficient Control-Flow Protection for AArch64 Applications with Privilege Inversion

With the increasing popularity of AArch64 processors in general-purpose ...
research
09/10/2019

Selfie: User-defined Sensitive Memory Protection and Recovery

Different users always have different requirement for sensitive memory d...
research
07/03/2018

RUMA: On the Analysis of Defenses based on Misaligned Accesses

The adoption of randomness against heap layout has rendered a good porti...
research
07/17/2020

PThammer: Cross-User-Kernel-Boundary Rowhammer through Implicit Accesses

Rowhammer is a hardware vulnerability in DRAM memory, where repeated acc...
research
09/12/2019

Taking a Look into Execute-Only Memory

The development process of microcontroller firmware often involves multi...

Please sign up or login with your details

Forgot password? Click here to reset