A Comprehensive Detection of Memory Corruption Vulnerabilities for C/C plus plus Programs

被引:7
|
作者
Gao, Yuhan [1 ,2 ]
Chen, Liwei [1 ]
Shi, Gang [1 ]
Zhang, Fei [1 ,2 ]
机构
[1] Chinese Acad Sci, Inst Informat Engn, Beijing, Peoples R China
[2] Univ Chinese Acad Sci, Sch Cyber Secur, Beijing, Peoples R China
来源
2018 IEEE INT CONF ON PARALLEL & DISTRIBUTED PROCESSING WITH APPLICATIONS, UBIQUITOUS COMPUTING & COMMUNICATIONS, BIG DATA & CLOUD COMPUTING, SOCIAL COMPUTING & NETWORKING, SUSTAINABLE COMPUTING & COMMUNICATIONS | 2018年
基金
中国国家自然科学基金;
关键词
memory corruption; vulnerability detection; static analysis; unsafe operations;
D O I
10.1109/BDCloud.2018.00062
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Memory corruption bugs in software written in low-level languages like C or C++ are one of the oldest problems in computer security. These unsafe languages are vulnerable to errors relating to the misuse of memory, such as buffer overflows, use-after-free. The exploit of these vulnerabilities allows attackers to tamper or even take full control over the program. In this paper, we propose a lightweight and comprehensive vulnerability detection approach for memory corruption defects in programs written in C or C++. The approach is based on identification of the unsafe operations in source code, including both invalid memory writes and reads. Supporting by flow-sensitive point-to analysis with LLVM and Datalog, and extracted information from abstract syntax tree, our method can analyze the potential memory corruption vulnerabilities in the source code. We evaluate our approach against the SPEC 2006 benchmark suite and Juliet test suite. We also show that the approach achieves high compatibility and reasonable overheads for detection.
引用
收藏
页码:354 / 360
页数:7
相关论文
共 50 条
  • [41] An Empirical Study of C plus plus Vulnerabilities in Crowd-Sourced Code Examples
    Verdi, Morteza
    Sami, Ashkan
    Akhondali, Jafar
    Khomh, Foutse
    Uddin, Gias
    Motlagh, Alireza Karami
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2022, 48 (05) : 1497 - 1514
  • [42] Shared Memory Parallelism in Modern C plus plus and HPX
    Diehl, Patrick
    Brandt, Steven R.
    Kaiser, Hartmut
    ASYNCHRONOUS MANY-TASK SYSTEMS AND APPLICATIONS, WAMTA 2023, 2023, 13861 : 27 - 38
  • [43] A Resizable C plus plus Container using Virtual Memory
    Rojc, Blaz
    Depolli, Matjaz
    PROCEEDINGS OF THE 16TH INTERNATIONAL CONFERENCE ON SOFTWARE TECHNOLOGIES (ICSOFT), 2021, : 481 - 488
  • [44] Techniques for Memory-Efficient Model Checking of C and C plus plus Code
    Rockai, Petr
    Still, Vladimir
    Barnat, Jiri
    SOFTWARE ENGINEERING AND FORMAL METHODS, 2015, 9276 : 268 - 282
  • [45] CHERI: Hardware-Enabled C/C plus plus Memory Protection at Scale
    Watson, Robert N. M.
    Chisnall, David
    Clarke, Jessica
    Davis, Brooks
    Filardo, Nathaniel Wesley
    Laurie, Ben
    Moore, Simon W.
    Neumann, Peter G.
    Richardson, Alexander
    Sewell, Peter
    Witaszczyk, Konrad
    Woodruff, Jonathan
    IEEE SECURITY & PRIVACY, 2024, 22 (04) : 50 - 61
  • [46] Analysis of Entities in C and C plus plus Programs and Relations between Them for Program Understanding
    Belevantsev, A. A.
    Veselevich, E. A.
    Ivannikov, V. P.
    PROGRAMMING AND COMPUTER SOFTWARE, 2016, 42 (01) : 49 - 53
  • [47] Advances in the ANaConDA Framework for Dynamic Analysis and Testing of Concurrent C/C plus plus Programs
    Fiedor, Jan
    Muzikovska, Monika
    Smrcka, Ales
    Vasicek, Ondrej
    Vojnar, Tomas
    ISSTA'18: PROCEEDINGS OF THE 27TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, 2018, : 356 - 359
  • [48] Empirical Study of Software Composition Analysis Tools for C/C plus plus Binary Programs
    Ning, Yuqiao
    Zhang, Yanan
    Ma, Chao
    Guo, Zhen
    Yu, Longhai
    IEEE ACCESS, 2024, 12 (50418-50430) : 50418 - 50430
  • [49] 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 - +
  • [50] Scalable data structure detection and classification for C/C plus plus binaries
    Haller, Istvan
    Slowinska, Asia
    Bos, Herbert
    EMPIRICAL SOFTWARE ENGINEERING, 2016, 21 (03) : 778 - 810