Executing Active Directory Attack Simulation
Overview
Cybersecurity skill for executing active directory attack simulation. Follows industry best practices and security standards.
When to Use
Trigger phrases:
"executing active directory attack simulation"
"Executes authorized attack simulations against Active Directory environments to "
Assessing the security of an Active Directory domain and forest against common and advanced attack techniques
Identifying attack paths from low-privilege domain user to Domain Admin using privilege relationship analysis
Validating that Kerberos security configurations, credential policies, and delegation settings resist known attacks
Testing detection capabilities of the SOC and EDR tools against Active Directory-specific TTPs
Evaluating the effectiveness of tiered administration models and privileged access workstations
Do not use without explicit written authorization from the domain owner, against production domain controllers during business hours unless approved, or for testing that could cause account lockouts affecting real users without prior coordination.
When NOT to Use
- When you lack proper authorization for testing
- For production systems without change management
- When the task requires legal or compliance expertise beyond technical scope
Prerequisites
- Written authorization specifying the target AD domain, testing constraints, and any off-limits accounts or systems
- Low-privilege domain user account (minimum starting point) to simulate realistic attacker position
- Testing workstation joined to the domain or network access to domain controllers on ports 88, 135, 139, 389, 445, 636, 3268, 3269
- BloodHound Community Edition or Enterprise with SharpHound/AzureHound collectors
- Impacket toolkit, Mimikatz (or pypykatz), Rubeus, and CrackMapExec installed on the attack platform
- Hashcat or John the Ripper with current wordlists (rockyou.txt, SecLists) for offline credential cracking
Workflow
# Example: IOC detection
import re
IOC_PATTERNS = {
"ip": r"\b(?:\d{1,3}\.){3}\d{1,3}\b",
"domain": r"\b[a-z0-9-]+\.[a-z]{2,}\b",
"hash_md5": r"\b[a-f0-9]{32}\b",
"hash_sha256": r"\b[a-f0-9]{64}\b",
}
def extract_iocs(text: str) -> dict:
return {k: re.findall(v, text) for k, v in IOC_PATTERNS.items()}
- Define Objectives — Clarify the goals and scope for active directory attack simulation.
- Gather Resources — Collect tools, data, and access needed for active directory attack simulation.
- Execute Process — Carry out active directory attack simulation operations methodically.
- Verify Quality — Check results against acceptance criteria.
- Document Outcomes — Record findings, decisions, and next steps.
Tools
- Analysis Platform — Data processing and visualization
- Collaboration Tools — Team coordination and knowledge sharing
Process
- Reconnaissance — Gather target information, identify attack surface, enumerate services
- Analysis/Exploitation — Execute the technique, analyze results, document findings
- Reporting — Document IOCs, write findings, provide remediation recommendations
Verification
Anti-Rationalization Table
| Rationalization |
Reality |
| "We are too small to be targeted" |
Automated attacks target everyone. Size does not matter. |
| "Security slows us down" |
A breach slows you down 100x more. Build security in from the start. |
| "We will fix it after launch" |
Vulnerabilities in production are exploited within hours. Fix before deploy. |
1---2name: executing-active-directory-attack-simulation3description: Use when executes authorized attack simulations against Active Directory environments to identify misconfigurations, weak credentials, dangerous privilege paths, and exploitable trust relationships that could lead to domain compromise. The tester uses BloodHound for attack path analysis, Mimikatz for credential extraction, and Impacket for protocol-level attacks including Kerberoasting, AS-REP Roasting, and delegation abuse. Use when working with executing active directory attack simulation.4license: Apache-2.05---67# Executing Active Directory Attack Simulation89## Overview1011Cybersecurity skill for executing active directory attack simulation. Follows industry best practices and security standards.1213## When to Use14**Trigger phrases:**15- "executing active directory attack simulation"16- "Executes authorized attack simulations against Active Directory environments to "171819- Assessing the security of an Active Directory domain and forest against common and advanced attack techniques20- Identifying attack paths from low-privilege domain user to Domain Admin using privilege relationship analysis21- Validating that Kerberos security configurations, credential policies, and delegation settings resist known attacks22- Testing detection capabilities of the SOC and EDR tools against Active Directory-specific TTPs23- Evaluating the effectiveness of tiered administration models and privileged access workstations2425**Do not use** without explicit written authorization from the domain owner, against production domain controllers during business hours unless approved, or for testing that could cause account lockouts affecting real users without prior coordination.262728## When NOT to Use2930- When you lack proper authorization for testing31- For production systems without change management32- When the task requires legal or compliance expertise beyond technical scope333435## Prerequisites3637- Written authorization specifying the target AD domain, testing constraints, and any off-limits accounts or systems38- Low-privilege domain user account (minimum starting point) to simulate realistic attacker position39- Testing workstation joined to the domain or network access to domain controllers on ports 88, 135, 139, 389, 445, 636, 3268, 326940- BloodHound Community Edition or Enterprise with SharpHound/AzureHound collectors41- Impacket toolkit, Mimikatz (or pypykatz), Rubeus, and CrackMapExec installed on the attack platform42- Hashcat or John the Ripper with current wordlists (rockyou.txt, SecLists) for offline credential cracking4344## Workflow4546```python47# Example: IOC detection48import re4950IOC_PATTERNS = {51 "ip": r"\b(?:\d{1,3}\.){3}\d{1,3}\b",52 "domain": r"\b[a-z0-9-]+\.[a-z]{2,}\b",53 "hash_md5": r"\b[a-f0-9]{32}\b",54 "hash_sha256": r"\b[a-f0-9]{64}\b",55}5657def extract_iocs(text: str) -> dict:58 return {k: re.findall(v, text) for k, v in IOC_PATTERNS.items()}59```60611. **Define Objectives** — Clarify the goals and scope for active directory attack simulation.622. **Gather Resources** — Collect tools, data, and access needed for active directory attack simulation.633. **Execute Process** — Carry out active directory attack simulation operations methodically.644. **Verify Quality** — Check results against acceptance criteria.655. **Document Outcomes** — Record findings, decisions, and next steps.6667## Tools6869- **Analysis Platform** — Data processing and visualization70- **Collaboration Tools** — Team coordination and knowledge sharing717273## Process74751. **Reconnaissance** — Gather target information, identify attack surface, enumerate services761. **Analysis/Exploitation** — Execute the technique, analyze results, document findings771. **Reporting** — Document IOCs, write findings, provide remediation recommendations7879## Verification8081- [ ] All active directory attack simulation procedures executed completely and documented82- [ ] Findings validated against multiple data sources83- [ ] False positives identified and filtered84- [ ] Results documented with evidence and timestamps85- [ ] Recommendations provided with risk-based prioritization8687## Anti-Rationalization Table8889| Rationalization | Reality |90|---|---|91| "We are too small to be targeted" | Automated attacks target everyone. Size does not matter. |92| "Security slows us down" | A breach slows you down 100x more. Build security in from the start. |93| "We will fix it after launch" | Vulnerabilities in production are exploited within hours. Fix before deploy. |