Reconnaissance candidates become demonstrated vulnerabilities — the defining transition of a pentest.
Leveraging an identified weakness to produce an effect the system was not intended to permit.
| Class | Mechanism | Typical tooling |
|---|---|---|
| Known CVE | Public proof-of-concept; verify version, run exploit, demonstrate effect | Metasploit, ExploitDB, custom |
| Misconfiguration | Product fine; deployment wrong — default creds, open admin, debug mode, exposed secrets | Manual, Burp, scanners |
| Weak credentials | Credentials work; availability to tester is the weakness | Hydra, Medusa, Impacket |
| Authorization flaw | Auth OK; permission check missing — IDOR, broken access control, missing function checks | Burp, manual |
| Business-logic flaw | App works as intended; intent was flawed — race conditions, multi-step bypass, workflow assumptions | Manual, Burp |
| Supply-chain | Vulnerable dependency (Log4Shell-style); requires careful scoping of which code path is reachable | Dependency scanners, manual |
| Crypto misuse | ECB mode, predictable IV, padding oracle, weak RNG in tokens or session IDs | Manual, specialized scripts |
Real engagements produce a mix. Reports listing only CVEs are usually shallow.
whoami is usually enough for RCE.| Tool | Primary use | Notes |
|---|---|---|
| Metasploit | Known-CVE verification; exploits, payloads (Meterpreter), post-exploitation | Signatures well-known to defenders; read module source before use on production |
| Impacket | Windows/AD protocol-level attacks — PTH, Kerberoasting, NTLM relay, DCSync, secretsdump | Essential for AD-focused work |
| Burp Suite | Web-application exploitation — repeater, intruder, Collaborator for OOB | Detail in Topic 17 |
| sqlmap | Automated SQLi exploitation | Aggressive by default — high request volume; use carefully |
| Hydra / Medusa | Network-service brute-force | Can lock accounts; often out of scope |
| MSFvenom | Payload generation (Metasploit) | Reverse Shell Generator is a quick web-based alternative |
Cobalt Strike / Sliver / Mythic / Havoc — C2 frameworks for red-team scope (Topic 12); mentioned for context only.
Cryptographic hashes are non-invertible. The attacker guesses passwords, hashes each candidate, and compares to the target hash. No account lockout. No rate limiting. No logging to the target.
| Visual pattern | Likely type |
|---|---|
| 32 hex chars | MD5 / MD4 |
| 40 hex chars | SHA-1 |
| 64 hex chars | SHA-256 |
$1$ / $6$ | Unix crypt (MD5 / SHA-512) |
$2a$ / $2b$ | bcrypt (work factor embedded) |
$argon2 | Argon2 |
| 32 hex, colon-separated | Windows LM:NTLM |
Tools: hashid, hash-identifier. Misidentifying the type produces zero results.
@→a, reverse, special-char append). Raises coverage to ~50–80%.?u?l?l?l?l?l?s?d matches 8-char policy (upper + 5 lower + special + digit). Feasible on GPU for typical enterprise policies.CompanyName + ?d?d?s.Workflow: identify type → dictionary → rules → mask / hybrid → brute-force.
Wordlist quality > raw GPU speed. Domain-specific wordlists and rules typically outperform brute-force.
NTLM authentication accepts the hash directly as proof of identity — no plaintext needed. Once a hash is obtained (LSASS dump, registry, NTDS.dit), authenticate as that user against SMB, WMI, and other NTLM-accepting protocols.
Mitigated by SMB signing and NLA on RDP — but still viable against many protocols.
Steal a Kerberos TGT from memory and replay it to request service tickets for other resources without re-authenticating.
Use the NTLM hash to request a Kerberos TGT, then use the ticket for further auth. Windows-specific.
psexec.py, wmiexec.py, smbexec.py, secretsdump.py implement all major variants.
Strategy: try PtH first on AD NTLM hashes. If blocked by NLA or SMB signing, then crack for plaintext.
Time-stamped, reproducible, with the exact command — not paraphrased.
"I got a shell" is half a finding. Impact is the finding.
A Metasploit module against a production service has, in your experience, a ~10% chance of crashing the service. What considerations weigh for or against using it?
Against: production-stability risk, possible customer impact, possible scope dispute. For: demonstrates real impact if the engagement requires it; the same vulnerability would crash under a real attack. Middle path: request a maintenance-window run; demonstrate on a staging copy; document with a less-risky proof (read access only, not RCE). Default rule: when in doubt, propose the safer option to the client and let them choose explicitly — document that decision in the engagement record.
Next: Topic 16 — Privilege escalation. Initial foothold achieved; now raise the stakes.