Passive Reconnaissance
Passive recon means gathering all possible information about a target without interacting directly with its infrastructure: you send no packets to its servers, scan no ports, touch nothing that leaves a trace in its logs. You rely on third-party sources (public DNS, certificates, search engines, social networks, leaks) that already hold the data. It’s the first phase of every pentest and the stealthiest: the target never notices.
Why start here
Section titled “Why start here”Every passive datum reduces the noise you’ll make later. Before scanning you already know the subdomains, the cloud provider, the mail, the technologies, and sometimes leaked credentials. Plus, in bug bounty and red team, the more you get without touching the target, the lower the chance of being detected before you even start.
What to look for
Section titled “What to look for”- Domains and subdomains: the real surface (see Subdomain Enumeration).
- IPs and ranges / ASN: what infrastructure the org owns (ASN and IP Ranges).
- Technologies: CMS, frameworks, languages, providers (Technology Fingerprinting).
- People: employees, emails, roles (People OSINT, Email Enumeration).
- Leaked secrets: credentials, keys, code (Code Repository OSINT, leaks).
- Metadata and documents: internal users, software, paths (Document Metadata).
- History: what the site looked like before (Historical Archives (Wayback)).
Sources and techniques (without touching the target)
Section titled “Sources and techniques (without touching the target)”# DNS and historical DNS (third-party sources)SecurityTrails, DNSdumpster, VirusTotal# Certificate Transparency: subdomains via issued certificatescrt.sh, censys.io# search engines specialized in exposed devices/servicesShodan, Censys, FOFA, ZoomEye (see recon-shodan)# Google dorking: files, panels, indexed leakssite:, filetype:, inurl: (see recon-dorking)# social and professional networksLinkedIn (employees), GitHub (code/secrets), Twitter# credential leaksHaveIBeenPwned, Dehashed, leak databases# historical archiveWayback Machine, archive.todayTools that orchestrate passive OSINT
Section titled “Tools that orchestrate passive OSINT”amass enum -passive -d target.com # subdomains from many passive sourcessubfinder -d target.com # passive subdomainstheHarvester -d target.com -b all # emails, hosts, namesspiderfoot / recon-ng # automated OSINT frameworksmaltego # relationship graphs (see recon-maltego)Passive vs active (the boundary)
Section titled “Passive vs active (the boundary)”What turns “passive” into “active” is touching the target’s infrastructure: a query to crt.sh is passive; an nmap against its IPs is active. A dig to a public resolver is passive; a zone transfer against its NS is active. The boundary matters for stealth and, sometimes, legal scope.
- Use third-party sources and, if you query something attributable, do it from infrastructure not linked to you.
- Don’t authenticate with your real accounts on target portals during recon.
- Save and organize everything (domains, IPs, emails, technologies) in your vault for the active phase.
For the defense (reduce your exposure)
Section titled “For the defense (reduce your exposure)”An organization reduces its passive footprint by: minimizing data in certificates and DNS, reviewing what employees leak on GitHub/LinkedIn, monitoring Certificate Transparency and leaks (HIBP), and stripping metadata from published documents.
Testing checklist
Section titled “Testing checklist”- Domains and subdomains collected (amass/subfinder/crt.sh)
- Org IPs, ranges, and ASN
- Technologies and providers identified
- Emails and employees (theHarvester, LinkedIn)
- Search for leaked secrets (GitHub, leaks, HIBP)
- Documents and metadata collected
- History reviewed (Wayback)
- Everything organized in the vault for the active phase