AD Methodology

Workflow to Follow for AD.

Enumeration

Nmap scan:

Enumeration of SMB:

Enumeration of share permissions:

Connection to shares

Enumerate LDAP with Null Credentials

Probing LDAP Further

Responder for poisoning or MITM

Completely no usernames

Once we have usernames but no passwords

  • AS-REP Roasting

  • Password Spray with crackmapexec.

AS-REP Roasting and Cracking

Password Spraying

Apart from these steps, check for web vulnerabilities and Windows SMB related exploits such as EternalBlue or something.

Once we have access to this, we can either:

  • Regular Windows PE

  • AD-related PE.

Generally, once I complete all of these AD-related Enumerations, I should have gotten access. Otherwise, I would refer to other checklists and begin again.

Time Skew

If the time on the DC is not correct, we need to follow the steps below to make it similar.

Net Command

Gather user information

Get all users in the domain

Get user information

Get all groups in the domain

Get group information

Get all local group

Get all users in the local group

Get account policy

Gather Domain information

Get domain information

Powershell script to craft the LDAP path

Powerview Commands

Import Module

Get domain information

Get all user information

Get all user information but specific column

Get Service principal name

Get all group information

Get specific group information

Get group information but specific column

Get computer information

Find all computer that has local admin rights for current user

Convert Security Identifiers (SID) to name

Get object ACL

Get Active Directory Rights for a specific domain group

List down all domain shares

List down all domain shares with access

Network Shares

List down all shares for specific server

Enumerating SPNs (Service Principal Names)

Automated Enumeration

Importing SharpHound

Get Help Command

Collect all data

Cached AD Credentials

Dumping out the credentials of all logged-on users (mimikatz)

Show all the tickets that are stored in the memory (mimikatz)

Cached Hashes (mimikatz)

Authentication Attacks

Password Attacks

Password Spray using powershell script according to account policy

Password Spray against AD Users using SMB

Password Spray using TGT

AS-REP Roasting

Get all users without Kerberos preauthentication

or

or

Cracking the Hash

Kerberoasting

Get all SPNs that able to be Kerberoasted

or

Cracking the hash

Sliver Tickets

Requires 3 different information:

  1. SPN Password hash

  2. Domain SID

  3. Target SPN

SPN Password hash

On mimikatz,

Find the SPN NTLM Hash

Domain SID

The full command

On mimikatz,

To check

Domain Controller Synchronization (DCSync)

Requires user to have Replicating Directory Changes, Replicating Directory Changes All and Replicating Directory Changes rights

By default, members of the Domain Admins, Enterprise Admins and Administrators group have these rights assigned

On mimikatz,

or On kali,

Crack the hash

Lateral Movement Techniques

WMI and WinRM

Target User must be a domain user and a member of the Local Administrator Group for the targeted machine

Testing phase

To execute

or

or

PsExec

Requires 3 things to work:

  1. Target User must be Local Administrator

  2. ADMIN$ share must be available

  3. File and Printer Sharing has to be turned on

or

Pass the Hash

Requires 4 things to work:

  1. Target User must be Local Administrator

  2. ADMIN$ share must be available

  3. File and Printer Sharing has to be turned on

  4. Requires the NTLM Hash of the target user

Overpass the hash

This is used to gain a full Kerberos Ticket Granting Ticket (TGT)

Find the cached password hashes

On mimikatz,

Create the process

On mimikatz:

Generate the ticket for targeted machine

then check with

Entering the system

After generating the ticket, any tools that rely on Kerberos authentication will work

Pass the Ticket

This is used to reinject a TGS elsewhere on the network

Export out all the TGT/TGS from memory

On mimikatz,

List out all the generated tickets

Reinject the ticket

then check with

DCOM (Distributed Component Object Model)

Persistence Methods

Golden Ticket

Requires the NTLM Hash of krbtgt account

If the account is in the Domain Admin group

On mimikatz,

To purge any old tickets

On mimikatz,

To inject the ticket

On mimikatz,

Shadow Copies

Create a snapshot

Copy AD Database to C: drive root folder

Save the SYSTEM hive from Windows registry

Dump all the NTML hashes

Bloodhound Custom Queries

Return all computers in the domain

Return all users in the domain

Return all active session in the domain

Return all the users' group membership

Using evil-winrm to get shell

Using Password

Using NTLM Hash

Referrences

Last updated