This walks you through coverage-guided fuzzing with libFuzzer and AFL++, from writing fuzz targets to integrating them into CI. It covers the essentials: how to structure a LLVMFuzzerTestOneInput function, compile with sanitizers, seed and manage corpora, reproduce crashes, and run persistent mode for better throughput. The workflow is practical and assumes you're fuzzing C/C++ parsers or I/O boundaries. It won't teach you fuzzing theory, but if you need to actually set up a fuzz harness or debug why your target keeps timing out, the command snippets and flag tables get you there fast. Good for teams adding fuzzing to existing codebases or investigating OSS-Fuzz integration.
- skills.sh installs
- 670
- GitHub stars
- 279
- last updated
- Aug 21, 2026
Install
$ npx -y skills add mohitmishra786/low-level-dev-skills --skill fuzzing --agent claude-codeInstalls into .claude/skills of the current project.
Files
Fuzzing
Purpose
Guide agents through setting up and running coverage-guided fuzz testing: libFuzzer (in-process) and AFL++ (fork-based), with sanitizer integration and CI pipeline setup.
Triggers
- "How do I fuzz-test my parser/deserializer?"
- "What is a fuzz target / how do I write one?"
- "How do I set up libFuzzer?"
- "How do I use AFL++ on my program?"
- "How do I run fuzzing in CI?"
- "Fuzzer found a crash — how do I reproduce it?"
Workflow
1. Write a fuzz target (libFuzzer)
A fuzz target is a function that accepts arbitrary bytes and exercises the code under test.
// fuzz_parser.c
#include <stdint.h>
#include <stddef.h>
#include "myparser.h"
// Entry point called by libFuzzer with random data
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
// Must not abort/exit on invalid input (that's expected)
// Must not read outside [data, data+size)
MyParser *p = parser_create();
if (p) {
parser_feed(p, (const char *)data, size);
parser_destroy(p);
}
return 0; // Always return 0 (non-zero means discard input)
}
Key rules:
Sponsors
Details
- Repository
- github.com/mohitmishra786/low-level-dev-skills
- Categories
- Testing & QA, Debugging, Automation & Workflows
- First seen
- Jun 3, 2026
More from mohitmishra786/low-level-dev-skills
All 54- Binutils665
- Linkers Lto663
- Conan Vcpkg659
- Dynamic Linking650
- Rust Security624
- Rust Ffi613
- Rust Unsafe611
- Pgo610
- Interpreters609
- Cargo Workflows608
- Rust Sanitizers Miri604
- Meson603
- Cpp Modules597
- Rust Debugging597
- Hardware Counters590
- Debug Optimized Builds579
- Cpp Templates574
- Rustc Basics567
- Rust Cross565
- Wasm Emscripten559
- Zig Debugging555
- Zig Build System552
- Zig Cross536
- Wasm Wasmtime532
