MEUZZ: Smart Seed Scheduling for Hybrid Fuzzing

02/20/2020
by   Yaohui Chen, et al.
3

Seed scheduling is a prominent factor in determining the yields of hybrid fuzzing. Existing hybrid fuzzers schedule seeds based on fixed heuristics that aim to predict input utilities. However, such heuristics are not generalizable as there exists no one-size-fits-all rule applicable to different programs. They may work well on the programs from which they were derived, but not others. To overcome this problem, we design a Machine learning-Enhanced hybrid fUZZing system (MEUZZ), which employs supervised machine learning for adaptive and generalizable seed scheduling. MEUZZ determines which new seeds are expected to produce better fuzzing yields based on the knowledge learned from past seed scheduling decisions made on the same or similar programs. MEUZZ's learning is based on a series of features extracted via code reachability and dynamic analysis, which incurs negligible runtime overhead (in microseconds). Moreover, MEUZZ automatically infers the data labels by evaluating the fuzzing performance of each selected seed. As a result, MEUZZ is generally applicable to, and performs well on, various kinds of programs. Our evaluation shows MEUZZ significantly outperforms the state-of-the-art grey-box and hybrid fuzzers, achieving 27.1 learned models are reusable and transferable, which boosts fuzzing performance by 7.1 MEUZZ discovered 47 deeply hidden and previously unknown bugs–with 21 confirmed and fixed by the developers–when fuzzing 8 well-tested programs with the same configurations as used in previous work.

READ FULL TEXT

page 5

page 12

research
03/22/2022

Effective Seed Scheduling for Fuzzing with Graph Centrality Analysis

Seed scheduling, the order in which seeds are selected, can greatly affe...
research
07/31/2020

MUZZ: Thread-aware Grey-box Fuzzing for Effective Bug Hunting in Multithreaded Programs

Grey-box fuzz testing has revealed thousands of vulnerabilities in real-...
research
08/07/2017

Pseudorandom Bits for Oblivious Branching Programs

We construct a pseudorandom generator which fools read-k oblivious branc...
research
12/19/2022

Explainable Fuzzer Evaluation

While the aim of fuzzer evaluation is to establish fuzzer performance in...
research
05/24/2023

Debiasing Made State-of-the-art: Revisiting the Simple Seed-based Weak Supervision for Text Classification

Recent advances in weakly supervised text classification mostly focus on...
research
08/19/2018

Pseudorandom Generators for Read-Once Branching Programs, in any Order

A central question in derandomization is whether randomized logspace (RL...
research
01/16/2019

Beyond Uniform Reverse Sampling: A Hybrid Sampling Technique for Misinformation Prevention

Online misinformation has been considered as one of the top global risks...

Please sign up or login with your details

Forgot password? Click here to reset