What Is Penetration Testing, Really?
A practical breakdown of penetration testing: what it is, how engagements run, and what separates it from a vulnerability scan.
Penetration testing is the practice of simulating real attacks against a system, network, or application under a signed agreement, with the goal of finding exploitable weaknesses before someone without permission does. It's a controlled, time-boxed exercise that ends in a report, not an open-ended hacking spree.
The difference between pentesting and vulnerability scanning
A vulnerability scanner like Nessus or OpenVAS checks a target against a database of known signatures and gives you a list of potential issues, most of which need manual verification. A pentest goes further: the tester actually tries to exploit findings, chain them together, and demonstrate real impact. Scanning tells you a port is open and a service version looks outdated. Pentesting tells you that outdated service can be used to get a shell, and from that shell you can pivot into the domain controller.
That distinction matters for reporting too. A scan report is a list. A pentest report is a story with evidence: screenshots, command output, and a walkthrough of the attack path from initial foothold to whatever objective was agreed on (data access, domain admin, etc.).
How an engagement is scoped
Before any testing starts, the client and tester agree on rules of engagement: what's in scope (specific IP ranges, domains, applications), what's off-limits (production databases, third-party systems not owned by the client), testing windows, and emergency contacts if something breaks. This is documented in a signed authorization letter or contract. Without that authorization, the exact same technical work is a crime under laws like the US Computer Fraud and Abuse Act or the UK Computer Misuse Act.
Engagements are usually categorized by how much information the tester starts with:
- Black box — tester gets a target and nothing else, simulating an outside attacker with zero prior knowledge.
- Gray box — tester gets some information, like a user account or network diagram, similar to a malicious insider or compromised credential scenario.
- White box — tester has full access to source code, architecture docs, and credentials, useful for deep application-level testing.
What a typical methodology looks like
Most pentests loosely follow a structure close to PTES (Penetration Testing Execution Standard) or the phases in NIST SP 800-115:
- Reconnaissance — passive and active information gathering. Tools like
theHarvester,amass, or plain Google dorking for exposed subdomains and employee emails. - Scanning and enumeration —
nmap -sC -sVagainst the target range, directory brute-forcing withgobusterorffufon web apps, SMB enumeration withenum4linuxon internal networks. - Exploitation — using known CVEs, misconfigurations, weak credentials, or custom payloads to gain initial access. This might mean a Metasploit module, a crafted SQL injection payload, or a phishing email with a malicious macro.
- Post-exploitation — once you have a foothold, the real work starts: privilege escalation, lateral movement, credential harvesting with tools like Mimikatz or
secretsdump.py, and figuring out how far the access actually extends. - Reporting — writing up findings with CVSS scores, reproduction steps, evidence, and remediation guidance the client's engineering team can act on.
Types of pentests you'll run into
Network pentests target internal or external infrastructure — servers, firewalls, routers. Web application pentests focus on things in the OWASP Top 10: injection flaws, broken authentication, insecure deserialization. Mobile app pentests dig into APK/IPA files, API endpoints, and local storage. Wireless pentests test Wi-Fi security (WPA2/3 handshake capture, rogue access points). Physical and social engineering pentests test whether someone can walk into a building or convince an employee to hand over credentials, no code required.
Why companies actually pay for this
Beyond finding bugs, pentests satisfy compliance requirements. PCI DSS requires annual penetration tests for anyone handling card data. SOC 2 and ISO 27001 audits often expect evidence of regular testing. But the honest reason good security teams commission pentests isn't just the checkbox — it's that automated scanners miss business logic flaws, chained low-severity issues, and the kind of creative exploitation a skilled human finds. A scanner won't notice that changing an order ID in a URL lets you view someone else's invoice. A tester will.
Getting into this field
If you're aiming at pentesting as a career, hands-on practice matters more than certifications alone. Platforms like HackTheBox and TryHackMe build the muscle memory; certifications like OSCP validate it. Learn to read source code, understand how HTTP actually works at the byte level, and get comfortable with a Linux terminal before worrying about flashy tools.
If this rundown was useful, Korra Studio has more segments in the Offensive track covering specific exploitation techniques, tool walkthroughs, and lab-based practice you can follow along with.
Written with AI assistance, reviewed and published by Michal Pilch (CISSP), Korra Studio.
This is one note from the Korra Studio knowledge base — the platform pairs every topic with 1-to-1 mentoring.
Get started freearrow_forward