Crash Deduplication using Hybrid Runtime Features and Multi-Structure Neural Network
Fuzzing, widely used across the industry, is a dynamic method to detect vulnerabilities by generating test cases causing program crashes.However, its random mutation often produces duplicate Proof-of-Concept (PoC) test cases, which can be frustrating for researchers.Modern fuzzing methods use execution feedback to deduplicate PoCs, termed crash deduplication.However, inaccurate crash deduplication may miss unique PoCs or increase the analysis workload.Existing approaches rely on limited metrics or models, thus impacting accuracy.We propose a data-driven approach, which leverages hybrid runtime features for crash deduplication.We specifically extract hybrid runtime features, including runtime register, stack, and heap operation features, using the Magma benchmark and a customized dynamic binary translator to construct a training dataset.We also introduce a Multi-Structure Neural Network (MSNN) model to handle hybrid runtime features and optimize it using contrastive learning.Experimental results show our prototype significantly outperforms mainstream industry crash deduplication methods, excelling in both deduplication rate and bug retention.
Authors
- Hang Xu (ORCID: https://orcid.org/0000-0003-4176-0738)
- Jianshan Peng (ORCID: https://orcid.org/0009-0009-4941-1250)
- Liheng Chen (ORCID: https://orcid.org/0000-0001-8404-8797)
- Jiangan Ji
Publication Details
- Journal
- Proceedings/Proceedings of the ... International Conference on Software Engineering and Knowledge Engineering
- Published
- 2024-10-28
- DOI
- https://doi.org/10.18293/seke2024-085
- Primary Topic
- Software Engineering Research
- Type
- article
- Field-Weighted Citation Impact
- 0.00