learn/phase-2/p2-w8/lesson 01
Milestone 8 · lesson 1

The Big Picture: Recon, Scanning & Enumeration

The map of this whole week: the three phases of information gathering, in plain English.
Lab: Recon in Miniature

Run a tiny end-to-end recon: look the target up, then read its homepage.

What you'll learn

  • Understand why information gathering comes before any attack.
  • Tell reconnaissance, scanning, and enumeration apart, they are three different steps, not synonyms.
  • Follow the simple flow that every lesson in this week fits into.
  • Know what question each phase answers and roughly which tools belong to it.

The Big Picture: Recon, Scanning & Enumeration

This week has a lot of tools in it, whois, nmap, subfinder, gobuster, nikto, and more. Before you meet any of them, take two minutes to see the map. Every tool in this week fits into one simple flow, and once you can see that flow, the rest of the week just clicks into place.

Why gather information first?

Imagine a thief who wants to rob a house. A smart one doesn't just walk up and kick the door. First they watch: which lights are on, when the family leaves, whether there's a dog, which window has a broken latch. By the time they act, they already know exactly where to go and what to avoid.

Security testing works the same way. The stage where you learn everything you can about a target, before you try anything, is called information gathering. Skip it and you're guessing in the dark. Do it well and the target's own weak spots point you straight to them.

Information gathering is not one action, it's three steps, done in order. Beginners often use the three names as if they mean the same thing. They don't.

1Reconnaissance
"What exists, and who owns it?"
whois · crt.sh · subfinder · Shodan
then ↓
2Scanning
"What is reachable and switched on?"
nmap · rustscan · masscan · ping
then ↓
3Enumeration
"What exactly is running, in detail?"
nikto · enum4linux · ffuf · gobuster
Exploitation , now you know exactly where to aim.

The three steps, in plain English

1. Reconnaissance , "what exists?"

You're building a list of everything the target owns: their domains and subdomains, IP ranges, email addresses, the technologies they use, even employee names. Most of this comes from third parties (search engines, public records, certificate logs), so the target never even knows you looked.

Example: you discover the company acme.com also runs dev.acme.com, mail.acme.com, and a forgotten old-portal.acme.com.

2. Scanning , "what is reachable?"

Now you have a list of hosts. Scanning checks which of them are actually alive and which doors (ports) are open. A machine might have 65,535 possible ports; scanning quickly tells you the handful that are open and listening, and roughly what's behind each.

Example: you scan dev.acme.com and find port 22 (SSH), port 80 (a website), and port 3306 (a database) are open.

3. Enumeration , "what exactly is running?"

Scanning told you a door is open; enumeration is looking closely through it. For each open service you dig out the specifics: the exact software and version, usernames, shared folders, hidden pages, configuration mistakes, the concrete details that tell you how to attack.

Example: that website on port 80 turns out to be WordPress 5.4 with an outdated plugin and a login page at /wp-admin.

The whole flow at a glance

StepThe question it answersA few of its tools
ReconnaissanceWhat exists? Who owns it?whois, crt.sh, subfinder, Shodan
ScanningWhat's reachable and switched on?nmap, rustscan, masscan
EnumerationWhat exactly is running, in detail?nikto, enum4linux, ffuf, gobuster

One easy way to remember it: recon widens (find everything), scanning narrows (find what's live), enumeration deepens (find the details). Broad, then reachable, then detailed.

How this week is laid out

Each lesson that follows is one part of this flow, in order:

  1. This lesson , the map you're reading now.
  2. The Enumeration Workflow , the same flow in more depth, plus passive vs active recon and the everyday tools.
  3. Subdomain Enumeration , the recon step: finding every subdomain a target owns.
  4. Port Scanning with nmap , the scanning step: finding open ports and services.
  5. Service Enumeration , looking closely at each open service.
  6. Wordlists , the ammunition for guessing hidden names and passwords.
  7. Directory & Content Discovery , finding hidden pages and files on a web server.
  8. Deeper Web Recon , crawling, parameters, and screenshots at scale.

You don't need to memorise any commands yet. Just hold onto the flow: recon, then scan, then enumerate. Every tool you meet this week is doing one of those three jobs.

Why this matters

The order is the whole point. You can't scan hosts you haven't found, and you can't enumerate a service you haven't scanned. Beginners who jump straight to the exciting tool waste hours poking at the wrong thing. Follow the flow and each step hands the next one exactly what it needs.

Check your understanding

4 questions

Type an answer and press Check. Grading is keyword-based and forgiving, so short answers are fine.

  1. 1

    You are hired to test a company. Before attacking anything, you spend time gathering information about the target. What is this whole first stage of the job called?

  2. 2

    Reconnaissance, scanning, and enumeration, are these three names for the same thing, or three different steps?

  3. 3

    Which phase answers the question 'which ports are open and which hosts are switched on?'

  4. 4

    Which phase digs into the exact details, software versions, usernames, hidden pages, of a service you already found?