CyberGlossary

Application Security

Mutation Fuzzing

Also known as: Mutational fuzzing, Sample-based fuzzing

Definition

A fuzz testing strategy that derives new test inputs by randomly mutating existing valid samples, such as flipping bits, inserting bytes or splicing files.

Mutation fuzzers start with a corpus of valid inputs — sample images, network packets, documents — and apply small random changes (bit flips, byte substitutions, block deletions, splices) to generate new candidates. Unlike generation-based fuzzers, they do not need a grammar of the input format, which makes them quick to deploy on any parser or protocol. When combined with coverage feedback, mutation fuzzers like AFL++ and libFuzzer can quickly evolve inputs that explore deep code paths and trigger memory-safety bugs. They are widely used to harden codecs, file parsers, kernel drivers and cryptographic libraries during the SSDLC.

Examples

  • AFL++ mutating valid PNG files to discover heap-overflow bugs in libpng.
  • libFuzzer mutating valid HTTP requests to crash a custom HTTP parser.

Related terms