RTT-UAF: Reuse Time Tracking for Use-After-Free Detection
Open Access
- 30 May 2024
- conference paper
- Published by Association for Computing Machinery (ACM)
- p. 376-387
Abstract
Memory safety continues to be a critical challenge in modern computing, with approximately 70% of reported vulnerabilities annually attributed to memory-related issues. Among these issues, Use-After-Free (UAF) vulnerabilities or bugs, where a program accesses memory through a dangling pointer, pose significant threats. Existing UAF detection methods, such as Key-And-Lock (KAL) mechanisms, incur notable performance overhead due to explicitly propagating the key and lock address (metadata). We identify that approximately 67% of KAL’s performance overhead is introduced by this metadata propagation. This paper introduces RTT, which significantly reduces performance overhead by reducing the number of memory accesses related to metadata propagation. RTT achieves an average performance overhead of 170%, substantially lower than existing KAL methods, and incurs only an 8% memory overhead on SPEC CPU 2017. The results of experimental evaluations on real-world UAF bugs further demonstrate that RTT’s UAF bug detection rate is equivalent to other KAL methods.Keywords
Funding Information
- NSF (National Science Foundation) (2334628, 2154973)
This publication has 22 references indexed in Scilit:
- UAFSan: an object-identifier-based dynamic approach for detecting use-after-free vulnerabilities2021
- Mimalloc: Free List Sharding in Action2019
- CHERIvoke2019
- SPEC CPU20172018
- Heap bounds protection with low fat pointers2016
- Low-fat pointers2013
- WatchdogACM SIGARCH Computer Architecture News, 2012
- CETS2010
- ThreadSanitizer2009
- SoftBound2009