SkillAtlasSkill 详情

offensive-fuzzing

Offensive security skills for Claude — drop-in SKILL.

审核状态:已审核Quality 72Security 70

复制安装命令

用 Codex 或 Claude 安装复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它先审查 Skill 页面再帮你安装。

复制前请先查看来源、License 和安全提示。

项目 README

来源文件:README.md

抓取于 2026年8月8日

claude-red banner

claude-red

Offensive security skills for Claude — drop-in SKILL.md files that turn Claude into a context-aware red team operator.

License: MIT Skills Categories Stars Forks

Built by SnailSploit — GenAI Security Research.


Table of Contents


What is this

claude-red is a curated library of offensive security skills for the Claude Skills system. Each skill is a structured SKILL.md file that primes Claude with expert-level methodology for a specific attack surface — from SQLi to shellcode, EDR evasion to ADCS abuse.

Drop a skill into your Claude environment and it behaves like a specialist: it knows the techniques, the tooling, the edge cases, and the escalation paths. Skills load on demand based on conversational triggers — you don't pay context for skills you aren't using.

Use it for: authorized red team engagements, bug bounty triage, security research, CTF preparation, training operators, and exploring attack surfaces methodically.


Quickstart

Claude Skills System (recommended)

# Clone into a directory Claude will scan
git clone https://github.com/SnailSploit/claude-red ~/.claude/skills/claude-red

# Or install only one category
git clone --filter=blob:none --sparse https://github.com/SnailSploit/claude-red
cd claude-red && git sparse-checkout set Skills/web Skills/active-directory

Claude will auto-load matching skills based on conversational triggers (e.g. mentioning SQLi loads offensive-sqli).

Claude Code

# Point Claude at a single skill before a session
cat Skills/web/offensive-sqli/SKILL.md | claude --system-file -

# Or load a whole category
cat Skills/active-directory/**/SKILL.md | claude --system-file -

Claude.ai (Manual)

Paste the contents of a SKILL.md into a Project's system prompt or prepend to your conversation.

Install Script

./install.sh                           # interactive
./install.sh --target ~/.claude/skills # explicit target
./install.sh --category web            # one category

Categories

CategorySkillsFocus
Web Application16OWASP Top 10 + business logic + advanced web bug classes
Auth & Identity2JWT, OAuth
Active Directory1On-prem AD attack methodology (expanding)
Wireless13802.11, WPA2/3, EAP, WPS, evil-twin, BLE, Zigbee, Z-Wave, LoRa, sub-GHz
Cloud1AWS / Azure / GCP attack paths (expanding)
Mobile1Android + iOS pentest (expanding)
IoT & Embedded1Hardware, firmware, RTOS, ICS (expanding)
Infrastructure & Red Team7Initial access, EDR evasion, Windows ops
Exploit Development6Stack/heap, mitigations, crash analysis, TOCTOU
Fuzzing & VR4libFuzzer, AFL++, bug ID, vuln classes
Reconnaissance2OSINT tooling and methodology
AI Security1Prompt injection, jailbreaks, RAG poisoning
Utility2Fast-checking, professional reporting

Skill Index

Web Application

Skills/web/

SkillDescription
offensive-sqliSQL injection — error/blind/OOB, DB-specific, ORM CVEs, cloud paths
offensive-xssCross-site scripting — stored, reflected, DOM, mutation
offensive-ssrfServer-side request forgery — cloud metadata, filter bypass
offensive-sstiServer-side template injection — engine ID, RCE paths
offensive-xxeXML external entity — OOB exfil, blind exploitation
offensive-idorInsecure direct object references — enumeration, business logic
offensive-file-uploadFile upload — extension bypass, polyglots, webshells
offensive-rceRemote code execution — chaining, command injection
offensive-deserializationInsecure deserialization — Java/PHP/.NET gadget chains
offensive-race-conditionRace conditions — TOCTOU, single-packet, limit bypass
offensive-request-smugglingHTTP request smuggling — CL.TE, TE.CL, h2 desync
offensive-open-redirectOpen redirect — OAuth abuse, phishing, SSRF pivots
offensive-parameter-pollutionHTTP parameter pollution — WAF bypass, logic confusion
offensive-graphqlGraphQL — introspection, batching, IDOR via aliases
offensive-waf-bypassWAF bypass — encoding, chunking, case mutation
offensive-business-logicBusiness logic — workflow bypass, pricing, refunds, chains

Auth & Identity

Skills/auth/

SkillDescription
offensive-jwtJWT — alg:none, key confusion, secret cracking
offensive-oauthOAuth — open redirect abuse, token leakage, PKCE bypass

Active Directory

Skills/active-directory/

SkillDescription
offensive-active-directoryAD — Kerberoast, ASREProast, ACL abuse, ADCS ESC1-15, delegation, persistence, hybrid AAD

Note: This category is being expanded. The AD overview is being split into 16 focused skills (Kerberoasting, ASREProasting, ADCS, coercion, NTLM relay, BloodHound, ticket forgery, GPO abuse, etc.). See Roadmap.

Wireless

Skills/wireless/

SkillDescription
offensive-wifi802.11 overview — entrypoint into the wireless category
offensive-wifi-reconAdapter selection, monitor mode, multi-band airspace mapping
offensive-wpa2-pskHandshake capture, PMKID, hashcat 22000 cracking
offensive-wpa3-saeTransition-mode downgrade, Dragonblood, SAE side-channels
offensive-wpa-enterprise802.1X / EAP attacks, eaphammer evil-twin RADIUS
offensive-wpsPixie Dust, online PIN brute, vendor PIN generators
offensive-evil-twinKARMA, Mana, captive portal, post-association MITM
offensive-krack-fragattacksKRACK + FragAttacks supplicant testing
offensive-deauth-disassocTargeted/broadcast deauth, PMF awareness, action frames
offensive-bluetooth-bleBLE GATT enum, pairing downgrade, sniffing, MITM
offensive-bluetooth-classicBR/EDR — SDP, SPP, KNOB, BlueBorne, HID spoofing
offensive-zigbee-thread-matter802.15.4 mesh — KillerBee, Touchlink abuse, ZCL command injection
offensive-z-waveS0 key derivation flaw, S2 commissioning, hub pivots
offensive-lorawan-sub-ghzLoRaWAN ABP/OTAA, KeeLoq garage doors, fixed-code, TPMS

Cloud

Skills/cloud/

SkillDescription
offensive-cloudAWS / Azure / GCP — privesc, IMDS, cross-account, persistence, CSPM evasion

Note: Cloud-identity (Entra/AAD/Okta hybrid) skills coming separately. See Roadmap.

Mobile

Skills/mobile/

SkillDescription
offensive-mobileAndroid + iOS — Frida, pinning, storage, biometric, deep links

IoT & Embedded

Skills/iot/

SkillDescription
offensive-iotHardware recon, firmware, RTOS, ICS/OT, MQTT/CoAP

Note: Being split into 10 focused skills (UART/JTAG, flash dump, fault injection, U-Boot, secure boot, RTOS, ICS protocols). See Roadmap.

Infrastructure & Red Team

Skills/infrastructure/

SkillDescription
offensive-initial-accessPhishing, drive-by, supply chain — TA0001
offensive-advanced-redteamFull kill chain, C2, OPSEC, lateral, persistence
offensive-edr-evasionUnhooking, indirect syscalls, PPID spoofing
offensive-shellcodeWriting, encoding, injection techniques
offensive-keylogger-archKeylogger architecture and input-capture techniques
offensive-windows-mitigationsWindows mitigations — ACG, Arbitrary Code Guard
offensive-windows-boundariesDefeating Windows boundaries — sandbox escape, privilege

Exploit Development

Skills/exploit-dev/

SkillDescription
offensive-exploit-developmentStack/heap, ROP chains, mitigations
offensive-exploit-dev-courseStructured curriculum format
offensive-basic-exploitationLinux exploitation, mitigations disabled — beginner-to-mid
offensive-crash-analysisCrash triage, exploitability assessment, root cause
offensive-mitigationsModern kernel mitigations — ASLR, CFG, CET, PAC
offensive-toctouTime-of-check/use across binary, kernel, web, container

Fuzzing & Vulnerability Research

Skills/fuzzing/

SkillDescription
offensive-fuzzinglibFuzzer, AFL++, coverage-guided, mutation strategies
offensive-fuzzing-courseCurriculum — finding vulns via fuzzing
offensive-bug-identificationCode review patterns, static analysis triggers
offensive-vuln-classesVulnerability classes — real-world examples, taxonomy

Reconnaissance

Skills/recon/

SkillDescription
offensive-osintOSINT tools — recon-ng, theHarvester, Maltego pipelines
offensive-osint-methodologyOSINT methodology — structured intelligence collection

AI Security

Skills/ai/

SkillDescription
offensive-ai-securityAI pentest — prompt injection, jailbreaking, RAG poisoning

Utility

Skills/utility/

SkillDescription
offensive-fast-checkingFast triage checklist — quick-win identification
offensive-reportingPro pentest reporting — CVSS, evidence, exec summary, retest

Roadmap

The library is being expanded in seven phases. Track progress in CHANGELOG.md.

PhaseCategoryNew SkillsStatus
1Internal AD/Windows (rename active-directory/ → internal/)+16Planned
2Cloud Identity (Entra/AAD, ADFS, Okta, M365)+10Planned
3Wireless split (WPA2/3, EAP, BLE, Zigbee, Z-Wave, LoRa, sub-GHz)+12Mandatory
4IoT split (UART/JTAG, flash, fault injection, RTOS, ICS)+10Planned
5Web Basics (recon, auth bypass, access control, CSRF, headers, CORS, cache, clickjack)+8Planned
6Web Advanced (proto pollution, SAML, OIDC, WebSocket, gRPC, postMessage, SSI/ESI, CSTI)+10Planned
7Polish (README, LICENSE, manifest, install)—In progress

End state: ~107 skills across the same 13+ categories.


Contributing

Contributions welcome. See CONTRIBUTING.md for the skill template, frontmatter standard, and review process. Focused, single-surface skills are preferred over monolithic overviews.

License

MIT — use freely, attribution appreciated.

Acknowledgements

  • Author: Kai Aizen (SnailSploit) — snailsploit.com
  • Original Checklists: Sahar Shlichov — the offensive checklist collection many of these skills are based on.
  • Community: PRs and feedback that keep the library current with the threat landscape.

"Give Claude the right skill and it stops being a chatbot. It becomes an operator."


📚 Documentation & Author

This project's full writeup, methodology, and related research lives at:

https://snailsploit.com/claude-red

Created by Kai Aizen — independent offensive security researcher.

snailsploit.com · Research · Frameworks · GitHub · LinkedIn · ResearchGate · X/Twitter

Same attack. Different substrate.

内容与创作

中风险

  • 来源需自行核对维护者身份。
  • 包含脚本或命令调用,安装前请复核。
  • 可能需要外部 token、网络权限或第三方服务。
  • 未检测到高风险命令。
  • 扫描发现:3 条。

Codex — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/SnailSploit/Claude-Red.git
  3. 将 "Skills/fuzzing/offensive-fuzzing" 文件夹复制到 Codex 的 skills 目录中。
  4. 重启 Codex 让新的 skill 生效。

Codex — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Codex 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Codex 让新的 skill 生效。

Claude Code — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/SnailSploit/Claude-Red.git
  3. 将 "Skills/fuzzing/offensive-fuzzing" 文件夹复制到 Claude Code 的 skills 目录中。
  4. 重启 Claude Code 让新的 skill 生效。

Claude Code — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Claude Code 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Claude Code 让新的 skill 生效。

Cursor — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/SnailSploit/Claude-Red.git
  3. 将 "Skills/fuzzing/offensive-fuzzing" 文件夹复制到 Cursor 的 skills 目录中。
  4. 重启 Cursor 让新的 skill 生效。

Cursor — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Cursor 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Cursor 让新的 skill 生效。

GitHub Copilot — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/SnailSploit/Claude-Red.git
  3. 将 "Skills/fuzzing/offensive-fuzzing" 文件夹复制到 GitHub Copilot 的 skills 目录中。
  4. 重启 GitHub Copilot 让新的 skill 生效。

GitHub Copilot — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 GitHub Copilot 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 GitHub Copilot 让新的 skill 生效。

Windsurf — Git Clone 安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 克隆仓库:git clone https://github.com/SnailSploit/Claude-Red.git
  3. 将 "Skills/fuzzing/offensive-fuzzing" 文件夹复制到 Windsurf 的 skills 目录中。
  4. 重启 Windsurf 让新的 skill 生效。

Windsurf — 手动复制安装

  1. 安装前请先查看来源仓库和风险报告。
  2. 从源仓库下载 SKILL.md 及相关文件。
  3. 在 Windsurf 的 skills 目录中创建新文件夹。
  4. 将所有 skill 文件复制到新文件夹中。
  5. 重启 Windsurf 让新的 skill 生效。
查看 SKILL.md 原文
name: offensive-fuzzing
description: "Practical offensive fuzzing methodology covering target identification, fuzzer selection (AFL++, libFuzzer, Honggfuzz, Boofuzz, syzkaller), harness writing, corpus curation, mutation strategies, coverage measurement, and crash triage. Use when setting up or running fuzz campaigns against any target: file parsers, network protocols, kernel drivers, EDR engines, embedded firmware, or language runtimes."

Offensive Fuzzing

Fuzzer Types

TypeCoverageSpeedTools
BlackBoxPoorFastPeach, Boofuzz
GreyBoxGoodFastAFL++, Honggfuzz, libFuzzer, WinAFL
SnapshotGoodFastestNyx, wtf, Snapchange
WhiteBoxBestSlowKLEE, QSYM, SymSan
EnsembleBestFastAFL++ + Honggfuzz + libFuzzer

GreyBox sub-variants: Directed (AFLGo, UAFuzz), Grammar (AFLSmart, Tlspuffin), Concolic (QSYM, Driller), Kernel (syzkaller, kAFL, wtf).

Core Workflow

Research target → Choose analyses → Build harness → Seed corpus → Instrument → Fuzz → Triage crashes → Report

1. Research Target

  • Map all input surfaces (files, network, IPC, syscalls, IOCTL)
  • Identify high-value areas: previously patched code, complex parsers, newly added code, input ingestion points
  • For kernel modules: look beyond copy_from_user — DMA-BUF ops, page fault handlers, VM operation structs, allocation callbacks

2. Instrument and Build

# AFL++ (preferred for GreyBox)
CC=afl-clang-fast CXX=afl-clang-fast++ cmake -DCMAKE_BUILD_TYPE=Release .. && make -j

# libFuzzer + ASan/UBSan (C/C++)
cmake -DCMAKE_CXX_FLAGS="-fsanitize=fuzzer,address,undefined -O1 -g" ..

# CmpLog build for hard compares
AFL_LLVM_CMPLOG=1 CC=afl-clang-fast CXX=afl-clang-fast++ make clean all

Windows (MSVC): Project Properties → C/C++ → Address Sanitizer: Yes (/fsanitize=address)

3. Write Harness

libFuzzer (C++):

#include <cstdint>
#include <cstddef>
extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
    parse_or_process(data, size);
    return 0;
}

Honggfuzz HF_ITER (persistent mode — preferred for large targets):

#include "honggfuzz.h"
int main(int argc, char** argv) {
    initialize_target(); // runs once
    for (;;) {
        size_t len; uint8_t *buf;
        HF_ITER(&buf, &len);
        FILE* s = fmemopen(buf, len, "r");
        target_function(s);
        fclose(s);
        reset_target_state();
    }
}

AFL++ persistent mode (__AFL_LOOP):

while (__AFL_LOOP(10000)) {
    // re-read input and process
}

macOS IPC (Mach message fuzzing):

void *lib_handle = dlopen("libexample.dylib", RTLD_LAZY);
pFunction = dlsym(lib_handle, "DesiredFunction");

4. Build Seed Corpus

  • Pull from target's test suite, bug reports, and real-world samples
  • Web-crawl (Common Crawl) for file formats; filter by MIME type
  • Minimize: afl-cmin -i raw_corpus -o seeds -- ./target @@
  • Trim inputs: afl-tmin -i crash -o crash.min -- ./target @@

5. Launch Fuzzing

AFL++ parallel (primary + secondary with cmplog):

afl-fuzz -M f1 -i seeds -o findings -x dict.txt -- ./target @@
afl-fuzz -S s1 -i seeds -o findings -c 0 -- ./target @@

libFuzzer:

./target_libfuzzer corpus/ -max_total_time=3600 -workers=4

Binary-only (QEMU):

afl-fuzz -Q -i seeds -o findings -- target.exe @@

Snapshot (AFL++ Nyx):

NYX_MODE=1 AFL_MAP_SIZE=1048576 afl-fuzz -i seeds -o findings -- ./target_nyx @@

Ensemble (AFL++ + Honggfuzz sharing corpus):

# Terminal 1
afl-fuzz -M fuzzer1 -i seeds -o sync_dir -- ./target @@
# Terminal 2
../honggfuzz/honggfuzz -i sync_dir/fuzzer1/queue -W sync_dir/hfuzz \
  --linux_perf_ipt_block -t 10 -- ./target ___FILE___

6. Monitor and Unstick

If progress stalls:

  • Enable CmpLog: -c 0 on AFL++ secondaries
  • Add dictionary: -x dict.txt or AFL_TOKEN_FILE
  • Switch to directed fuzzing (AFLGo) targeting specific BBs/functions
  • Use concolic assistance (QSYM, Driller) on hard branches
  • Snapshot the target to increase exec/s
  • AFL_MAP_SIZE=1048576, -L 0 for MOpt scheduler

7. Triage Crashes

# 1. Minimize
afl-tmin -i crash -o crash.min -- ./target @@
# 2. Symbolize
ASAN_OPTIONS=abort_on_error=1:symbolize=1 ./target crash.min 2>asan.log
# 3. Hash + bucket
./cov-tool --bbids ./target crash.min > cov.hash
./bucket.py --key "$(cat cov.hash)" --log asan.log --out triage/

Sanitizer env quick reference:

ASAN_OPTIONS=abort_on_error=1:symbolize=1:detect_stack_use_after_return=1
UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1
TSAN_OPTIONS=halt_on_error=1:history_size=7
MSAN_OPTIONS=poison_in_dtor=1:track_origins=2

Oracle Selection

Bug ClassOracle
Memory safetyASan, HWASan (AArch64, lower overhead)
Uninitialized readsMSan
ConcurrencyTSan
Undefined behaviorUBSan
Type safetyTypeSan
Heap hardeningScudo Hardened Allocator
Logic bugsDifferential / idempotency oracles
Kernel memoryKASAN, KMSAN, KCSAN
Kernel UBKUBSan (CONFIG_UBSAN_TRAP=y)
CFIKCFI (-fsanitize=kcfi, Clang 18)
Binary-onlyQASAN (QEMU+ASan), DynamoRIO

Property oracle patterns:

  • Idempotency: f(x) == f(f(x))
  • Differential: compare two impls, bucket on output mismatch
  • Invariants: monotonic lengths, checksum equality, schema validation post-parse

Specialized Targets

Kernel (Linux) — syzkaller

{
  "target": "linux/arm64",
  "http": ":56700",
  "workdir": "/path/to/workdir",
  "kernel_obj": "/path/to/kernel",
  "image": "/path/to/rootfs.ext3",
  "sshkey": "/path/to/id_rsa",
  "procs": 8,
  "enable_syscalls": ["openat$module_name", "ioctl$IOCTL_CMD", "mmap"],
  "type": "qemu",
  "vm": { "count": 4, "cpu": 2, "mem": 2048 }
}
  • Limit enable_syscalls to deepen coverage on specific subsystems
  • Use syz-extract to pull constants for custom modules
  • Enable CONFIG_KASAN=y, CONFIG_KCFI=y, CONFIG_DEBUG_INFO_BTF=y
  • Use kcov filters and syz_cover_filter to direct coverage
  • Network fuzzing: inject via TUN/TAP + pseudo-syscalls (syz_emit_ethernet)
  • Crash decode: ./scripts/decode_stacktrace.sh vmlinux ... < dmesg.log

syzkaller repro:

syz-execprog -repeat=0 -procs=1 -cover=0 -debug target.repro

EDR / Windows Scanning Engines

WTF snapshot harness skeleton (mpengine.dll / mini-filter):

g_Backend->SetBreakpoint("nt!KeBugCheck2", [](Backend_t *Backend) {
    const uint64_t BCode = Backend->GetArg(0);
    Backend->Stop(Crash_t(fmt::format("crash-{:#x}", BCode)));
});

FilterConnectionPort fuzzing:

HANDLE hPort;
FilterConnectCommunicationPort(L"\\PortName", 0, NULL, 0, NULL, &hPort);
FilterSendMessage(hPort, fuzzData, sizeof(fuzzData), NULL, 0, &bytesReturned);

IOCTL fuzzing pattern:

HANDLE hDev = CreateFile(L"\\\\.\\DeviceName", GENERIC_READ|GENERIC_WRITE, ...);
DeviceIoControl(hDev, ioctlCode, inputBuf, inputLen, outBuf, outLen, &ret, NULL);
  • Take snapshots after initialization, right before parse/dispatch loop
  • Use IDA Lighthouse for coverage visualization
  • Monitor: DRIVER_VERIFIER_DETECTED_VIOLATION (0xc4), IRQL_NOT_LESS_OR_EQUAL (0xa)
  • WinDbg: .symfix; !analyze -v; k; !heap -p -a @rax

Cross-platform mpengine.dll on Linux (loadlibrary + HF_ITER + Intel PT):

// Bypass Lua VM to avoid stability issues
insert_function_redirect((void*)luaV_execute_address, my_lua_exec, HOOK_REPLACE_FUNCTION);
for (;;) {
    HF_ITER(&buf, &len);
    ScanDescriptor.UserPtr = fmemopen(buf, len, "r");
    __rsignal(&KernelHandle, RSIG_SCAN_STREAMBUFFER, &ScanParams, sizeof ScanParams);
}

Rust

# Full Rust fuzzing pipeline
cargo test                                         # 1. property tests
cargo +nightly miri test                           # 2. UB via interpreter
cargo +nightly careful test                        # 3. runtime bounds checks
cargo fuzz run fuzz_target_1 -- -max_total_time=3600  # 4. libFuzzer crashes
RUSTFLAGS="--cfg loom" cargo test --release        # 5. concurrency (if needed)
cargo fuzz coverage fuzz_target_1                  # 6. coverage report

Focus unsafe blocks on: Vec::from_raw_parts, unchecked indexing, transmute size mismatches, pointer arithmetic, FFI integer truncation.

Embedded / Binary-Only

  • LibAFL: Modular Rust framework; Unicorn engine, snapshot module, LBRFeedback (zero-instrumentation on Intel), SAND decoupled sanitization
  • Retrowrite / QASAN: Binary rewriting for coverage + ASan without source
  • Nautilus: Grammar-based fuzzing for structured formats

Language Ecosystems

  • Go 1.18+: go test -fuzz=Fuzz -run=^$ ./...
  • Python: Atheris (CPython native extension fuzzing)
  • Rust: cargo-fuzz or honggfuzz-rs
  • JS engines: Fuzzilli with extended instrumentation (__builtin_return_address(0) for PC tracking)
  • Wasm runtimes: wasmtime-fuzz, wafl for differential fuzzing across V8/Wasmer/Wasmtime
  • Smart contracts: Echidna, Foundry-fuzz (Solidity); Move-Fuzz (Aptos/Sui)

CI/CD Integration

- name: Build with afl-clang-fast
  run: CC=afl-clang-fast make -j
- name: Fuzz (smoke, 15 min)
  run: timeout 15m afl-fuzz -i seeds -o findings -- ./target @@ || true
- name: Upload crashes
  if: always()
  uses: actions/upload-artifact@v4
  with:
    path: findings/**/crashes/*

Use ClusterFuzzLite for persistent continuous fuzzing; cache corpora between runs.

Crash Analysis Quick Reference

Linux:

ulimit -c unlimited && sysctl -w kernel.core_pattern=core.%e.%p
gdb -q ./target core.* -ex 'bt' -ex 'info reg' -ex q
addr2line -e ./target 0xDEADBEEF

Windows:

# Enable local dumps
New-Item 'HKLM:\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps' -Force
# PageHeap
gflags /p /enable target.exe /full

Kernel KASAN/KMSAN:

dmesg -T | egrep -i 'kasan|kmsan' -A 60
./scripts/decode_stacktrace.sh vmlinux /lib/modules/$(uname -r)/build < dmesg.log

Reproducibility: pin CPU governor, disable ASLR only where safe, fix RNG seeds, save input sequences in persistent mode, record binary hashes and sanitizer options with every crash.

Tool Index

ToolUse Case
AFL++General GreyBox, CmpLog, MOpt, Nyx
HonggfuzzIntel PT, crash detection, HF_ITER
libFuzzerIn-process, source available
syzkallerLinux/Windows kernel syscall fuzzing
wtfSnapshot fuzzing, Windows targets
NyxAFL++ snapshot mode (Intel PT)
SnapchangeAWS snapshot fuzzing
LibAFLCustom Rust fuzzing framework
AFLGoDirected fuzzing to target BB/function
kAFLKernel + OS fuzzing
JackalopeBinary coverage-guided (Windows/macOS)
cargo-fuzzRust libFuzzer integration
AtherisPython fuzzing
NautilusGrammar-based fuzzing
AFLTriageAutomated crash triage
afl-covCoverage analysis for AFL++
ClusterFuzzDistributed fuzzing infrastructure

发现问题?提交给管理员复核

评分:

评论 (0)

暂无评论,成为第一个评论者吧!