Guiding Greybox Fuzzing with Mutation Testing

被引:9
|
作者
Vikram, Vasudev [1 ]
Laybourn, Isabella [1 ]
Li, Ao [1 ]
Nair, Nicole [2 ]
OBrien, Kelton [3 ]
Sanna, Rafaello [4 ]
Padhye, Rohan [1 ]
机构
[1] Carnegie Mellon Univ, Pittsburgh, PA 15213 USA
[2] Swarthmore Coll, Swarthmore, PA 19081 USA
[3] Univ Minnesota, Minneapolis, MN 55417 USA
[4] Univ Rochester, Rochester, NY 14627 USA
关键词
fuzz testing; mutation testing; test generation;
D O I
10.1145/3597926.3598107
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Greybox fuzzing and mutation testing are two popular but mostly independent fields of software testing research that have so far had limited overlap. Greybox fuzzing, generally geared towards searching for new bugs, predominantly uses code coverage for selecting inputs to save. Mutation testing is primarily used as a stronger alternative to code coverage in assessing the quality of regression tests; the idea is to evaluate tests for their ability to identify artificially injected faults in the target program. But what if we wanted to use greybox fuzzing to synthesize high-quality regression tests? In this paper, we develop and evaluate Mu2, a Java-based framework for incorporating mutation analysis in the greybox fuzzing loop, with the goal of producing a test-input corpus with a high mutation score. Mu2 makes use of a differential oracle for identifying inputs that exercise interesting program behavior without causing crashes. This paper describes several dynamic optimizations implemented in Mu2 to overcome the high cost of performing mutation analysis with every fuzzer-generated input. These optimizations introduce trade-offs in fuzzing throughput and mutation killing ability, which we evaluate empirically on five real-world Java benchmarks. Overall, variants of Mu2 are able to synthesize test-input corpora with a higher mutation score than state-of-the-art Java fuzzer Zest.
引用
收藏
页码:929 / 941
页数:13
相关论文
共 50 条
  • [1] Guiding Greybox Fuzzing with Mutation Testing
    Carnegie Mellon University, Pittsburgh
    PA, United States
    不详
    PA, United States
    不详
    MN, United States
    不详
    NY, United States
    ISSTA - Proc. ACM SIGSOFT Int. Symp. Softw. Test. Anal., 1600, (929-941):
  • [2] Regression Greybox Fuzzing
    Zhu, Xiaogang
    Boehme, Marcel
    CCS '21: PROCEEDINGS OF THE 2021 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2021, : 2169 - 2182
  • [3] Learning Seed-Adaptive Mutation Strategies for Greybox Fuzzing
    Lee, Myungho
    Cha, Sooyoung
    Oh, Hakjoo
    2023 IEEE/ACM 45TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, ICSE, 2023, : 384 - 396
  • [4] Directed Greybox Fuzzing
    Bohme, Marcel
    Van-Thuan Pham
    Manh-Dung Nguyen
    Roychoudhury, Abhik
    CCS'17: PROCEEDINGS OF THE 2017 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2017, : 2329 - 2344
  • [5] Stateful Greybox Fuzzing
    Ba, Jinsheng
    Bohme, Marcel
    Mirzamomen, Zahra
    Roychoudhury, Abhik
    PROCEEDINGS OF THE 31ST USENIX SECURITY SYMPOSIUM, 2022, : 3255 - 3272
  • [6] Smart Greybox Fuzzing
    Pham, Van-Thuan
    Bohme, Marcel
    Santosa, Andrew E.
    Caciulescu, Alexandru Razvan
    Roychoudhury, Abhik
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2021, 47 (09) : 1980 - 1997
  • [7] Principled Greybox Fuzzing
    Li, Yuekang
    FORMAL METHODS AND SOFTWARE ENGINEERING, ICFEM 2018, 2018, 11232 : 455 - 458
  • [8] Greybox Fuzzing of Distributed Systems
    Meng, Ruijie
    Pirlea, George
    Roychoudhury, Abhik
    Sergey, Ilya
    PROCEEDINGS OF THE 2023 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, CCS 2023, 2023, : 1615 - 1629
  • [9] Adaptive mutation based on multi-population evolution strategy for greybox fuzzing
    Jiao, Weihua
    Li, Xilong
    Li, Qingbao
    Cao, Fei
    Li, Xiaonan
    Yue, Shudan
    INFORMATION SCIENCES, 2025, 705
  • [10] Multiple Targets Directed Greybox Fuzzing
    Liang, Hongliang
    Yu, Xinglin
    Cheng, Xianglin
    Liu, Jie
    Li, Jin
    IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, 2024, 21 (01) : 325 - 339