AGENT SKILL

fuzzing-dictionary-current

Create and validate byte-correct fuzzing dictionaries for parsers, protocols and structured formats. Use when a coverage-guided fuzzer needs meaningful tokens, with native syntax checks and controlled campaign comparisons.

License 许可
CC-BY-SA-4.0
最近更新
2026-11-11
Stars
★ 1
Forks
0

01 前言 Front Matter

name
fuzzing-dictionary-current
license
CC-BY-SA-4.0
metadata
{ "status": "experimental-unbenchmarked" }
description
Create and validate byte-correct fuzzing dictionaries for parsers, protocols and structured formats. Use when a coverage-guided fuzzer needs meaningful tokens, with native syntax checks and controlled campaign comparisons.

02 资源文件 4

03 SKILL.md 正文

Fuzzing dictionaries

Follow the collection's mandatory agent tools. Derive tokens from the target's independently specified input format and actual parser comparisons. Keep the input encoding explicit. Dictionaries guide mutations; they do not enforce a grammar, replace structured seeds or guarantee coverage gains. Treat generated suggestions as candidates requiring validation.

For libFuzzer, use one quoted token per line, optionally with name= before the opening quote. Blank lines and lines beginning with # are comments. Escape quotes with \", backslashes with \\, and arbitrary bytes with exactly two hexadecimal digits after \x. C escapes such as \r, \n and \0 are not supported by the qualified libFuzzer dictionary parser.

For example, the PNG signature is represented as:

png_magic="\x89PNG\x0D\x0A\x1A\x0A"

Validate the complete file with the actual selected fuzzer and retain its diagnostics before starting a campaign. The original mirror's PNG line is rejected by LLVM 23.1.4 because it uses \r and \n; the explicit byte form above loads successfully. See qualification. Recheck other fuzzers' accepted syntax and version-specific limits separately.

Do not pipe raw strings output or greedy quoted-source matches directly into a dictionary. Those operations do not escape embedded quotes, backslashes or binary values, and C source literals may need decoding or concatenation first. Extract candidate byte sequences, deduplicate by decoded bytes, serialize with the selected fuzzer's supported escapes, then validate the result. Never execute an extracted string. Preserve non-ASCII and NUL bytes according to the target contract; base64 text is a different input unless the target expects base64.

Use -dict=path for libFuzzer. Choose input-length and dictionary-entry bounds from the target and fuzzer implementation. Do not prescribe a universal optimal token count. Confirm AFL++ -x, automatic dictionaries and Rust/Go harness integration against their actual installed versions before using those modes; libFuzzer qualification does not certify them.

Evaluate usefulness with the same target build, instrumentation, seed corpus, resource budget and independent coverage collector, using separate output directories. Repeat paired campaigns with predeclared seeds and alternating order; report target coverage, valid-input reach and reproducible unique bugs, alongside execution counts and cost. Retain neutral and negative results. Parsing successfully or replaying a supplied crash proves neither discovery rate nor a coding-agent advantage. Any agent comparison needs separate held-out tasks and evaluators defined independently of these instructions.

Adapted from Trail of Bits under CC-BY-SA-4.0. See attribution, the complete licence and the preserved original under provenance/.

04 同仓库更多 Skills

strmt7
strmt7/ai_skills_collection_benchmarked

webapp-testing

Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.

测试与质量前端开发
★ 1
strmt7
strmt7/ai_skills_collection_benchmarked

skill-creator

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.

Skill与智能体开发
★ 1
strmt7
strmt7/ai_skills_collection_benchmarked

playwright-skill

Complete browser automation with Playwright. Auto-detects dev servers, writes reusable test scripts, and supports screenshots, responsive checks, UX validation, login flows, link checks, and arbitrary browser automation. Use when the user wants to test a website, automate browser interactions, validate web functionality, or perform browser-based testing.

测试与质量Skill与智能体开发
★ 1
strmt7
strmt7/ai_skills_collection_benchmarked

web-artifacts-builder

Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.

前端开发
★ 1
strmt7
strmt7/ai_skills_collection_benchmarked

frontend-design

Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.

设计师前端开发视觉设计
★ 1
strmt7
strmt7/ai_skills_collection_benchmarked

zarr-python

Chunked N-D arrays for cloud storage. Compressed arrays, parallel I/O, S3/GCS integration, NumPy/Dask/Xarray compatible, for large-scale scientific computing pipelines.

★ 1