Enhancing Coverage-Guided Fuzzing via Phantom Program

被引:1
|
作者
Wu, Mingyuan [1 ,2 ,4 ]
Chen, Kunqiu [1 ]
Luo, Qi [1 ]
Xiang, Jiahong [1 ]
Qi, Ji [2 ]
Chen, Junjie [3 ]
Cui, Heming [2 ]
Zhang, Yuqun [1 ,4 ,5 ]
机构
[1] Southern Univ Sci & Technol, Shenzhen, Peoples R China
[2] Univ Hong Kong, Hong Kong, Peoples R China
[3] Tianjin Univ, Coll Intelligence & Comp, Tianjin, Peoples R China
[4] Res Inst Trustworthy Autonomous Syst, Shenzhen, Peoples R China
[5] Guangdong Prov Key Lab Brain inspired Intelligent, Shenzhen, Peoples R China
基金
中国国家自然科学基金;
关键词
Fuzzing; Coverage Guidance; Phantom Program;
D O I
10.1145/3611643.3616294
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
For coverage-guided fuzzers, many of their adopted seeds are usually ineffective by exploring limited program states since essentially all their executions have to abide by rigorous dependencies between program branches while only limited seeds are capable of accessing such dependencies. Moreover, even when iteratively executing such limited seeds, the fuzzers have to repeatedly access the covered program states before uncovering new states. Such facts indicate that exploration power on program states of seeds has not been sufficiently leveraged by the existing coverage-guided fuzzing strategies. To tackle these issues, we propose a coverageguided fuzzer, namely MirageFuzz, to mitigate the dependencies between program branches when executing seeds for enhancing their exploration power on program states. Specifically, MirageFuzz first creates a "phantom" program of the target program by reducing its dependencies corresponding to conditional statements while retaining their original semantics. Accordingly, MirageFuzz performs dual fuzzing, i.e., the source fuzzing to fuzz the original program and the phantom fuzzing to fuzz the phantom program simultaneously. Then, MirageFuzz generates a new seed for the source fuzzing via a taint-based mutation mechanism, i.e., updating the target conditional statement of a given seed from the source fuzzing with its corresponding condition value derived by the phantom fuzzing. To evaluate the effectiveness of MirageFuzz, we build a benchmark suite with 18 projects commonly adopted by recent fuzzing papers, and select nine open-source fuzzers as baselines for performance comparison with MirageFuzz. The experiment results suggest that MirageFuzz outperforms our baseline fuzzers from 13.42% to 77.96% averagely. Furthermore, MirageFuzz exposes 29 previously unknown bugs where 7 of them have been confirmed and 6 have been fixed by the corresponding developers.
引用
收藏
页码:1037 / 1049
页数:13
相关论文
共 50 条
  • [21] Coverage-Guided Tensor Compiler Fuzzing with Joint IR-Pass Mutation
    Liu, Jiawei
    Wei, Yuxiang
    Yang, Sen
    Deng, Yinlin
    Zhang, Lingming
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2022, 6 (OOPSLA):
  • [22] Graphuzz: Data-driven Seed Scheduling for Coverage-guided Greybox Fuzzing
    Xu, Hang
    Chen, Liheng
    Gan, Shuitao
    Zhang, Chao
    Li, Zheming
    Ji, Jiangan
    Chen, Baojian
    Hu, Fan
    [J]. ACM Transactions on Software Engineering and Methodology, 2024, 33 (07)
  • [23] Efficient Cross-Level Processor Verification using Coverage-guided Fuzzing
    Bruns, Niklas
    Herdt, Vladimir
    Grosse, Daniel
    Drechsler, Rolf
    [J]. PROCEEDINGS OF THE 32ND GREAT LAKES SYMPOSIUM ON VLSI 2022, GLSVLSI 2022, 2022, : 97 - 103
  • [24] EPF: An Evolutionary, Protocol-Aware, and Coverage-Guided Network Fuzzing Framework
    Helmke, Rene
    Winter, Eugen
    Rademacher, Michael
    [J]. 2021 18TH INTERNATIONAL CONFERENCE ON PRIVACY, SECURITY AND TRUST (PST), 2021,
  • [25] NDFuzz: a non-intrusive coverage-guided fuzzing framework for virtualized network devices
    Zhang, Yu
    Zhong, Nanyu
    You, Wei
    Zou, Yanyan
    Jian, Kunpeng
    Xu, Jiahuan
    Sun, Jian
    Liu, Baoxu
    Huo, Wei
    [J]. CYBERSECURITY, 2022, 5 (01)
  • [26] Automated SC-MCC test case generation using coverage-guided fuzzing
    Golla, Monika Rani
    Godboley, Sangharatna
    [J]. SOFTWARE QUALITY JOURNAL, 2024, 32 (03) : 849 - 880
  • [27] Alphuzz: Monte Carlo Search on Seed-Mutation Tree for Coverage-Guided Fuzzing
    Zhao, Yiru
    Wang, Xiaoke
    Zhao, Lei
    Cheng, Yueqiang
    Yin, Heng
    [J]. PROCEEDINGS OF THE 38TH ANNUAL COMPUTER SECURITY APPLICATIONS CONFERENCE, ACSAC 2022, 2022, : 534 - 547
  • [28] CatchFuzz: Reliable active anti-fuzzing techniques against coverage-guided fuzzer
    Kim, Hee Yeon
    Lee, Dong Hoon
    [J]. COMPUTERS & SECURITY, 2024, 143
  • [29] A Novel Coverage-guided Greybox Fuzzing based on Power Schedule Optimization with Time Complexity
    Chen, Jinfu
    Wang, Shengran
    Cai, Saihua
    Zhang, Chi
    Chen, Haibo
    Chen, Jingyi
    Zhang, Jianming
    [J]. PROCEEDINGS OF THE 37TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, ASE 2022, 2022,
  • [30] Fw-fuzz: A code coverage-guided fuzzing framework for network protocols on firmware
    Gao, Zicong
    Dong, Weiyu
    Chang, Rui
    Wang, Yisen
    [J]. CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2022, 34 (16):