Module libafl::mutators

source ·
Expand description

Mutators mutate input during fuzzing.

Re-exports

pub use scheduled::*;
pub use mutations::*;
pub use token_mutations::*;
pub use encoded_mutations::*;
pub use mopt_mutator::*;
pub use gramatron::*;
pub use grimoire::*;
pub use tuneable::*;

Modules

Gramatron is the rewritten gramatron fuzzer in rust. See the original gramatron repo Gramatron for more details.
Grimoire is the rewritten grimoire mutator in rust. See the original repo Grimoire for more details.
A wide variety of mutations used during fuzzing.
The ScheduledMutator schedules multiple mutations internally.
Tokens are what AFL calls extras or dictionaries. They may be inserted as part of mutations during fuzzing.
An extension to the ScheduledMutator which schedules multiple mutations internally. Instead of a random mutator for a random amount of iterations, we can run a specific mutator for a specified amount of iterations

Structs

The index of a mutation in the mutations tuple

Enums

The result of a mutation. If the mutation got skipped, the target will not be executed with the returned input.

Traits

A mutator takes input, and mutates it. Simple as that.
A Tuple of Mutators that can execute multiple Mutators in a row.