Detecting Heap Smashing Attacks Through Fault Containment Wrappers

Research output: Contribution to conferencesPaperContributedpeer-review

Contributors

Abstract

Buffer overflow attacks are a major cause of security breaches in modern operating systems. Not only are overflows of buffers on the stack a security threat, overflows of buffers kept on the heap can be too. A malicious user might be able to hijack the control flow of a root-privileged program if the user can initiate an overflow of a buffer on the heap when this overflow overwrites a function pointer stored on the heap. The paper presents a fault-containment wrapper which provides effective and efficient protection against heap buffer overflows caused by C library functions. The wrapper intercepts every function call to the C library that can write to the heap and performs careful boundary checks before it calls the original function. This method is transparent to existing programs and does not require source code modification or recompilation. Experimental results on Linux machines indicate that the performance overhead is small.

Details

Original languageEnglish
Pages80-89
Number of pages10
Publication statusPublished - 2001
Peer-reviewedYes

Conference

Title20th IEEE Symposium on Reliable Distributed Systems
Abbreviated titleRELDIS 2001
Conference number
Duration31 October 2001
Degree of recognitionInternational event
Location
CityNew Orleans
CountryUnited States of America

External IDs

Scopus 0035195201

Keywords

Research priority areas of TU Dresden

DFG Classification of Subject Areas according to Review Boards

Keywords

  • Fault detection, Buffer storage, Security, Boffer overflow, operating systems, Libraries, FAult tolerant systems, Debugging, Protection, Linux, buffer storage, computer crime, C language, program diagnostics, heap smashing attack detection, fault containment wappers, buffer overflow attacks, Security breaches, modern operating systems, security threat, malicious user, control flow, root-privileded program, function pointer, fault-containment wrapper, heap buffer overflows, C library functions, function call, boundary checks, Linux machines, performance overhead