Skip to content

Latest commit

 

History

History
387 lines (353 loc) · 17.6 KB

File metadata and controls

387 lines (353 loc) · 17.6 KB

Here is the list of concepts you need to learn to become an awesome Penetration testing security engineer.

Mindset and Methodology:

  • Attacker mindset — thinking like an adversary, not a defender
  • Structured methodology vs ad-hoc testing
  • Cyber Kill Chain (Lockheed Martin)
    • Reconnaissance → Weaponization → Delivery → Exploitation → Installation → C2 → Actions on Objectives
  • MITRE ATT&CK Framework
    • Tactics (Initial Access, Execution, Persistence, Privilege Escalation, Defense Evasion, Credential Access, Discovery, Lateral Movement, Collection, C2, Exfiltration, Impact)
    • Techniques and Sub-techniques
    • Using ATT&CK to structure engagements and report findings
  • PTES (Penetration Testing Execution Standard)
  • OWASP Testing Guide (for web application testing)
  • Legal and ethical boundaries
    • Rules of Engagement (RoE)
    • Scope definition and staying in scope
    • Authorization (written sign-off before testing)
    • Responsible disclosure
  • Types of assessments
    • Black box, grey box, white box testing
    • Internal vs external penetration tests
    • Red team operations vs penetration tests vs vulnerability assessments
    • Physical penetration testing
    • Social engineering assessments
  • CVSS (Common Vulnerability Scoring System)
    • Base metrics (AV, AC, PR, UI, S, C, I, A)
    • Temporal and environmental metrics
    • CVSS v3.1 vs CVSS v4.0
  • CVE and CWE understanding
    • How CVEs are assigned and what they tell you
    • Using CVEs to identify exploitable vulnerabilities in scope

Reconnaissance:

  • Passive Reconnaissance (OSINT)
    • Google Dorking (site:, filetype:, inurl:, intitle:, cache:)
    • Shodan, Censys, FOFA (internet-facing asset discovery)
    • WHOIS and domain registration history
    • DNS enumeration (A, MX, NS, TXT, CNAME, PTR records)
      • Tools: dig, nslookup, dnsx, amass, subfinder
    • Certificate transparency logs (crt.sh) for subdomain discovery
    • LinkedIn and social media OSINT (employee names, tech stack)
    • Job postings as intelligence (reveals internal technologies)
    • Wayback Machine (archived content, exposed endpoints, old credentials)
    • GitHub and GitLab OSINT (exposed source code, secrets, internal infrastructure)
      • GitLeaks, truffleHog for secret scanning in repos
    • Email harvesting (theHarvester, Hunter.io)
    • Breach data lookup (HaveIBeenPwned, Dehashed)
    • Maltego for link analysis
  • Active Reconnaissance
    • Network scanning (Nmap — host discovery, port scanning, service detection, OS fingerprinting)
      • Common Nmap flags: -sS, -sV, -sC, -O, -p-, -A, --script
    • Service enumeration (banner grabbing, version identification)
    • Web application fingerprinting (Wappalyzer, whatweb)
    • Directory and file enumeration (gobuster, ffuf, dirsearch)
    • Virtual host enumeration (vhost fuzzing)
    • API endpoint discovery
    • Vulnerability scanning (Nessus, OpenVAS, Nuclei)
    • Nikto (web server misconfiguration scanning)

Network Penetration Testing:

  • Network security reconnaissance
    • Host discovery (ping sweep, ARP scan)
    • Port scanning techniques (SYN scan, UDP scan, stealth scans)
    • Service and version detection
    • OS fingerprinting
  • Network exploitation
    • Exploiting weak network services (FTP anonymous login, Telnet, SNMP community strings)
    • SMB attacks
      • EternalBlue (MS17-010)
      • SMB relay attacks (Responder + ntlmrelayx)
      • Pass-the-Hash via SMB
    • Man-in-the-Middle on LAN
      • ARP spoofing (arpspoof, Bettercap)
      • LLMNR/NBT-NS poisoning (Responder)
      • IPv6 DNS takeover (mitm6)
    • Network service exploitation (ProxyLogon, ProxyShell, Log4Shell, PrintNightmare)
  • Wireless Penetration Testing
    • WPA2 handshake capture and offline cracking (aircrack-ng, hashcat)
    • PMKID attack
    • WPA2-Enterprise (PEAP) credential capture
    • Evil twin attack setup
    • Bluetooth and BLE testing basics
  • VPN and Remote Access Testing
    • VPN gateway enumeration
    • Testing for IKEv1 aggressive mode weaknesses
    • Identifying SSL-VPN vulnerabilities (Pulse Secure, Fortinet, Citrix CVEs)

Active Directory Penetration Testing:

  • AD enumeration
    • BloodHound / SharpHound for attack path mapping
    • ldapdomaindump
    • enum4linux, enum4linux-ng
    • PowerView (Get-NetUser, Get-NetGroup, Get-NetComputer, Find-LocalAdminAccess)
    • ADRecon
  • AD attack techniques
    • Kerberoasting (requesting TGS for SPNs → offline crack → hashcat)
    • AS-REP Roasting (accounts without pre-auth required → request AS-REP → offline crack)
    • Pass-the-Hash (using NTLM hash without cracking)
    • Pass-the-Ticket (using stolen Kerberos TGT or TGS)
    • Overpass-the-Hash (convert NTLM hash to Kerberos TGT)
    • NTLM relay attacks (ntlmrelayx, Responder)
    • DCSync (mimicking DC replication to dump all hashes — requires DS-Replication-Get-Changes-All)
    • Golden Ticket (forging TGTs using the KRBTGT hash)
    • Silver Ticket (forging TGS using a service account hash)
    • Skeleton Key (patching LSASS to allow any password)
    • AdminSDHolder abuse
    • ACL/ACE-based privilege escalation (WriteDACL, GenericAll, ForceChangePassword, AddMember)
    • Domain trust abuse (inter-forest attacks, SID history injection)
    • GPO abuse for code execution
    • Print spooler abuse (PrinterBug)
    • Shadow credentials attack (msDS-KeyCredentialLink)
  • Credential dumping
    • Mimikatz (sekurlsa::logonpasswords, lsadump::sam, lsadump::dcsync)
    • LSASS memory dumping (Task Manager, ProcDump, comsvcs.dll)
    • SAM and SYSTEM hive extraction (reg save)
    • secretsdump.py (Impacket)
    • Credential Manager and browser credential extraction
  • Lateral movement
    • WMI execution (wmiexec.py)
    • WinRM / Evil-WinRM
    • PsExec and SMBexec (Impacket)
    • RDP lateral movement (xfreerdp, Remote Desktop hijacking)
    • DCOM execution
    • Token impersonation (Incognito, Meterpreter's getsystem)

Web Application Penetration Testing:

  • OWASP Testing Guide methodology
  • Manual testing with Burp Suite
    • Intercepting and modifying requests
    • Intruder for automated fuzzing (brute force, parameter fuzzing)
    • Repeater for manual exploitation
    • Collaborator for out-of-band testing (SSRF, blind XXE, blind XSS)
    • Scanner for automated vulnerability discovery
    • Extensions (ActiveScan++, Autorize, JWT Editor, Param Miner)
  • Testing for OWASP Top 10 (see appsec-engineer.md for full list)
  • API testing
    • Enumerating API endpoints (wordlists, Swagger/OpenAPI spec review)
    • BOLA/IDOR testing (changing user IDs in requests)
    • JWT manipulation (alg=none, weak secret brute force, RS256 to HS256)
    • Rate limiting bypass techniques
    • GraphQL introspection and exploitation
  • Authentication testing
    • Username enumeration
    • Brute force and credential stuffing
    • Password reset flaws
    • MFA bypass techniques
  • Authorization testing
    • Horizontal privilege escalation (IDOR)
    • Vertical privilege escalation (accessing admin functions as regular user)
    • Forced browsing
  • Business logic testing
    • Price manipulation
    • Workflow bypass
    • Race conditions
  • File upload vulnerabilities
    • Bypassing MIME type and extension filters
    • Uploading web shells
  • XXE (XML External Entity) injection exploitation
  • SSRF exploitation (internal service access, cloud metadata endpoints)
  • Template injection (SSTI) detection and exploitation
  • SQL injection exploitation
    • Manual SQLi
    • sqlmap (automated SQLi)
  • Subdomain takeover

Cloud Penetration Testing:

  • AWS penetration testing
    • Initial access via exposed access keys (GitHub, metadata endpoint, SSRF)
    • IAM enumeration (get-account-authorization-details, enumerate-iam)
    • IAM privilege escalation (iam:AttachUserPolicy, iam:PassRole, iam:CreateLoginProfile)
    • S3 bucket enumeration and access (aws s3 ls, s3scanner)
    • EC2 instance metadata service (IMDSv1 vs IMDSv2 and SSRF to 169.254.169.254)
    • Lambda exploitation
    • ECS/EKS escape and privilege escalation
    • Tools: Pacu (AWS exploitation framework), CloudMapper, ScoutSuite, Prowler
  • Azure penetration testing
    • Azure AD enumeration (AADInternals, ROADtools)
    • Managed Identity abuse
    • Azure RBAC escalation
    • Azure Key Vault access
    • Tools: PowerZure, MicroBurst
  • GCP penetration testing
    • Service account key abuse
    • Metadata server access (169.254.169.254 / metadata.google.internal)
    • GCS bucket enumeration (GCPBucketBrute)
    • Tools: GCP Scanner, GCPwn

Exploitation:

  • Vulnerability research
    • Searching exploit databases (Exploit-DB, Packet Storm, NVD)
    • CVE → PoC mapping and exploitation
    • Adapting public exploits to target environments
  • Metasploit Framework
    • Module types (exploit, auxiliary, post, payload, encoder, evasion)
    • Meterpreter (shell interaction, privilege escalation, lateral movement, persistence)
    • MSFvenom for payload generation
    • Msfconsole workflow (search, use, set, run/exploit)
  • Manual exploitation
    • Stack-based buffer overflows (x86 — finding offsets, controlling EIP, shellcode)
    • Return-Oriented Programming (ROP) basics
    • Format string vulnerabilities
    • Use-after-free
  • Payload generation and delivery
    • MSFvenom payload types (staged vs stageless, reverse vs bind shells)
    • Custom payload encoding and obfuscation
    • PowerShell one-liner delivery
    • Macro-based delivery (VBA macros — for authorized social engineering tests)
    • HTA and JavaScript-based payloads
  • C2 (Command and Control) frameworks
    • Metasploit / Meterpreter
    • Cobalt Strike (concepts and Beacon payloads)
    • Sliver (open source)
    • Havoc C2 (open source)
    • Brute Ratel (concepts)
    • HTTP, HTTPS, DNS tunneling for C2 communication
  • Post-Exploitation
    • Situational awareness (whoami, systeminfo, net commands, ipconfig/ifconfig)
    • Persistence mechanisms
      • Windows: Registry run keys, scheduled tasks, services, WMI subscriptions, DLL hijacking
      • Linux: cron jobs, .bashrc, init scripts, systemd services, SUID backdoors
    • Defense evasion
      • AMSI bypass
      • ETW (Event Tracing for Windows) patching
      • AV/EDR evasion (process injection, reflective DLL loading, custom loaders)
      • LOLBins (Living-off-the-Land Binaries) — certutil, regsvr32, mshta, wscript, bitsadmin
    • Data collection (credentials, sensitive files, emails, browser data)
    • Exfiltration techniques (DNS tunneling, HTTPS, cloud storage)
    • Pivoting and tunneling
      • SSH tunneling (local, remote, dynamic)
      • Proxychains
      • Chisel (HTTP tunneling)
      • Ligolo-ng (reverse tunneling)
      • SOCKS proxies via Meterpreter

Social Engineering:

  • Phishing (email-based)
    • Spear phishing (targeted)
    • Pretexting
    • Credential harvesting pages (GoPhish, Evilginx)
    • MFA bypass via adversary-in-the-middle (AiTM) phishing (Evilginx2)
  • Vishing (voice phishing)
  • Smishing (SMS phishing)
  • Physical social engineering
    • Pretexting scenarios (IT support impersonation, vendor impersonation)
    • Badge cloning (HID proximity card cloning)
    • USB drop attacks
  • Social engineering assessment metrics and reporting

Vulnerability Management:

  • Vulnerability lifecycle (discovery → triage → remediation → verification → closure)
  • Vulnerability risk scoring
    • CVSS v3.1 / v4.0
    • EPSS (Exploit Prediction Scoring System)
    • Qualitative risk scoring (likelihood × impact)
  • Vulnerability scanning vs penetration testing differences
  • Remediation prioritization (threat intel, business criticality, exploitability)
  • Retesting and verification of fixes

Reverse Engineering (Basics for Pentesting):

  • Understanding PE (Portable Executable) structure
  • Static analysis of binaries (strings, imports, Ghidra)
  • Dynamic analysis (x64dbg, Process Monitor)
  • Identifying hardcoded credentials and API keys in binaries
  • Unpacking common packers (UPX)
  • Decompiling .NET applications (dnSpy, ILSpy)
  • Analyzing scripts and obfuscated code (PowerShell, VBScript, JavaScript)

Report Writing:

  • Red Team Report Writing
    • Executive Summary (for non-technical leadership)
    • Technical narrative (attack chain walkthrough)
    • Findings section
      • Finding title
      • Severity rating (Critical/High/Medium/Low/Informational)
      • Description (what the vulnerability is)
      • Evidence (screenshots, payloads, command output)
      • Impact (what an attacker could do)
      • Recommendation (specific, actionable remediation)
    • Appendices (raw tool output, scope, methodology)
  • Report quality standards
    • Reproducible findings with exact steps
    • Clear distinction between confirmed exploited and theoretically vulnerable
    • Avoiding FUD (Fear, Uncertainty, Doubt) — be precise
  • Debriefing clients (verbal walkthrough of findings)
  • Remediation retesting reporting
  • Writing CVSS scores for findings

Purple and Orange Teaming:

  • Purple Team
    • Combining red team attacks with blue team detection in real time
    • Structured exercises to improve detection coverage
    • Using MITRE ATT&CK for collaborative testing
    • Attack-detect-improve loop
    • Tools: Atomic Red Team, Caldera, Vectr (purple team tracking)
  • Orange Team
    • Developers + security working together on offensive security
    • Developer education through live attack demonstrations
    • Secure coding improvements driven by pentesting findings
  • Adversary emulation vs adversary simulation

Specialized Testing Areas:

  • IoT penetration testing
    • Firmware extraction and analysis (binwalk)
    • Default credential testing
    • Hardware debugging (UART, JTAG)
    • RF analysis (replay attacks on wireless protocols)
  • Mobile penetration testing
    • Android (adb, APK decompilation with jadx, Frida for runtime manipulation)
    • iOS (jailbreak-based testing, Objection, Frida)
    • OWASP Mobile Top 10
  • OT/ICS (Operational Technology) penetration testing basics
    • Modbus, DNP3, Profinet protocol awareness
    • Importance of safety — testing in isolation or with strict rules of engagement
    • Shodan for ICS discovery

Tools:

Platforms for Practice:

Books:

Relevant Certifications:

  • OSCP (Offensive Security Certified Professional) — industry gold standard for pentesting
  • OSEP (Offensive Security Experienced Penetration Tester) — advanced evasion and AD
  • OSWE (Offensive Security Web Expert) — advanced web app exploitation
  • CRTP (Certified Red Team Professional — Altered Security) — Active Directory focused
  • CRTE (Certified Red Team Expert — Altered Security)
  • PNPT (Practical Network Penetration Tester — TCM Security)
  • CEH (Certified Ethical Hacker — EC-Council)
  • GPEN (GIAC Penetration Tester)
  • GWAPT (GIAC Web Application Penetration Tester)
  • OSED (Offensive Security Exploit Developer) — exploit development