HWASanIO: Detecting C/C plus plus Intra-object Overflows with Memory Shading

被引:2
|
作者
Hohentanner, Konrad [1 ]
Kasten, Florian [1 ]
Auer, Lukas [1 ]
机构
[1] Fraunhofer AISEC, Garching, Germany
关键词
memory safety; memory tagging; intra-object overflows; sub-object overflows; dynamic analysis; CHECKING;
D O I
10.1145/3589250.3596139
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
C/C++ are often used in high-performance areas with critical security demands, such as operating systems, browsers, and libraries. One major drawback from a security standpoint is their susceptibility to memory bugs, which are often hard to spot during development. A possible solution is the deployment of a memory safety framework such as the memory tagging framework Hardware-assisted Address-Sanitizer (HWASan). The dynamic analysis tool instruments object allocations and inserts additional check logic to detect memory violations during runtime. A current limitation of memory tagging is its inability to detect intra-object memory violations i.e., over- and underflows between flelds and members of structs and classes. This work addresses the issue by applying the concept of memory shading to memory tagging. We then present HWASanIO, a HWASan-based sanitizer implementing the memory shading concept to detect intra-object violations. Our evaluation shows that this increases the bug detection rate from 85.4% to 100% in the memory corruptions test cases of the Juliet Test Suite while maintaining high interoperability with existing C/C++ code.
引用
收藏
页码:27 / 33
页数:7
相关论文
共 50 条
  • [1] On Monitoring C/C plus plus Transactional Memory Programs
    Fiedor, Jan
    Letko, Zdenek
    Lourenco, Joao
    Vojnar, Tomas
    MATHEMATICAL AND ENGINEERING METHODS IN COMPUTER SCIENCE, MEMICS 2014, 2014, 8934 : 73 - 87
  • [2] Detecting Memory-Related Bugs by Tracking Heap Memory Management of C plus plus Smart Pointers
    Ma, Xutong
    Yan, Jiwei
    Wang, Wei
    Yan, Jun
    Zhang, Jian
    Qiu, Zongyan
    2021 36TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING ASE 2021, 2021, : 880 - 891
  • [3] Agent programming with object oriented (C plus plus )
    Rezaeiye, Payam Porkar
    Rezaeiye, Pasha Porker
    Beig, Esmaeil Fakhimi Gheshlagh Mohammad
    Mohseni, Hamed
    Kaviani, Rona
    Gheisari, Mehdi
    Golzar, Mina
    PROCEEDINGS OF THE 2017 IEEE SECOND INTERNATIONAL CONFERENCE ON ELECTRICAL, COMPUTER AND COMMUNICATION TECHNOLOGIES (ICECCT), 2017,
  • [4] Enhanced Memory Corruption Detection in C/C plus plus Programs
    Lin, Ching-Yi
    Yang, Wuu
    PROCEEDINGS OF THE 52ND INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING WORKSHOPS PROCEEDINGS, ICPP-W 2023, 2023, : 71 - 78
  • [5] MESH: Compacting Memory Management for C/C plus plus Applications
    Powers, Bobby
    Tench, David
    Berger, Emery D.
    McGregor, Andrew
    PROCEEDINGS OF THE 40TH ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION (PLDI '19), 2019, : 333 - 346
  • [6] Cosmo plus plus : An object-oriented C plus plus library for cosmology
    Aslanyan, Grigor
    COMPUTER PHYSICS COMMUNICATIONS, 2014, 185 (12) : 3215 - 3227
  • [7] Detecting Exception Handling Bugs in C plus plus Programs
    Zhang, Hao
    Luo, Ji
    Hu, Mengze
    Yan, Jun
    Zhang, Jian
    Qiu, Zongyan
    2023 IEEE/ACM 45TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, ICSE, 2023, : 1084 - 1095
  • [8] Foundations of the C plus plus Concurrency Memory Model
    Boehm, Hans-J.
    Adve, Sarita V.
    PLDI'08: PROCEEDINGS OF THE 2008 SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN & IMPLEMENTATION, 2008, : 68 - 78
  • [9] A Comprehensive Detection of Memory Corruption Vulnerabilities for C/C plus plus Programs
    Gao, Yuhan
    Chen, Liwei
    Shi, Gang
    Zhang, Fei
    2018 IEEE INT CONF ON PARALLEL & DISTRIBUTED PROCESSING WITH APPLICATIONS, UBIQUITOUS COMPUTING & COMMUNICATIONS, BIG DATA & CLOUD COMPUTING, SOCIAL COMPUTING & NETWORKING, SUSTAINABLE COMPUTING & COMMUNICATIONS, 2018, : 354 - 360
  • [10] Detecting and Eliminating Potential Violation of Sequential Consistency for Concurrent C/C plus plus Programs
    Duan, Yuelu
    Feng, Xiaobing
    Wang, Lei
    Zhang, Chao
    Yew, Pen-Chung
    CGO 2009: INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, PROCEEDINGS, 2009, : 25 - +