C/C++ Bounds Checking with Low-Fat Pointers
Roland Yap
School of Computing, National University of Singapore
Abstract
Memory errors are still one of the main causes of software vulnerabilities
and bugs.
Low-Fat bounds checking is a new approach for detecting spatial memory errors
(bounds errors) using a novel pointer representation, low-fat pointers.
The main advantages of Low-Fat bounds checking are:
- Compatibility: low-fat pointers look like ordinary pointers which
helps to achieve high binary compatibility.
- Speed: it is fast relative to many bounds-checking systems
- Low Memory Usage: the memory overheads are low as very little meta-data is required.
More details and a prototype release of the Low-Fat bounds checker are
on GitHub.
People
Roland Yap
Gregory Duck
Publications
Heap Bounds Protection with Low Fat Pointers [pdf]
by Gregory J. Duck and Roland H. C. Yap
International Conference on Compiler Construction (CC'16)
Stack Bounds Protection with Low Fat Pointers [pdf]
by Gregory J. Duck, Roland H. C. Yap and Lorenzo Cavallaro
The Network and Distributed System Security Symposium (NDSS'17)
|