askill
testing-handbook-skills

testing-handbook-skillsSafety 88Repository

Application security testing toolkit from the Trail of Bits Testing Handbook. Helps the agent set up fuzzing campaigns, write fuzz harnesses, run coverage-guided fuzzers (libFuzzer, AFL++, cargo-fuzz, Atheris, Ruzzy), and triage crashes. Covers memory-safety sanitizers (AddressSanitizer, UBSan, MSan), static analysis with Semgrep and CodeQL, cryptographic validation using Wycheproof test vectors, and constant-time verification. Use when testing C, C++, Rust, Python, or Ruby code for vulnerabilities, improving code coverage, building seed corpora, creating fuzzing dictionaries, overcoming fuzzing obstacles, or integrating security checks into CI/CD with OSS-Fuzz.

17.9k stars
357.5k downloads
Updated 3/22/2026

Package Files

Loading files...
SKILL.md

Testing Handbook Skills

Comprehensive security testing toolkit generated from the Trail of Bits Application Security Testing Handbook.

When to Use

  • Setting up fuzzing campaigns for C/C++, Rust, Python, or Ruby
  • Writing fuzzing harnesses for target functions
  • Analyzing code coverage to guide testing
  • Running sanitizers (AddressSanitizer, UBSan, MSan) to catch memory bugs
  • Performing constant-time testing for cryptographic code
  • Using Wycheproof test vectors for crypto validation

When NOT to Use

  • Smart contract auditing or chain-specific review work
  • Writing custom static-analysis rules from scratch
  • General code review outside a security-testing workflow
  • Vulnerability hunting without a concrete testing plan

Sub-Skills (17 total)

Fuzzers

FuzzerLanguageBest ForSkill Path
libFuzzerC/C++LLVM-based coverage-guided fuzzingskills/libfuzzer/SKILL.md
AFL++C/C++Advanced mutation-based fuzzingskills/aflpp/SKILL.md
libAFLC/C++LibAFL-based custom fuzzersskills/libafl/SKILL.md
cargo-fuzzRustRust native fuzzing with libFuzzer backendskills/cargo-fuzz/SKILL.md
AtherisPythonPython coverage-guided fuzzingskills/atheris/SKILL.md
RuzzyRubyRuby coverage-guided fuzzingskills/ruzzy/SKILL.md

Techniques

TechniquePurposeSkill Path
Harness WritingWriting effective fuzzing harnessesskills/harness-writing/SKILL.md
Coverage AnalysisMeasuring and improving code coverageskills/coverage-analysis/SKILL.md
Fuzzing DictionaryCreating effective fuzzing dictionariesskills/fuzzing-dictionary/SKILL.md
Fuzzing ObstaclesOvercoming common fuzzing barriersskills/fuzzing-obstacles/SKILL.md
AddressSanitizerMemory error detection with ASanskills/address-sanitizer/SKILL.md

Static Analysis

ToolPurposeSkill Path
SemgrepFast pattern-matching security scansskills/semgrep/SKILL.md
CodeQLDeep semantic code analysisskills/codeql/SKILL.md

Cryptographic Testing

ToolPurposeSkill Path
WycheproofTest vectors for crypto implementationsskills/wycheproof/SKILL.md
Constant-Time TestingVerify constant-time crypto propertiesskills/constant-time-testing/SKILL.md

Infrastructure

ToolPurposeSkill Path
OSS-FuzzGoogle's continuous fuzzing serviceskills/ossfuzz/SKILL.md

Meta

ToolPurposeSkill Path
GeneratorGenerate new skills from the Testing Handbookskills/testing-handbook-generator/SKILL.md

Workflow

Starting a fuzzing campaign

  1. Choose a fuzzer based on your target language (see Fuzzers table)
  2. Write a harness using the harness-writing skill
  3. Build with sanitizers (AddressSanitizer recommended as baseline)
  4. Create a seed corpus with representative inputs
  5. Run the campaign and monitor coverage
  6. Analyze coverage to find uncovered code and improve the harness
  7. Triage crashes and deduplicate findings

Setting up CI/CD testing

  1. OSS-Fuzz for open-source projects (continuous fuzzing)
  2. Semgrep + CodeQL for static analysis in PRs
  3. Wycheproof test vectors for crypto validation

Quick Start by Language

LanguageFuzzerHarnessSanitizer
C/C++libFuzzer or AFL++LLVMFuzzerTestOneInputASan + UBSan
Rustcargo-fuzzfuzz_target! macroBuilt-in sanitizers
PythonAtherisatheris.FuzzedDataProviderN/A
RubyRuzzyruzzy harness patternN/A

Source Material

Generated from the Trail of Bits Application Security Testing Handbook using the testing-handbook-generator meta-skill.

Install

Download ZIP
Requires askill CLI v1.0+

AI Quality Score

88/100Analyzed 3/22/2026

Metadata

Licenseunknown
Version-
Updated3/22/2026
PublisherelizaOS

Tags

ci-cdgithub-actionssecuritytesting