Kurz erklärt
Beim Fuzzing füttert man ein Programm automatisch mit riesigen Mengen zufälliger oder halb zufälliger Eingaben, um Abstürze und Sicherheitslücken zu finden.
Genauer
Ein Fuzzer erzeugt Eingaben, startet das Ziel und beobachtet. Coverage-geführte Fuzzer (AFL++, libFuzzer) merken, welche Eingaben neue Codepfade erreichen, und mutieren genau diese weiter. Mit Sanitizern (AddressSanitizer) fallen auch stille Speicherfehler auf.