OSCRSep 8, 2017

FreeGuard: A Faster Secure Heap Allocator

arXiv:1709.02746v271 citations
AI Analysis

This addresses security vulnerabilities in software systems by providing a faster secure heap allocator, representing a significant improvement over existing secure allocators that suffer from high performance overhead.

The paper tackles the problem of heap-related attacks by introducing FreeGuard, a secure memory allocator that prevents or reduces a wide range of attacks, such as heap overflows and use-after-frees, while achieving similar performance to the default Linux allocator with less than 2% overhead on average.

In spite of years of improvements to software security, heap-related attacks still remain a severe threat. One reason is that many existing memory allocators fall short in a variety of aspects. For instance, performance-oriented allocators are designed with very limited countermeasures against attacks, but secure allocators generally suffer from significant performance overhead, e.g., running up to 10x slower. This paper, therefore, introduces FreeGuard, a secure memory allocator that prevents or reduces a wide range of heap-related attacks, such as heap overflows, heap over-reads, use-after-frees, as well as double and invalid frees. FreeGuard has similar performance to the default Linux allocator, with less than 2% overhead on average, but provides significant improvement to security guarantees. FreeGuard also addresses multiple implementation issues of existing secure allocators, such as the issue of scalability. Experimental results demonstrate that FreeGuard is very effective in defending against a variety of heap-related attacks.

Code Implementations1 repo
Foundations

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

Your Notes