Back to Search Start Over

CAMP: Compiler and Allocator-based Heap Memory Protection

Authors :
Lin, Zhenpeng
Yu, Zheng
Guo, Ziyi
Campanoni, Simone
Dinda, Peter
Xing, Xinyu
Publication Year :
2024

Abstract

The heap is a critical and widely used component of many applications. Due to its dynamic nature, combined with the complexity of heap management algorithms, it is also a frequent target for security exploits. To enhance the heap's security, various heap protection techniques have been introduced, but they either introduce significant runtime overhead or have limited protection. We present CAMP, a new sanitizer for detecting and capturing heap memory corruption. CAMP leverages a compiler and a customized memory allocator. The compiler adds boundary-checking and escape-tracking instructions to the target program, while the memory allocator tracks memory ranges, coordinates with the instrumentation, and neutralizes dangling pointers. With the novel error detection scheme, CAMP enables various compiler optimization strategies and thus eliminates redundant and unnecessary check instrumentation. This design minimizes runtime overhead without sacrificing security guarantees. Our evaluation and comparison of CAMP with existing tools, using both real-world applications and SPEC CPU benchmarks, show that it provides even better heap corruption detection capability with lower runtime overhead.

Details

Database :
arXiv
Publication Type :
Report
Accession number :
edsarx.2406.02737
Document Type :
Working Paper