arrow_backBack to field notes
OFFENSIVE Published 18 Jul 2026

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:

  1. Reconnaissance — passive and active information gathering. Tools like theHarvester, amass, or plain Google dorking for exposed subdomains and employee emails.
  2. Scanning and enumerationnmap -sC -sV against the target range, directory brute-forcing with gobuster or ffuf on web apps, SMB enumeration with enum4linux on internal networks.
  3. 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.
  4. 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.
  5. 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.

Ready to go further?

This is one note from the Korra Studio knowledge base — the platform pairs every topic with 1-to-1 mentoring.

Get started freearrow_forward