aeondave/malskill/libfuzzer
Claude Code and agent skill by aeondave/malskill
Trust tier 3
- community
Source check pending
Checking that the SKILL.md file is still in the repository.
Auth/lab ref: In-process, coverage-guided fuzzing engine integrated with Clang/LLVM. For fast unit-level fuzz targets, parser hardening, sanitizer-first bug discovery, and corpus-driven regression loops in C/C++ code.
Install
npx vskill@latest install aeondave/malskill/libfuzzerSKILL.md
libfuzzer
LLVM-native in-process fuzzer using LLVMFuzzerTestOneInput entrypoints.
Quick Start
Operator Flow
- Build a narrow, deterministic
LLVMFuzzerTestOneInputharness. - Add ASAN/UBSAN first; add MSAN when dependency hygiene allows.
- Seed with small valid/invalid corpus.
- Run long enough to stabilize coverage features, then merge/minimize corpus.
- Keep crashing artifacts as regression tests.
Key Practice
- Keep fuzz target deterministic, fast, and side-effect-light.
- Prefer narrow targets per format/API instead of one giant dispatcher.
- Seed with small valid+invalid samples; then minimize via
-merge=1.
Useful Flags
| Flag | Purpose | |
|---|---|---|
-runs=N | Bounded runs | |
-max_total_time=N | Time budget | |
-dict=file | Token dictionary | |
-jobs / -workers | Parallel campaigns | |
-fork=N | Crash/OOM/timeout-resistant subprocess mode | |
-use_value_profile=1 | Stronger cmp-guided search | |
-merge=1 | Corpus minimization/merge |
Practical Tricks
- Use
FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTIONto disable fuzz-hostile randomness/checksums in harness builds. - Return
-1for intentionally rejected inputs to reduce corpus pollution. - Use
-artifact_prefix/ fixed artifact paths in CI pipelines for predictable collection. - For very large corpora, use resumable merge workflows.
Common Pitfalls
- Original authors shifted major innovation to Centipede; libFuzzer remains supported for bug fixes.
- Excellent fit for CI regression with saved crash artifacts.
- Non-deterministic harness behavior causes corpus bloat and noisy triage.
- Overly broad max lengths can waste cycles on low-value regions.
- Neglecting sanitizers in in-process mode delays detection of latent memory issues.
Resources
- https://llvm.org/docs/LibFuzzer.html
- https://clang.llvm.org/docs/SanitizerCoverage.html
- https://google.github.io/oss-fuzz/
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingoffensive-tools/fuzzing/libfuzzer/SKILL.md
Popularity
- Repository stars
- 22
- Repository forks
- 1
- 7-day trend score
- 21
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/aeondave/malskill/libfuzzer)