SymBisect: Accurate Bisection for Fuzzer-Exposed Vulnerabilities

Authors: 

Zheng Zhang and Yu Hao, UC Riverside; Weiteng Chen, Microsoft Research; Xiaochen Zou, Xingyu Li, Haonan Li, Yizhuo Zhai, and Zhiyun Qian, UC Riverside; Billy Lau, Google

Abstract: 

The popularity of fuzzing has led to its tight integration into the software development process as a routine part of the build and test, i.e., continuous fuzzing. This has resulted in a substantial increase in the reporting of bugs in open-source software, including the Linux kernel. To keep up with the volume of bugs, it is crucial to automatically analyze the bugs to assist developers and maintainers. Bug bisection, i.e., locating the commit that introduced a vulnerability, is one such analysis that can reveal the range of affected software versions and help bug prioritization and patching. However, existing automated solutions fall short in a number of ways: most of them either (1) directly run the same PoC on older software versions without adapting to changes in bug-triggering conditions and are prone to broken dynamic environments or (2) require patches that may not be available when the bug is discovered. In this work, we take a different approach to looking for evidence of fuzzer-exposed vulnerabilities by looking for the underlying bug logic. In this way, we can perform bug bisection much more precisely and accurately. Specifically, we apply underconstrained symbolic execution with several principled guiding techniques to search for the presence of the bug logic efficiently. We show that our approach achieves significantly better accuracy than the state-of-the-art solution by 16% (from 74.7% to 90.7%).

Open Access Media

USENIX is committed to Open Access to the research presented at our events. Papers and proceedings are freely available to everyone once the event begins. Any video, audio, and/or slides that are posted after the event are also free and open to everyone. Support USENIX and our commitment to Open Access.

BibTeX
@inproceedings {299527,
author = {Zheng Zhang and Yu Hao and Weiteng Chen and Xiaochen Zou and Xingyu Li and Haonan Li and Yizhuo Zhai and Billy Lau},
title = {{SymBisect}: Accurate Bisection for {Fuzzer-Exposed} Vulnerabilities},
booktitle = {33rd USENIX Security Symposium (USENIX Security 24)},
year = {2024},
isbn = {978-1-939133-44-1},
address = {Philadelphia, PA},
pages = {2493--2510},
url = {https://www.usenix.org/conference/usenixsecurity24/presentation/zhang-zheng},
publisher = {USENIX Association},
month = aug
}

Presentation Video