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
Mutations for
EncodedInput
sGramatron 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.The
MOpt
mutator scheduler, see https://github.com/puppet-meteor/MOpt-AFL and https://www.usenix.org/conference/usenixsecurity19/presentation/lyuA 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 iterationsStructs
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.