Penetration Testing
Authorized security testing of systems and applications
Penetration Testing is a systematic process of probing for vulnerabilities in networks, systems, and applications by simulating attacks that a malicious actor might use.
Testing Methodology
- Planning and Scoping - Defining objectives and boundaries
- Reconnaissance - Information gathering about targets
- Scanning and Enumeration - Identifying systems and services
- Vulnerability Analysis - Identifying potential weaknesses
- Exploitation - Attempting to compromise systems
- Post-Exploitation - Assessing impact and lateral movement
- Reporting - Documenting findings and recommendations
Testing Types
- Black Box - No prior knowledge of the target
- White Box - Full knowledge including source code
- Gray Box - Partial knowledge, simulating insider threat
- External - Testing from outside the network
- Internal - Testing from within the network
Common Tools
- Reconnaissance: Nmap, Recon-ng, Shodan
- Web Testing: Burp Suite, OWASP ZAP
- Exploitation: Metasploit, Cobalt Strike
- Password Attacks: Hashcat, John the Ripper
- Reporting: Dradis, PlexTrac
Standards and Frameworks
- PTES (Penetration Testing Execution Standard)
- OWASP Testing Guide
- NIST SP 800-115
- CREST methodology