Fuzzing

Noun · Verb · Security & Infosec · Origin: 1988

Definitions

  1. An automated testing technique that bombards a program with random, malformed, or unexpected input to discover bugs and vulnerabilities. The computational equivalent of giving a toddler your phone and seeing what breaks.

    In plain English: Automatically throwing random garbage data at a program to see if it crashes, revealing security vulnerabilities that careful testing might miss.

  2. American Fuzzy Lop (AFL) and libFuzzer are the most popular fuzzing tools. AFL uses coverage-guided mutation — it tracks which code paths inputs exercise and evolves inputs to maximize coverage. Google's OSS-Fuzz has found over 10,000 vulnerabilities in open-source projects through continuous fuzzing.

    Example: 'We added AFL fuzzing to the CI pipeline for the parser. It found a crash bug within 30 minutes that our unit tests had missed for two years.'

    Source: tooling / OSS-Fuzz

Related Terms