DocumentCode
588664
Title
Baggy Bounds with Accurate Checking
Author
Baozeng Ding ; Yeping He ; Yanjun Wu ; Miller, Alice ; Criswell, John
fYear
2012
fDate
27-30 Nov. 2012
Firstpage
195
Lastpage
200
Abstract
Baggy Bounds Checking is a backward-compatible defense against out-of-bounds errors. It is reported as being faster than any previous bounds checking tool. However, it enforces allocation bounds instead of object bounds and thus cannot detect memory errors that are in padding areas. In this paper, we present BBAC: a technique that extends Baggy Bounds Checking to enforce accurate bounds checking. The key insight behind our approach is to store the object size at the end of the padding area, making it efficient to lookup object bounds meta-data at runtime. We show experimentally that BBAC can detect more memory errors than Baggy Bounds Checking. Our experiments also show that BBAC only adds an additional 4.39% performance overhead over the original Baggy Bounds Checking technique for the Olden benchmarks and 2x overhead at most on the real-world applications we tested.
Keywords
digital storage; meta data; program verification; system monitoring; BBAC; accurate bounds checking; allocation bounds; backward-compatible defense; baggy bounds checking; bounds checking tool; memory errors; meta-data; object bounds; out-of-bounds errors; performance overhead; Instruments; Libraries; Linux; Memory management; Resource management; Runtime; Safety; bounds checking; buffer overflow; memory safety;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Reliability Engineering Workshops (ISSREW), 2012 IEEE 23rd International Symposium on
Conference_Location
Dallas, TX
Print_ISBN
978-1-4673-5048-8
Type
conf
DOI
10.1109/ISSREW.2012.24
Filename
6405441
Link To Document