AAHEG: Automatic Advanced Heap Exploit Generation Based on Abstract Syntax Tree

被引:0
|
作者
Wang, Yu [1 ]
Zhang, Yipeng [2 ]
Li, Zhoujun [1 ]
机构
[1] Beihang Univ, State Key Lab Software Dev Environm, Beijing 100191, Peoples R China
[2] North China Univ Technol, Sch Informat Sci & Technol, Beijing 100144, Peoples R China
来源
SYMMETRY-BASEL | 2023年 / 15卷 / 12期
基金
中国国家自然科学基金;
关键词
automatic exploit generation; heap-related vulnerability; fuzzing; symbolic execution; abstract syntax tree;
D O I
10.3390/sym15122197
中图分类号
O [数理科学和化学]; P [天文学、地球科学]; Q [生物科学]; N [自然科学总论];
学科分类号
07 ; 0710 ; 09 ;
摘要
Automatic Exploit Generation (AEG) involves automatically discovering paths in a program that trigger vulnerabilities, thereby generating exploits. While there is considerable research on heap-related vulnerability detection, such as detecting Heap Overflow and Use After Free (UAF) vulnerabilities, among contemporary heap-automated exploit techniques, only certain automated exploit techniques can hijack program control flow to the shellcode. An important limitation of this approach is that it cannot effectively bypass Linux's protection mechanisms. To solve this problem, we introduced Automatic Advanced Heap Exploit Generation (AAHEG). It first applies symbolic execution to analyze heap-related primitives in files and then detects potential heap-related vulnerabilities without a source code. After identifying these vulnerabilities, AAHEG builds an exploit abstract syntax tree (AST) to identify one or more successful exploit strategies, such as fast bin attack and Safe-unlink. AAHEG then selects exploitable methods via an abstract syntax tree (AST) and performs final testing to produce the final exploit. AAHEG chose to generate advanced heap-related exploits because the exploits can bypass Linux protections. Basically, AAHEG can automatically detect heap-related vulnerabilities in binaries without source code, build an exploit AST, choose from a variety of advanced heap exploit methods, bypass all Linux protection mechanisms, and generate final file-form exploit based on pwntools which can pass local and remote testing. Experimental results show that AAHEG successfully completed vulnerability detection and exploit generation for 20 Capture The Flag (CTF) binary files, 11 of which have all protection mechanisms enabled.
引用
收藏
页数:22
相关论文
共 50 条
  • [21] An automatic approach to detecting and eliminating lazy classes based on abstract syntax trees
    Hu, Zhigang, 1600, Transport and Telecommunication Institute, Lomonosova street 1, Riga, LV-1019, Latvia (18):
  • [22] Automatic patch-based exploit generation is possible: Techniques and implications
    Brumley, David
    Poosankam, Pongsin
    Song, Dawn
    Zheng, Jiang
    PROCEEDINGS OF THE 2008 IEEE SYMPOSIUM ON SECURITY AND PRIVACY, 2008, : 143 - +
  • [23] Automatic code generation based on Abstract Syntax-based encoding. Application on malware detection code generation based on MITRE ATT&CK techniques
    Sirbu, Alexandru-Gabriel
    Czibula, Gabriela
    EXPERT SYSTEMS WITH APPLICATIONS, 2025, 264
  • [24] An Approach of Conformance Verification between Design Models and Code Based on Abstract Syntax Tree
    Liu, Zhao
    Tian, Yang
    Yan, Haihua
    2016 7TH INTERNATIONAL CONFERENCE ON MECHANICAL, INDUSTRIAL, AND MANUFACTURING TECHNOLOGIES (MIMT 2016), 2016, 54
  • [25] Abstract Syntax Tree Based Source Code Antiplagiarism System for Large Projects Set
    Duracik, Michal
    Hrkut, Patrik
    Krsak, Emil
    Toth, Stefan
    IEEE ACCESS, 2020, 8 (08): : 175347 - 175359
  • [26] Novel code plagiarism detection based on abstract syntax tree and fuzzy petri nets
    Wang Y.-Y.
    Shen R.-K.
    Chiou G.-J.
    Yang C.-Y.
    Shen V.R.L.
    Putri F.P.
    International Journal of Engineering Education, 2019, 1 (01): : 46 - 56
  • [27] Improving The Precision of Static Analysis: Symbolic Execution Based on GGCC Abstract Syntax Tree
    Liang, Hongliang
    Liu, Shirun
    Zhang, Yini
    Wang, Meilin
    2017 18TH IEEE/ACIS INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, ARTIFICIAL INTELLIGENCE, NETWORKING AND PARALLEL/DISTRIBUTED COMPUTING (SNDP 2017), 2017, : 395 - 400
  • [28] Simplified abstract syntax tree based semantic features learning for software change prediction
    Yang, Xinyue
    Zhang, Xiaofang
    Tong, Yao
    JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2022, 34 (04)
  • [29] Identification method of similar bugs based on historical software repository and abstract syntax tree
    Gong D.
    Wang T.
    Su X.
    Dong M.
    Xi Tong Gong Cheng Yu Dian Zi Ji Shu/Systems Engineering and Electronics, 2020, 42 (10): : 2399 - 2408
  • [30] Design and implementation of abstract syntax of AADL and code generation based on Spoofax/XL
    School of Computer Science and Engineering, Northwestern Polytechnical University, Xi’an, China
    Int. J. u e Serv. Sci. Technol., 3 (171-178): : 171 - 178