acl-abuse
Exploits misconfigured Active Directory ACLs for privilege escalation. Covers GenericAll, GenericWrite, WriteDACL, WriteOwner, ForceChangePassword, targeted…
Discover web application injection points and route to the correct exploitation skill during authorized penetration testing.
$ npx -y skills add blacklanternsecurity/red-run --skill web-discovery --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/web-discoveryContext preview
The summary Claude sees to decide when to auto-load this skill.
Discover web application injection points and route to the correct exploitation skill during authorized penetration testing.
name: web-discovery description: > Discover web application injection points and route to the correct exploitation skill during authorized penetration testing. keywords: - find vulns - fuzz the target - test for injection - parameter discovery - content discovery - web recon - find hidden parameters - test this endpoint - what's vulnerable - start web testing - web app pentest - hunt for bugs - wordpress - wpscan tools: - ffuf - arjun - paramspider - wpscan - burpsuite opsec: low
You are helping a penetration tester discover vulnerabilities in a web application. Your job is to find hidden content, discover parameters, test for injection points, and categorize findings for the orchestrator. All testing is under explicit written authorization.
Check for `./engagement/` directory. If absent, proceed without logging.
When an engagement directory exists:
descriptive filenames (e.g., `sqli-users-dump.txt`, `ssrf-aws-creds.json`).
This skill covers web application vulnerability discovery — identifying attack surface, testing for common vulnerability classes, and reporting findings to the orchestrator. When you confirm a vulnerability — **STOP**.
Do not load or execute another skill. Do not continue past your scope boundary. Instead, return to the orchestrator with:
The orchestrator decides what runs next. Your job is to execute this skill thoroughly and return clean findings.
**Stay in methodology.** Only use techniques documented in this skill. If you encounter a scenario not covered here, note it and return — do not improvise attacks, write custom exploit code, or apply techniques from other domains. The orchestrator will provide specific guidance or route to a different skill.
You MUST NOT:
NTLM capture via Responder, reading sensitive files beyond the initial confirmation payload)
execution)
system enumeration)
reverse shells)
When you identify an injection point, return to the orchestrator with your findings. Do not continue past discovery.
Call `get_state_summary()` from the state MCP server to read current engagement state. Use it to:
Write actionable findings **immediately** via state so the orchestrator can react in real time (via event watcher) instead of waiting for your full return summary. Use these tools as you discover findings:
Write vhost discoveries as `add_vuln(vuln_type="info")` so the orchestrator triggers a hosts-file update check. **Do NOT enumerate discovered vhosts** — the orchestrator spawns a new agent per vhost. **Do NOT send state writes if you are near your scope boundary and will be returning to the orchestrator imminently.**
Your return summary must include:
explicitly skipped)
When extracting specific data from a page (form values, table contents, API responses, version strings), use `browser_evaluate` with CSS selectors or targeted JS instead of `browser_get_page`. Full page dumps via `browser_get_page` return the entire DOM (often 10-40K chars of navigation, scripts, and boilerplate) when you only need a few hundred chars of data.
# BAD — dumps entire page HTML (~30K chars)
browser_get_page(session_id=...)
# GOOD — targeted extraction (~200 chars)
browser_evaluate(session_id=..., expression="document.querySelector('#version').innerText")
browser_evaluate(session_id=..., expression="document.querySelector('form').outerHTML")
browser_evaluate(session_id=..., expression="[...document.querySelectorAll('table.data tr')].map(r => r.innerText).join('\\n')")Reserve `browser_get_page` for initial page structure discovery when you don't yet know what elements exist. After identifying the page layout, switch to `browser_evaluate` for all subsequent data
Security assessment toolkit for Claude Code. red-run combines skills, MCP servers, and Claude Code agent teams with routing logic that guides Claude and the operator through the phases of a security assessment — recon, initial access, lateral movement,
Exploits misconfigured Active Directory ACLs for privilege escalation. Covers GenericAll, GenericWrite, WriteDACL, WriteOwner, ForceChangePassword, targeted…
Enumerates Active Directory domains and maps attack surface for penetration testing.
Establishes persistent access in Active Directory environments after domain compromise. Covers DCShadow (rogue DC attribute modification), Skeleton Key (LSASS…
Exploits ADCS through ACL abuse on templates/CA objects and NTLM relay to enrollment endpoints. Covers ESC4 (template ACL → modify to ESC1), ESC5 (PKI object…
Establishes persistence and exploits weak certificate mapping in AD CS. Covers ESC9 (no security extension), ESC10 (weak certificate mapping), ESC12-15…
Exploits misconfigured AD CS certificate templates to impersonate any domain user via SAN manipulation or enrollment agent abuse. Covers ESC1 (enrollee…