Fuzz Testing Process Visualization

被引:0
|
作者
Lu, Han-Lin [1 ]
Zhuang, Ren-Jie [1 ]
Huang, Shih-Kun [1 ,2 ]
机构
[1] Natl Yang Ming Chiao Tung Univ, Dept Comp Sci, Hsinchu 300, Taiwan
[2] Natl Yang Ming Chiao Tung Univ, Informat Technol Serv Ctr, Hsinchu 300, Taiwan
关键词
big data; knowledge management; knowledge creation; knowledge application; technology; Cynefin framework;
D O I
10.6688/JISE.202309_39(5).0003
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
The conventional fuzz testing process consists of an input mutation, an execution to test the program, monitoring, and information collection to discover bugs and security vulnerabilities. However, practical programs have more features and complex logic, and legacy mutation strategies cannot reach a deeper path to find potential bugs. A solution to this problem is to analyze the input seeds and employ test harnesses for the testing flows. This study proposes an interactive visualization tool called FuzzInspector for fuzz testing. We implemented a visualizer mode on AFL++ to generate test data for a binary analysis tool (Qiling framework and Radare2). We then visualized the controlflow graph and execution path information. This method does not require the source code and reduces the performance overhead. We also implemented an interactive user interface for the user to set the breakpoint, seed, register, and memory address and send the request to the Qiling framework for dynamic analysis. Moreover, the seed constraint can assist the fuzzer in generating a formatted seed for exploring a specific execution path. We evaluated the search time using a known approach to common vulnerabilities and exposures (CVE) and found that the search for bugs with constraints is 15 to 20 times faster than that without constraints. Moreover, we introduced a dynamic analysis feature to find controllable data and assist the exploit development process.
引用
收藏
页码:1037 / 1059
页数:23
相关论文
共 50 条
  • [41] Efficient Fuzz Testing Leveraging Input, Code, and Execution
    Havrikov, Nikolas
    PROCEEDINGS OF THE 2017 IEEE/ACM 39TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION (ICSE-C 2017), 2017, : 417 - 420
  • [42] Deep Learning Fuzz Testing Methods for Unstructured Case
    Yu, Haotian
    Li, Xiaoguang
    Du, Yuefeng
    2022 IEEE 22ND INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY, RELIABILITY, AND SECURITY COMPANION, QRS-C, 2022, : 772 - 773
  • [43] Fuzz Testing Technique and its Use in Cybersecurity Tasks
    Letychevskyi, O. O.
    Peschanenko, V. S.
    Hryniuk, Y., V
    CYBERNETICS AND SYSTEMS ANALYSIS, 2022, 58 (01) : 157 - 163
  • [44] A survey on fuzz testing technologies for industrial control protocols
    Wei, Xiaoyan
    Yan, Zheng
    Liang, Xueqin
    JOURNAL OF NETWORK AND COMPUTER APPLICATIONS, 2024, 232
  • [45] EVMFuzz: Differential fuzz testing of Ethereum virtual machine
    Fu, Ying
    Ren, Meng
    Ma, Fuchen
    Yang, Xin
    Shi, Heyuan
    Li, Shanshan
    Liao, Xiangke
    JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2024, 36 (04)
  • [46] Billions and Billions of Constraints: Whitebox Fuzz Testing in Production
    Bounimova, Ella
    Godefroid, Patrice
    Molnar, David
    PROCEEDINGS OF THE 35TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2013), 2013, : 122 - 131
  • [47] Finding Specification Blind Spots via Fuzz Testing
    Ji, Ru
    Xu, Meng
    2023 IEEE SYMPOSIUM ON SECURITY AND PRIVACY, SP, 2023, : 2708 - 2725
  • [48] Fuzz Testing & Software Composition Analysis in Software Engineering
    Yang, Eugene
    2018 INTERNATIONAL SYMPOSIUM ON VLSI DESIGN, AUTOMATION AND TEST (VLSI-DAT), 2018,
  • [49] DeltaFuzz: Historical Version Information Guided Fuzz Testing
    Zhang, Jia-Ming
    Cui, Zhan-Qi
    Chen, Xiang
    Wu, Huan-Huan
    Zheng, Li-Wei
    Liu, Jian-Bin
    JOURNAL OF COMPUTER SCIENCE AND TECHNOLOGY, 2022, 37 (01) : 29 - 49
  • [50] Fuzz Testing Technique and its Use in Cybersecurity Tasks
    O. O. Letychevskyi
    V. S. Peschanenko
    Y. V. Hryniuk
    Cybernetics and Systems Analysis, 2022, 58 : 157 - 163