For the complete documentation index, see llms.txt. This page is also available as Markdown.

Credentialed AD Enumeration

From Linux

NetExec

Why -t 1 for most commands?

  • Often times in domains we are operating through some sort of tunnel / pivot like Ligolo/Chisel etc. nxc uses 256 threads by default which is a bit aggressive, can cause tunnel issues, is alot of network traffic. In most labs its probably ok.

# Domain user enumeration (with badpwdcount)
nxc smb 172.16.5.5 -u forend -p Klmcargo2 -t 1 --users

# Domain group enumeration
nxc smb 172.16.5.5 -u forend -p Klmcargo2 -t 1 --groups

# Get members of a specific group
netexec ldap <ip> -u <user> -p <pass> -t 1 --groups "Domain Admins"

# Logged on users
nxc smb 172.16.5.130 -u forend -p Klmcargo2 -t 1 --loggedon-users

# Share enumeration
nxc smb 172.16.5.5 -u forend -p Klmcargo2 -t 1 --shares

# Spider shares for files
nxc smb 172.16.5.5 -u forend -p Klmcargo2 -t 5 -M spider_plus --share 'Department Shares'

# Search share content for keywords
netexec smb <ip> -u <user> -p <pass> -t 5 --spider <share> --content --pattern "passw"

# Download file from share
netexec smb <ip> -u <user> -p <pass> -t 1 --share <share> --get-file '\path\to\file' /tmp/localfile

# Cat file via exec (requires admin)
netexec smb <ip> -u <user> -H "<hash>" -t 1 --share C$ -X "type C:\path\to\file.txt"
  • Results for spider_plus written to ~/home/<user>/.nxc

NetExec LDAP Modules

ldapsearch

SMBMap

rpcclient

Impacket

psexec.py (SYSTEM shell via SMB)

  • Creates remote service, uploads executable to ADMIN$ share

  • Gives SYSTEM shell

wmiexec.py (Stealthier, runs as connected user)

  • Semi-interactive shell via WMI

  • Less noisy, but each command spawns cmd.exe (event ID 4688)

Windapsearch

BloodHound.py

  • Upload JSON files to BloodHound GUI

  • Start neo4j: sudo neo4j start

  • Default creds: neo4j:neo4j

BloodHound CE Python

Use bloodhound-ce-python for BloodHound Community Edition collections:

Expected output includes domain, computer, user, group, GPO, OU, and container collection before compressing a zip for upload:

Use BloodHound to check for edges such as ReadLAPSPassword from the compromised user to a computer.

From Windows

PowerView

  • Use the maintained fork from BC-SECURITY: https://github.com/BC-SECURITY/Empire/blob/main/empire/server/data/module_source/situational_awareness/network/powerview.ps1

SharpView (.NET port of PowerView)

Snaffler (Credential/Sensitive File Hunter)

  • Enumerates hosts, shares, readable directories

  • Hunts for credentials, keys, config files

  • Color-coded output (Red = high value, Green = shares found)

Pay attention to SYSVOL script folders, including binaries and adjacent .config files, not just .ps1/.vbs scripts:

If a SYSVOL binary looks custom, download it and inspect strings or decompile it. Hardcoded service credentials in helper tools can expose accounts such as svc_helpdesk:

SharpHound (BloodHound Collector)

LAPSToolkit

Privileged Access Enumeration

RDP Access

WinRM Access

Connecting via WinRM

SQL Server Access

BloodHound Cypher Queries for Remote Access

Last updated