aeondave/malskill/winafl
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: Coverage-guided fuzzing framework for Windows binaries. For fuzzing desktop apps, DLL harnesses, or Windows services with DynamoRIO/TinyInst/Intel PT instrumentation and persistent-loop target functions.
Install
npx vskill@latest install aeondave/malskill/winaflSKILL.md
winafl
Windows-focused AFL fork designed for black-box and harnessed binary fuzzing.
Quick Start
Operator Flow
- Choose instrumentation backend (DynamoRIO first, TinyInst/PT as needed).
- Select a target function that opens/parses/closes input and returns normally.
- Validate debug run before long fuzz sessions.
- Launch campaign with stable timeout/memory bounds.
- Periodically minimize corpus and verify reproductions.
Core Concepts
- Select a target function that:
- opens/parses/closes input each iteration,
- returns normally (no hard process exit),
- is reachable without manual UI interaction.
- Persistent loop behavior is central for throughput.
- Instrumentation choices: DynamoRIO, TinyInst, Intel PT, Syzygy.
Practical Tricks
- Prefer shared-memory sample delivery (
-s) when file locking causes rewrite failures. - For services you cannot launch directly, use attach mode (
-A <module>) with external process supervision. - Use
winafl-cmin.pyto control corpus growth and speed up cycles. - Keep target architecture aligned (32-bit vs 64-bit) across target, DLL, and instrumentation stack.
Useful Options
| Flag | Purpose | |
|---|---|---|
-D <dir> | DynamoRIO binaries path | |
-w <dll> | winafl.dll path | |
-P | Intel PT mode | |
-s | Shared-memory sample delivery | |
-A <module> | Attach mode for running processes/services | |
-l <dll> | Custom testcase processing/mutator DLL |
Common Pitfalls
- Target function not closing input each iteration -> rewrite failures and false timeouts.
- Function exits process instead of returning -> broken persistent loop.
- Skipping debug mode before fuzzing -> difficult timeout diagnosis.
- Network-mode custom DLL workflows without restart hygiene -> unstable long runs.
Resources
- https://github.com/googleprojectzero/winafl
- https://github.com/googleprojectzero/winafl/blob/master/README.md
- https://github.com/googleprojectzero/TinyInst
- https://dynamorio.org/
Security
- Security scanPassed, 95 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/winafl/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/winafl)