Swinburne
Browse

ShapFuzz: Efficient Fuzzing via Shapley-Guided Byte Selection

Download (2.02 MB)
conference contribution
posted on 2024-11-19, 05:54 authored by Kunpeng Zhang, Xiaogang ZhuXiaogang Zhu, Xi Xiao, Minhui Xue, Chao Zhang, Sheng WenSheng Wen

Mutation-based fuzzing is a popular and effective method for bug exposure and discovery of unseen code in programs. However, only a few studies have focused on quantifying the importance of input bytes. The importance of each input byte is determined by its contribution degree in discovering new code. Previous work often focused on obtaining the relationship between input bytes and path constraints, ignoring the fact that not all constraint-related bytes can discover new code. In this paper, we conduct Shapley analysis to understand the effect of byte positions on fuzzing performance, and find that some byte positions contribute more than others and this property often holds across different seeds. Based on this observation, we propose a novel solution, called SHAPFUZZ, to guide byte selection and mutation in fuzzing processes. Specifically, SHAPFUZZ updates Shapley values (importance) of bytes when each input is tested during fuzzing with a low overhead. It utilizes contextual multiarmed bandit algorithm to make a trade off between mutating high Shapley value bytes and low-frequently chosen bytes. We implement a prototype of this solution based on AFL++, i.e., SHAPFUZZ, and evaluate it against ten state-of-the-art fuzzers, including five byte-scheduling fuzzers and five commonly used fuzzers. Compared to byte-scheduling fuzzers, SHAPFUZZ discovers more edges. It also exposes more bugs than the best baseline on three different sets of initial seeds. SHAPFUZZ exposes 20 more bugs than the best commonly used fuzzers, and discovers 6 more CVEs than the baseline on MAGMA. Furthermore, SHAPFUZZ discovers 11 new bugs on the latest versions of 6 widely used programs, and 3 bugs of them are confirmed by vendors.

Funding

Attribution of Machine-generated Code for Accountability

Australian Research Council

Find out more...

History

Available versions

Accepted manuscript

ISBN

1891562932

Conference name

Network and Distributed System Security (NDSS) Symposium 2024

Location

San Diego, CA, USA

Start date

2024-02-26

End date

2024-03-01

Article number

134

Pagination

1-16

Publisher

Internet Society

Copyright statement

Copyright © 2024 Kunpeng Zhang, Xiaogang Zhu, Xi Xiao, Minhui Xue, Chao Zhang and Sheng Wen. This is the author's final peer-reviewed accepted manuscript, hosted under the terms and conditions of the Creative Commons Attribution 4.0 (CC BY 4.0) licence.

Language

eng

Usage metrics

    Publications

    Keywords

    Licence

    Exports

    RefWorks
    BibTeX
    Ref. manager
    Endnote
    DataCite
    NLM
    DC