MobFuzz: Adaptive Multi-objective Optimization in Gray-box Fuzzing

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Zhang, Gen, Wang, Pengfei, Yue, Tai, Kong, Xiangdong, Huang, Shan, Zhou, Xu, Lu, Kai
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866913214776737792
author Zhang, Gen
Wang, Pengfei
Yue, Tai
Kong, Xiangdong
Huang, Shan
Zhou, Xu
Lu, Kai
author_facet Zhang, Gen
Wang, Pengfei
Yue, Tai
Kong, Xiangdong
Huang, Shan
Zhou, Xu
Lu, Kai
contents Coverage-guided gray-box fuzzing (CGF) is an efficient software testing technique. There are usually multiple objectives to optimize in CGF. However, existing CGF methods cannot successfully find the optimal values for multiple objectives simultaneously. In this paper, we propose a gray-box fuzzer for multi-objective optimization (MOO) called MobFuzz. We model the multi-objective optimization process as a multi-player multi-armed bandit (MPMAB). First, it adaptively selects the objective combination that contains the most appropriate objectives for the current situation. Second, our model deals with the power schedule, which adaptively allocates energy to the seeds under the chosen objective combination. In MobFuzz, we propose an evolutionary algorithm called NIC to optimize our chosen objectives simultaneously without incurring additional performance overhead. To prove the effectiveness of MobFuzz, we conduct experiments on 12 real-world programs and the MAGMA data set. Experiment results show that multi-objective optimization in MobFuzz outperforms single-objective fuzzing in the baseline fuzzers. In contrast to them, MobFuzz can select the optimal objective combination and increase the values of multiple objectives up to 107%, with at most a 55% reduction in the energy consumption. Moreover, MobFuzz has up to 6% more program coverage and finds 3x more unique bugs than the baseline fuzzers. The NIC algorithm has at least a 2x improvement with a performance overhead of approximately 3%.
format Preprint
id arxiv_https___arxiv_org_abs_2401_15956
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle MobFuzz: Adaptive Multi-objective Optimization in Gray-box Fuzzing
Zhang, Gen
Wang, Pengfei
Yue, Tai
Kong, Xiangdong
Huang, Shan
Zhou, Xu
Lu, Kai
Cryptography and Security
Software Engineering
Coverage-guided gray-box fuzzing (CGF) is an efficient software testing technique. There are usually multiple objectives to optimize in CGF. However, existing CGF methods cannot successfully find the optimal values for multiple objectives simultaneously. In this paper, we propose a gray-box fuzzer for multi-objective optimization (MOO) called MobFuzz. We model the multi-objective optimization process as a multi-player multi-armed bandit (MPMAB). First, it adaptively selects the objective combination that contains the most appropriate objectives for the current situation. Second, our model deals with the power schedule, which adaptively allocates energy to the seeds under the chosen objective combination. In MobFuzz, we propose an evolutionary algorithm called NIC to optimize our chosen objectives simultaneously without incurring additional performance overhead. To prove the effectiveness of MobFuzz, we conduct experiments on 12 real-world programs and the MAGMA data set. Experiment results show that multi-objective optimization in MobFuzz outperforms single-objective fuzzing in the baseline fuzzers. In contrast to them, MobFuzz can select the optimal objective combination and increase the values of multiple objectives up to 107%, with at most a 55% reduction in the energy consumption. Moreover, MobFuzz has up to 6% more program coverage and finds 3x more unique bugs than the baseline fuzzers. The NIC algorithm has at least a 2x improvement with a performance overhead of approximately 3%.
title MobFuzz: Adaptive Multi-objective Optimization in Gray-box Fuzzing
topic Cryptography and Security
Software Engineering
url https://arxiv.org/abs/2401.15956