• 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