June 26, 2026
Real Recon Starts Before the First Packet Hits the Target
Most beginners think reconnaissance means running one command:

By Devansh Patel
12 min read
nmap -A example.comnmap -A example.comThen they stare at the output like they have discovered the holy truth of hacking.
They have not.
They have only asked one machine a noisy question.
Real reconnaissance is not scanning. Real reconnaissance is not throwing tools at a domain. Real reconnaissance is not collecting random ports and calling it methodology.
Reconnaissance is intelligence work.
It is the process of understanding a target so deeply that by the time you scan it, you already know what you are looking for.
A scanner gives you output.
Recon gives you direction.
And that is the difference between a person who runs tools and a person who actually hunts.
The Brutal Truth: Scanning Is Not Recon
Scanning is only one phase of reconnaissance.
A port scan tells you what responded at a specific moment from a specific network position. That is useful, but it is not enough.
A beginner sees this:
80/tcp open http
443/tcp open https
22/tcp open ssh80/tcp open http
443/tcp open https
22/tcp open sshAnd thinks:
"I found the attack surface."
No.
You found three open doors. You still do not know who built the building, where the basement is, which windows are unlocked, which old key still works, which forgotten server is connected to it, or which developer accidentally leaked the blueprint.
That is recon.
Recon is not asking:
What ports are open?What ports are open?Recon is asking:
Why does this asset exist?
Who owns it?
What technology does it run?
Is it production, staging, development, or forgotten?
Is it connected to another system?
Does it leak information?
Does it expose trust relationships?
Does it reveal old infrastructure?
Does it point to something more valuable?Why does this asset exist?
Who owns it?
What technology does it run?
Is it production, staging, development, or forgotten?
Is it connected to another system?
Does it leak information?
Does it expose trust relationships?
Does it reveal old infrastructure?
Does it point to something more valuable?The scan is only the sound of the doorbell.
Recon is knowing which house to visit, which door matters, and why the owner forgot to lock the back gate.
Tool Output Is Not Intelligence
One of the biggest mistakes beginners make is confusing tool output with understanding.
They run:
whois example.com
dig example.com
subfinder -d example.com
nmap -A example.com
gobuster dir -u https://example.com -w wordlist.txtwhois example.com
dig example.com
subfinder -d example.com
nmap -A example.com
gobuster dir -u https://example.com -w wordlist.txtThen they dump the results into a notes file and think they performed recon.
That is not recon.
That is collection.
Collection is gathering information.
Reconnaissance is turning that information into meaning.
This difference matters.
A list of subdomains is not intelligence.
This is only data:
www.example.com
api.example.com
dev.example.com
staging.example.com
admin.example.com
cdn.example.comwww.example.com
api.example.com
dev.example.com
staging.example.com
admin.example.com
cdn.example.comThis is intelligence:
dev.example.com and staging.example.com are more interesting than www.example.com because they may contain unfinished features, weaker authentication, debug errors, internal documentation, test credentials, or outdated dependencies.dev.example.com and staging.example.com are more interesting than www.example.com because they may contain unfinished features, weaker authentication, debug errors, internal documentation, test credentials, or outdated dependencies.This is data:
Apache/2.4.49Apache/2.4.49This is intelligence:
The server version may be outdated, so I should verify whether it is genuinely exposed, whether the version banner is accurate, and whether this host is in scope before testing further.The server version may be outdated, so I should verify whether it is genuinely exposed, whether the version banner is accurate, and whether this host is in scope before testing further.This is data:
api.example.com returns 401 Unauthorized.api.example.com returns 401 Unauthorized.This is intelligence:
The API exists, authentication is enforced, but I need to inspect documentation, JavaScript files, mobile app traffic, CORS behavior, exposed OpenAPI specs, and forgotten endpoints.The API exists, authentication is enforced, but I need to inspect documentation, JavaScript files, mobile app traffic, CORS behavior, exposed OpenAPI specs, and forgotten endpoints.A tool can collect.
Only the operator can understand.
The Recon Mindset: Hunt Before You Hit
The best recon does not begin with aggression.
It begins with questions.
Before touching the target directly, ask:
What does the internet already know about this organization?
What assets are publicly visible?
What domains and subdomains exist?
What third-party services are connected?
What certificates have been issued?
What technologies are exposed?
What old files are indexed?
What developers, repositories, documents, and metadata are leaking clues?
What changed recently?
What was forgotten?What does the internet already know about this organization?
What assets are publicly visible?
What domains and subdomains exist?
What third-party services are connected?
What certificates have been issued?
What technologies are exposed?
What old files are indexed?
What developers, repositories, documents, and metadata are leaking clues?
What changed recently?
What was forgotten?This is how real attack surface mapping begins.
Most weak testers scan first and think later.
Better testers think first, collect silently, map the environment, form hypotheses, and then scan with purpose.
That is the difference.
Phase 1: Passive Recon — Touch Nothing, Learn Everything
Passive recon means collecting information without directly interacting with the target's systems.
This matters because you can learn a shocking amount without sending a single packet to the target's infrastructure.
Start with the basics.
Domain Intelligence
Check domain registration, name servers, organization details, historical changes, and related domains.
You are not only asking:
Who owns this domain?Who owns this domain?You are asking:
How old is this domain?
Which registrar is used?
Which name servers control it?
Are there related domains?
Was ownership recently changed?
Does the organization use multiple brands or subsidiaries?How old is this domain?
Which registrar is used?
Which name servers control it?
Are there related domains?
Was ownership recently changed?
Does the organization use multiple brands or subsidiaries?Useful things to inspect:
WHOIS data
Registrar
Name servers
Creation date
Expiration date
Organization names
Related domains
Historical DNS recordsWHOIS data
Registrar
Name servers
Creation date
Expiration date
Organization names
Related domains
Historical DNS recordsSometimes the main domain is boring, but a related domain reveals an older forgotten system.
That is why recon is not linear.
It is investigative.
Phase 2: DNS Recon — The Internet's Address Book Leaks Stories
DNS is one of the richest recon sources.
A beginner uses DNS only to resolve an IP address.
A serious recon operator uses DNS to understand infrastructure.
Check common record types:
dig example.com A
dig example.com AAAA
dig example.com MX
dig example.com NS
dig example.com TXT
dig example.com SOA
dig example.com CAAdig example.com A
dig example.com AAAA
dig example.com MX
dig example.com NS
dig example.com TXT
dig example.com SOA
dig example.com CAAEach record tells a different story.
A / AAAA records → Where the domain points
MX records → Email infrastructure
NS records → DNS providers
TXT records → SPF, DKIM, verification records, third-party services
SOA records → Zone authority information
CAA records → Certificate authority restrictionsA / AAAA records → Where the domain points
MX records → Email infrastructure
NS records → DNS providers
TXT records → SPF, DKIM, verification records, third-party services
SOA records → Zone authority information
CAA records → Certificate authority restrictionsTXT records are especially interesting because companies often expose third-party relationships there.
You may find clues pointing to:
Google Workspace
Microsoft 365
Mailgun
SendGrid
Zendesk
Atlassian
GitHub
Vercel
Netlify
Cloudflare
AWS
Azure
GCPGoogle Workspace
Microsoft 365
Mailgun
SendGrid
Zendesk
Atlassian
GitHub
Vercel
Netlify
Cloudflare
AWS
Azure
GCPThis does not automatically mean vulnerability.
But it expands your map.
And in recon, the map is everything.
Phase 3: Certificate Transparency — The Subdomain Graveyard
Certificate Transparency logs are one of the most powerful sources for subdomain discovery.
Every time an SSL/TLS certificate is issued for a domain, it may appear in public certificate logs.
That means you can often discover assets like:
dev.example.com
staging.example.com
test.example.com
uat.example.com
vpn.example.com
admin.example.com
internal.example.com
api-v2.example.com
old.example.comdev.example.com
staging.example.com
test.example.com
uat.example.com
vpn.example.com
admin.example.com
internal.example.com
api-v2.example.com
old.example.comThe most valuable assets are often not the obvious ones.
The main website is usually hardened.
The forgotten staging panel is not.
The production login page has monitoring.
The old admin interface from 2021 does not.
The polished marketing site has a security team watching.
The abandoned subdomain running an outdated framework is sleeping in the dark.
Recon is how you find it.
Phase 4: Search Engine Recon — Google Is a Weaponized Memory
Search engines remember things companies forgot.
Use search operators to discover exposed pages, old documents, indexed directories, login panels, backups, and accidental leaks.
Examples:
site:example.com
site:example.com filetype:pdf
site:example.com filetype:xls
site:example.com filetype:docx
site:example.com inurl:admin
site:example.com inurl:login
site:example.com intitle:index.of
site:example.com "password"
site:example.com "confidential"
site:example.com "staging"
site:example.com "dev"site:example.com
site:example.com filetype:pdf
site:example.com filetype:xls
site:example.com filetype:docx
site:example.com inurl:admin
site:example.com inurl:login
site:example.com intitle:index.of
site:example.com "password"
site:example.com "confidential"
site:example.com "staging"
site:example.com "dev"Do not blindly copy-paste dorks and call it recon.
Ask what the results mean.
A PDF may reveal employee names.
A spreadsheet may reveal internal system names.
A login panel may reveal the technology stack.
An indexed directory may expose backups.
An old document may contain metadata.
A forgotten manual may describe an internal API.
Search engines are not just for finding pages.
They are for finding mistakes.
Phase 5: GitHub Recon — Developers Leak Reality
Public code repositories can expose how an organization actually builds software.
Search for:
Company name
Domain name
API endpoints
S3 bucket names
Internal hostnames
Old credentials
Configuration files
Environment variable names
Package names
Developer usernamesCompany name
Domain name
API endpoints
S3 bucket names
Internal hostnames
Old credentials
Configuration files
Environment variable names
Package names
Developer usernamesInteresting file names include:
.env
config.yml
settings.py
database.yml
docker-compose.yml
package.json
requirements.txt
pom.xml
application.properties.env
config.yml
settings.py
database.yml
docker-compose.yml
package.json
requirements.txt
pom.xml
application.propertiesAgain, the goal is not to steal secrets or abuse anything.
The goal is to understand the exposed attack surface in an authorized and ethical way.
GitHub recon may reveal:
API base URLs
Old endpoints
Internal service names
Cloud storage references
Authentication patterns
Technology stack
Developer habits
Deployment styleAPI base URLs
Old endpoints
Internal service names
Cloud storage references
Authentication patterns
Technology stack
Developer habits
Deployment styleThis is where recon becomes powerful.
You are no longer looking at the target from the outside.
You are starting to understand how it thinks.
Phase 6: Subdomain Recon — Find the Forgotten Doors
Subdomains are where recon becomes serious.
The main domain is usually only the front gate.
Subdomains reveal the actual city.
Common examples:
www.example.com
api.example.com
admin.example.com
dev.example.com
test.example.com
staging.example.com
uat.example.com
vpn.example.com
portal.example.com
support.example.com
cdn.example.com
assets.example.comwww.example.com
api.example.com
admin.example.com
dev.example.com
test.example.com
staging.example.com
uat.example.com
vpn.example.com
portal.example.com
support.example.com
cdn.example.com
assets.example.comBut do not just collect subdomains.
Classify them.
Production assets
Development assets
Staging assets
Authentication portals
APIs
Admin panels
Cloud-hosted assets
Third-party services
Old or dead systems
Redirect-only hosts
Wildcard DNSProduction assets
Development assets
Staging assets
Authentication portals
APIs
Admin panels
Cloud-hosted assets
Third-party services
Old or dead systems
Redirect-only hosts
Wildcard DNSA raw list of 5,000 subdomains is not useful.
A prioritized list of 25 interesting assets is useful.
Recon is not about having the biggest list.
It is about knowing which targets deserve attention.
Phase 7: Live Host Discovery — Not Everything Exists
After collecting subdomains, check which ones actually respond.
Some will be dead.
Some will redirect.
Some will return default pages.
Some will expose real applications.
Some will be protected by SSO.
Some will leak errors.
Some will scream "forgotten asset."
At this stage, you are not exploiting.
You are sorting.
You are separating noise from signal.
You are building a target map.
Useful categories:
200 OK pages
301/302 redirects
401/403 restricted areas
404 but server alive
Default server pages
Cloud bucket errors
Framework error pages
Login panels
API responses
GraphQL endpoints
Swagger/OpenAPI docs200 OK pages
301/302 redirects
401/403 restricted areas
404 but server alive
Default server pages
Cloud bucket errors
Framework error pages
Login panels
API responses
GraphQL endpoints
Swagger/OpenAPI docsA 403 is not useless.
A 401 is not useless.
A redirect is not useless.
Every response teaches you something.
Phase 8: Port Scanning — Now You Are Allowed to Ask Loud Questions
Only after building context should you scan.
Not because scanning is bad.
Because scanning without context is lazy.
A better approach is controlled and deliberate.
First, identify open ports:
nmap -sS -Pn -p- example.comnmap -sS -Pn -p- example.comThen enumerate only the confirmed ports:
nmap -sV -sC -p 22,80,443 example.comnmap -sV -sC -p 22,80,443 example.comDo not worship -A.
The -A flag enables multiple aggressive features, including service detection, OS detection, script scanning, and traceroute.
That may be fine in a lab.
It may be too loud in a real engagement.
A professional does not ask:
What is the biggest command I can run?What is the biggest command I can run?A professional asks:
What exact information do I need next?
What is allowed in scope?
What is the safest way to confirm it?
What risk does this scan create?What exact information do I need next?
What is allowed in scope?
What is the safest way to confirm it?
What risk does this scan create?That is the difference between chaos and methodology.
Phase 9: Service Recon — Ports Are Boring, Behavior Is Gold
An open port is not the finding.
The service behind it is what matters.
For web services, inspect:
curl -I https://example.comcurl -I https://example.comLook for:
Server headers
Security headers
Redirect behavior
Cookies
CORS headers
Cache behavior
Framework clues
Error messages
Authentication flowServer headers
Security headers
Redirect behavior
Cookies
CORS headers
Cache behavior
Framework clues
Error messages
Authentication flowInteresting headers include:
Server
X-Powered-By
Set-Cookie
Access-Control-Allow-Origin
Content-Security-Policy
Strict-Transport-Security
X-Frame-Options
X-Content-Type-OptionsServer
X-Powered-By
Set-Cookie
Access-Control-Allow-Origin
Content-Security-Policy
Strict-Transport-Security
X-Frame-Options
X-Content-Type-OptionsDo not just record them.
Interpret them.
For example:
No Content-Security-PolicyNo Content-Security-PolicyThis does not automatically mean exploitable.
But it may matter if the application has XSS risk.
Access-Control-Allow-Origin: *Access-Control-Allow-Origin: *This does not automatically mean critical.
But it becomes interesting if credentials are allowed or sensitive endpoints are exposed.
X-Powered-By: ExpressX-Powered-By: ExpressThis is not a vulnerability by itself.
But it helps fingerprint the stack and guide further testing.
Recon is context.
Context turns small clues into useful direction.
Phase 10: JavaScript Recon — The Frontend Talks Too Much
Modern web applications leak a lot through JavaScript.
Always inspect JavaScript files.
Search for:
API endpoints
Hidden routes
Feature flags
Cloud storage URLs
Authentication paths
Internal comments
GraphQL endpoints
Sentry/monitoring keys
Firebase configs
Version numbers
Admin routesAPI endpoints
Hidden routes
Feature flags
Cloud storage URLs
Authentication paths
Internal comments
GraphQL endpoints
Sentry/monitoring keys
Firebase configs
Version numbers
Admin routesCommon patterns:
/api/v1/
/api/v2/
/graphql
/admin
/internal
/debug
/swagger
/openapi.json
/config
/auth
/oauth/api/v1/
/api/v2/
/graphql
/admin
/internal
/debug
/swagger
/openapi.json
/config
/auth
/oauthJavaScript often reveals what the UI hides.
A button may be disabled, but the endpoint still exists.
A feature may be unfinished, but the route may still be deployed.
A developer may remove a link from the page, but forget to remove the API call from the bundle.
The browser is not just rendering the app.
It is carrying evidence.
Read it.
Phase 11: Directory and Content Discovery — Bruteforce With Discipline
Directory brute forcing is useful, but only when done with control.
Do not throw massive wordlists blindly.
Start with technology-aware lists.
A PHP application, a Node.js application, and a Java Spring application may expose different paths.
Examples:
/admin
/login
/dashboard
/api
/api/v1
/swagger
/docs
/backup
/uploads
/static
/assets
/config/admin
/login
/dashboard
/api
/api/v1
/swagger
/docs
/backup
/uploads
/static
/assets
/configUse the application's behavior to guide the wordlist.
Look at:
Technology stack
Robots.txt
Sitemap.xml
JavaScript routes
Error messages
Naming conventions
Known framework pathsTechnology stack
Robots.txt
Sitemap.xml
JavaScript routes
Error messages
Naming conventions
Known framework pathsA disciplined brute force is recon.
A blind brute force is noise.
Phase 12: Cloud and Third-Party Recon — The Target Is Bigger Than the Domain
Modern organizations do not live on one server.
They live across cloud providers, SaaS platforms, CDNs, identity providers, analytics platforms, support systems, and deployment pipelines.
Recon should include clues about:
AWS
Azure
Google Cloud
Cloudflare
Vercel
Netlify
Heroku
Firebase
GitHub Pages
Atlassian
Zendesk
Okta
Auth0
Microsoft 365
Google WorkspaceAWS
Azure
Google Cloud
Cloudflare
Vercel
Netlify
Heroku
Firebase
GitHub Pages
Atlassian
Zendesk
Okta
Auth0
Microsoft 365
Google WorkspaceYou are not looking to attack third parties outside scope.
You are mapping dependencies.
Why?
Because dependencies shape risk.
An exposed S3 bucket name in JavaScript may point to misconfigured storage.
A forgotten Heroku app may host an old version.
A Firebase config may reveal project structure.
A misconfigured support portal may expose user data.
A staging app on a temporary cloud domain may be less protected than the main website.
The real attack surface is rarely only example.com.
It is everything connected to it.
Phase 13: Screenshot Everything, Note Everything, Correlate Everything
Recon without notes is memory gambling.
Keep structured notes.
Track:
Asset
IP address
Status code
Technology
Purpose
Authentication
Interesting paths
Exposed files
Headers
Screenshots
Potential risk
Next actionAsset
IP address
Status code
Technology
Purpose
Authentication
Interesting paths
Exposed files
Headers
Screenshots
Potential risk
Next actionA good note looks like this:
Asset: staging.example.com
Status: 200 OK
Technology: Nginx, React, API backend
Auth: Login page exposed
Interesting: JavaScript references /api/v2/internal/users
Risk: Staging system may expose unfinished API endpoints
Next: Inspect JS routes and check allowed testing scopeAsset: staging.example.com
Status: 200 OK
Technology: Nginx, React, API backend
Auth: Login page exposed
Interesting: JavaScript references /api/v2/internal/users
Risk: Staging system may expose unfinished API endpoints
Next: Inspect JS routes and check allowed testing scopeBad note:
staging.example.com - login pagestaging.example.com - login pageThat is useless.
Your notes should help you attack, report, reproduce, and explain.
If your recon notes cannot guide the next step, they are not good notes.
The Real Goal: Build an Attack Surface Map
At the end of recon, you should not simply have files full of command output.
You should have a map.
That map should answer:
What assets exist?
Which assets are alive?
Which assets matter?
Which technologies are used?
Which systems are old?
Which systems are exposed?
Which systems require authentication?
Which systems look forgotten?
Which systems connect to APIs?
Which third parties are involved?
Which areas deserve deeper testing?What assets exist?
Which assets are alive?
Which assets matter?
Which technologies are used?
Which systems are old?
Which systems are exposed?
Which systems require authentication?
Which systems look forgotten?
Which systems connect to APIs?
Which third parties are involved?
Which areas deserve deeper testing?This is what clients pay for.
This is what bug bounty hunters need.
This is what separates professional methodology from random tool usage.
Recon is not the pre-game.
Recon is the battlefield map.
Without it, you are just walking into the dark with a scanner and ego.
The Beginner's Recon Mistake
Beginners want one magic command.
They want:
tool --hack example.comtool --hack example.comThat command does not exist.
So they replace thinking with automation.
They run ten tools, collect ten folders of output, and understand nothing.
Then they ask:
What should I do next?What should I do next?That question exposes the problem.
If recon was done properly, the next step would be obvious.
You would know which asset looks weak.
You would know which service deserves attention.
You would know which endpoint is suspicious.
You would know which subdomain is probably forgotten.
You would know where to test authentication.
You would know where to inspect access control.
You would know where to look for misconfiguration.
Good recon creates direction.
Bad recon creates confusion.
The Professional Recon Formula
Use this formula:
Collect → Filter → Classify → Correlate → Prioritize → TestCollect → Filter → Classify → Correlate → Prioritize → TestNot:
Scan → Panic → Run More Tools → Get LostScan → Panic → Run More Tools → Get LostBreak it down.
Collect
Gather domains, subdomains, DNS records, certificates, search results, documents, repositories, endpoints, and exposed services.
Filter
Remove duplicates, dead assets, irrelevant hosts, and out-of-scope systems.
Classify
Group assets by type:
Web apps
APIs
Admin panels
Authentication portals
Cloud storage
Developer systems
Staging systems
Legacy systems
Third-party servicesWeb apps
APIs
Admin panels
Authentication portals
Cloud storage
Developer systems
Staging systems
Legacy systems
Third-party servicesCorrelate
Connect clues.
Example:
GitHub reveals /api/v2/beta
JavaScript references beta-api.example.com
Certificate logs show beta-admin.example.com
DNS resolves both
One returns a login pageGitHub reveals /api/v2/beta
JavaScript references beta-api.example.com
Certificate logs show beta-admin.example.com
DNS resolves both
One returns a login pageNow you have a path.
Prioritize
Focus on assets that are likely to produce impact.
High-value recon targets often include:
Staging systems
Admin panels
APIs
Legacy applications
Debug endpoints
Exposed documentation
Authentication flows
File upload features
Password reset flows
Cloud storage referencesStaging systems
Admin panels
APIs
Legacy applications
Debug endpoints
Exposed documentation
Authentication flows
File upload features
Password reset flows
Cloud storage referencesTest
Only after all this should you move into deeper testing.
Now your testing is not random.
It is guided.
Recon Questions That Actually Matter
Ask these constantly:
Why does this asset exist?
Who is supposed to use it?
Is it production or non-production?
Does it expose authentication?
Does it expose an API?
Does it leak technology?
Does it reveal internal naming?
Does it connect to other assets?
Is it old?
Is it forgotten?
Is it monitored?
Is it in scope?
What is the impact if it breaks?Why does this asset exist?
Who is supposed to use it?
Is it production or non-production?
Does it expose authentication?
Does it expose an API?
Does it leak technology?
Does it reveal internal naming?
Does it connect to other assets?
Is it old?
Is it forgotten?
Is it monitored?
Is it in scope?
What is the impact if it breaks?These questions are more powerful than any single command.
Commands produce output.
Questions produce methodology.
A Practical Recon Workflow
Here is a clean workflow for authorized labs, CTFs, bug bounty programs, and penetration tests.
Step 1: Define Scope
Before doing anything, define what is allowed.
Allowed domains
Allowed subdomains
Allowed IP ranges
Allowed testing methods
Forbidden techniques
Rate limits
Reporting requirements
Out-of-scope systemsAllowed domains
Allowed subdomains
Allowed IP ranges
Allowed testing methods
Forbidden techniques
Rate limits
Reporting requirements
Out-of-scope systemsIf you skip scope, you are not doing professional recon.
You are creating legal risk.
Step 2: Passive Collection
Collect public information:
WHOIS data
DNS records
Certificate logs
Search engine results
Public documents
GitHub references
Technology fingerprints
Third-party servicesWHOIS data
DNS records
Certificate logs
Search engine results
Public documents
GitHub references
Technology fingerprints
Third-party servicesStep 3: Subdomain Discovery
Gather subdomains using passive and authorized active methods.
Then resolve them.
Then remove dead hosts.
Then classify what remains.
Step 4: Web Probing
Check which hosts serve web content.
Track:
Status code
Title
Redirect
Technology
Login presence
Interesting headers
ScreenshotStatus code
Title
Redirect
Technology
Login presence
Interesting headers
ScreenshotStep 5: Port Discovery
Scan only what is in scope.
Start broad if allowed.
Then narrow down.
Do not run aggressive scans blindly.
Step 6: Service Enumeration
For each exposed service, ask:
What is this?
What version is it?
Is it exposed intentionally?
Does it require authentication?
Is it known to be risky?
What deeper checks are allowed?What is this?
What version is it?
Is it exposed intentionally?
Does it require authentication?
Is it known to be risky?
What deeper checks are allowed?Step 7: Content Discovery
Use controlled directory discovery.
Base wordlists on the actual technology and behavior of the application.
Step 8: Endpoint Discovery
Inspect JavaScript, API docs, mobile traffic if allowed, and visible routes.
Look for hidden but reachable functionality.
Step 9: Prioritization
Rank assets by likely impact.
Focus on systems that are:
Sensitive
Old
Exposed
Misconfigured
Forgotten
Authentication-related
API-heavy
Admin-facing
Non-productionSensitive
Old
Exposed
Misconfigured
Forgotten
Authentication-related
API-heavy
Admin-facing
Non-productionStep 10: Testing Plan
Move from recon into testing with a clear plan.
At this point, you are no longer guessing.
You are hunting.