Initial OPSEC Setup (CRITICAL FIRST!)
⚠️ DO THIS IMMEDIATELY AFTER GETTING A BEACON
These three commands must be executed BEFORE any enumeration or actions. They determine how your beacon spawns processes and how stealthy your operations will be.
The Three Critical Commands
Why These Commands Matter
- • spawnto - Every execute-assembly, powerpick, etc. spawns this process. Default rundll32.exe looks suspicious.
- • ppid - Makes spawned processes appear as children of legitimate processes like explorer.exe instead of orphaned.
- • blockdlls - Prevents EDR from injecting hooks into your spawned processes. Critical for evasion.
Good spawn-to Candidates
⚠️ Remember: Configure Then Sleep
After setting spawnto/ppid/blockdlls, THEN set your sleep and jitter. Always in this order: OPSEC setup → Sleep configuration → Start enumeration.
Beacon Basics & Configuration
OPSEC Reminder
Always configure sleep and jitter before running enumeration. Default beacon behavior (no sleep) is loud and easily detected.
Essential Beacon Commands
⚠️ OPSEC Warning: shell vs run vs execute-assembly
- • shell - Spawns cmd.exe (loud, creates IOC)
- • run - Executes directly via Windows API (better)
- • execute-assembly - Loads .NET in memory (best for tools like Rubeus, Seatbelt)
- • powershell - Spawns powershell.exe (very loud)
- • powerpick/psinject - PowerShell without spawning process (much better)
File Operations
C2 Infrastructure & Listeners
Listener Configuration
Exam Tip: Multiple Listeners
Always have HTTP/HTTPS for initial access, SMB for internal pivoting, and DNS for backup C2 channels. Each listener type has different OPSEC considerations.
Payload Generation & Delivery
⚠️ Common Payload OPSEC Failures
- • Using default artifact kit (always customize with Arsenal Kit)
- • Not obfuscating PowerShell cradles (use encoding, obfuscation)
- • Reusing payloads across targets (regenerate for each target)
- • Visible staging URLs (use malleable C2 profiles)
- • Forgetting to set proper User-Agent strings
Enumeration & Reconnaissance
System Information
Active Directory Enumeration
ADSearch (Preferred Over PowerView)
Why ADSearch Over PowerView?
ADSearch is a .NET tool that performs LDAP queries without PowerShell dependencies. It's quieter, faster, and doesn't require importing scripts. Use execute-assembly for best OPSEC.
CRTO Exam Strategy: Enumeration Priority
- 1. Check whoami, hostname, ipconfig - know where you are
- 2. Run SharpHound immediately - analyze offline in BloodHound
- 3. Check for local admin on other machines (spray credentials)
- 4. Identify high-value targets: Domain Admins, path to DA
- 5. Look for Kerberoastable accounts and AS-REP roasting opportunities
Credential Access & Harvesting
CRTO Priority: Low-Hanging Fruit First
Before dumping LSASS (loud!), check browser credentials and Windows Vault. These often contain domain admin credentials and require only medium integrity. DPAPI-based extraction is far quieter than LSASS dumping.
Credential Storage Overview
| Source | Integrity | Reusable? | OPSEC |
|---|---|---|---|
| Browser creds | Medium | ✅ Yes | 🟢 Very quiet |
| Windows Vault | Medium | ✅ Yes | 🟢 Quiet |
| Kerberos tickets | High | ✅ Yes | 🟢 Quiet |
| Cached creds | SYSTEM | ❌ Crack only | 🟡 Medium |
| LSASS | SYSTEM | ✅ Yes | 🔴 Loud |
Browser Credentials (SharpChrome)
Windows Credential Manager / Vault
Why Windows Vault Matters
Users save RDP credentials here when checking "Remember my credentials". You'll often find saved domain admin RDP sessions to servers. This is gold for lateral movement and requires only medium integrity.
SAM Database (Local Account Hashes)
LSA Secrets
Cached Domain Credentials
LSASS Memory (The Loud Way)
⚠️ LSASS Dumping OPSEC Warning
- • Triggers Sysmon Event ID 10 (process access)
- • Most EDR solutions alert on LSASS access
- • Use as LAST RESORT after checking browser/vault/tickets
- • Consider using ticket-based attacks instead (quieter)
CRTO Exam Strategy: Credential Theft Priority
- 1. Browser credentials (SharpChrome) - Medium integrity, very quiet
- 2. Windows Vault (SharpDPAPI) - Often contains RDP to servers
- 3. Kerberos tickets (Rubeus dump/triage) - Reusable without cracking
- 4. SAM hashes - Local admin password reuse across machines
- 5. LSASS - Only if above methods fail (LOUD!)
Lateral Movement Techniques
⚠️ OPSEC: Lateral Movement Methods
Different methods have different OPSEC profiles. Remote exec methods (psexec) are loud. Use WMI/WinRM when possible. Always link SMB beacons instead of spawning new HTTP callbacks from internal hosts.
Priority #1: SCShell64 BOF
SCShell64 is a Beacon Object File (BOF) that performs service-based lateral movement with better OPSEC than traditional psexec. It executes directly in beacon memory with no process spawn. Use this as your primary lateral movement method when available.
SCShell64 BOF (Priority #1)
Built-in Jump Methods
SMB Beacons & Linking
Why SMB Beacons?
SMB beacons communicate over named pipes (no network egress). Link them to your existing beacon instead of having internal hosts beacon out directly. This is more stealthy and follows proper red team OPSEC.
⚠️ Exam Tip: Link vs Connect
- • link - Connect to child beacon that you spawned (normal workflow)
- • connect - Connect to beacon someone else spawned or reconnect to existing
- • Always use SMB listeners for internal lateral movement
- • HTTP/HTTPS beacons from internal hosts = bad OPSEC (multiple egress points)
Credential-Based Movement & Token Impersonation
| Technique | How Obtained | Local Actions | Network Actions | Integrity Needed |
|---|---|---|---|---|
| make_token | Plaintext creds | ❌ No | ✅ Yes | ❌ Medium |
| steal_token | Process token | ✅ Yes | ✅ Yes | ✅ High |
Key: make_token creates "netonly" logon (network auth only). steal_token duplicates real token (full access local + network).
Token Store (Persistent Token Handling)
Why Use Token Store?
Stolen tokens are lost if the source process exits. Token store keeps a copy for later reuse. Essential for maintaining access when processes are short-lived or may terminate.
⚠️ Token Lifetime Problem
If you steal_token from a process and that process exits, your token becomes invalid. Always use token-store for important tokens to maintain access even if the source process dies.
Active Directory Attacks
Kerberoasting
AS-REP Roasting
Unconstrained Delegation
Constrained Delegation
Pass-the-Ticket (PtT)
Why Pass-the-Ticket Over Pass-the-Hash?
PtT is far stealthier than PtH. It doesn't touch LSASS, uses legitimate Kerberos protocol, and looks like normal Windows behavior. Always prefer tickets over hashes when possible.
⚠️ Important: Avoid Ticket Clobbering
When injecting tickets, create a NEW logon session first using make_token with fake password. This prevents clobbering existing user's tickets:
make_token DOMAIN\targetuser FakePass execute-assembly Rubeus.exe ptt /ticket:[base64]
DCSync Attack
CRTO Exam: AD Attack Path
- 1. Run SharpHound, import to BloodHound - visualize attack paths
- 2. Check for Kerberoastable accounts - easy wins for credential material
- 3. Check for AS-REP roastable accounts - requires no credentials
- 4. Look for delegation abuse opportunities (unconstrained/constrained)
- 5. Once you have DA or DCSync rights - extract all credentials with DCSync
- 6. Golden/Silver ticket attacks for persistence
Persistence Mechanisms
⚠️ CRTO Exam: Persistence Requirements
The exam may require you to establish and demonstrate persistence. Document your persistence method clearly in your report with screenshots showing the persistence survives a reboot or session termination.
Common Persistence Techniques
Domain Persistence (Golden/Silver Tickets)
Exam Note: Document Persistence
Take screenshots of: (1) Creating persistence mechanism, (2) Verifying it exists, (3) Triggering it (reboot/re-login), (4) Receiving callback. Clear documentation of working persistence is critical for exam scoring.
OPSEC & Evasion Techniques
🚨 OPSEC Golden Rules
- • Never use
shellcommand - it spawns cmd.exe (userun) - • Never use
powershellcommand - spawns powershell.exe (usepowerpick) - • Always set sleep and jitter before enumeration
- • Always set proper PPID before spawning processes
- • Always use SMB beacons for internal pivoting (not HTTP)
- • Prefer execute-assembly over shell execution
Commands to NEVER Use in CRTO Exam
| ❌ BAD Command | Why It's Bad | ✅ Use Instead |
|---|---|---|
| shell | Spawns cmd.exe | run |
| powershell | Spawns powershell.exe | powerpick |
| psinject | Injects into process | powerpick (safer) |
| spawn (HTTP) | Egress from internal | spawn (SMB) + link |
| getsystem | Named pipe impersonation | Token theft, exploit |
| desktop | Opens VNC connection | screenshot |
| printscreen | Creates files on disk | screenshot |
OPSEC-Safe Execution
Bypassing Defenses
CRTO Exam: OPSEC Checklist
- ✓ Sleep configured (30-60s) with 20% jitter
- ✓ PPID set before spawning any process
- ✓ Spawnto configured to legitimate process
- ✓ Using powerpick instead of powershell
- ✓ Using run instead of shell
- ✓ Using execute-assembly for .NET tools
- ✓ SMB beacons for lateral movement
- ✓ Cleaning up artifacts (files, registry, services)
Pivoting & SOCKS Proxy
SOCKS Proxy Setup
⚠️ SOCKS Proxy Notes
- • SOCKS proxy routes traffic THROUGH your beacon - beacon must have network access
- • Use SOCKS4 (not SOCKS5) with Cobalt Strike
- • Slow for intensive scanning - use sparingly
- • Best for targeted actions: credential spraying, specific service access, running tools
- • Remember: All traffic goes through beacon = bandwidth and OPSEC consideration
Port Forwarding
Pivoting Strategy for Exam
- 1. SOCKS proxy - General purpose, works for most tools (nmap, crackmapexec, Impacket)
- 2. rportfwd - Expose specific internal services (RDP, SMB, HTTP) to your attack box
- 3. SMB beacons + link - Best for maintaining access across network segments without exposing more C2 traffic
- 4. covertvpn - When you need full network access (requires admin rights)
Post-Exploitation & Data Collection
Credential Harvesting
Surveillance & Monitoring
File & Data Discovery
⚠️ Exam Objectives - Document Everything
- • Take screenshots of every flag you find
- • Screenshot credential dumps showing domain admin credentials
- • Screenshot BloodHound showing attack path to DA
- • Screenshot persistence mechanism (before and after reboot/callback)
- • Document each host you compromise (hostname, IP, user context)
- • Keep a running timeline of actions taken
CRTO Exam Day Checklist
Exam Flow (CRTO Priority Order):
- 1. Get initial beacon → IMMEDIATELY: spawnto, ppid, blockdlls
- 2. Configure sleep/jitter (30-60s, 20% jitter)
- 3. Run SharpHound → Import to BloodHound offline
- 4. Check browser creds (SharpChrome) + Windows Vault (SharpDPAPI)
- 5. Token theft → Look for DA processes, use token-store
- 6. Lateral movement → SCShell64 BOF or WMI (link SMB beacons)
- 7. Kerberoasting / AS-REP roasting if needed
- 8. Establish persistence → Document with screenshots
- 9. Write flag to final file server → Screenshot proof