Day 0
Time an attacker begins OSINT reconnaissance: before any technical attack, all recon is passive and leaves no trace in your logs
60%
Of API keys and secrets found in GitHub repositories are active: never rotated after accidental exposure (GitGuardian research)
Shodan
Search engine that indexes internet-connected devices by banner and certificate: attackers use it to find exposed services before attempting exploitation
LinkedIn
Primary source for org chart intelligence: security team structure, technology tools used (from job postings), and employee email formats

SponsoredRetool

Retool's new app builder is where AI-generated code ships safely

Building apps with AI is easy. Getting them to production safely is another story.

Start building for free today

A skilled attacker does not need to touch your systems to learn most of what they need to know about your organization. Before a single packet is sent to your IP addresses, they have mapped your employee structure from LinkedIn, identified your technology stack from job postings, found credentials in data breach databases, discovered subdomains from certificate transparency logs, and indexed your exposed services via Shodan.

None of this reconnaissance shows up in your logs: it is entirely passive, targeting public data sources rather than your infrastructure. Understanding what attackers find through OSINT is the starting point for reducing your reconnaissance exposure.

OSINT Source 1: LinkedIn and Job Postings

What attackers learn from LinkedIn:

  • Org chart: Who reports to the CISO, who manages the SOC, who is the VP of Engineering: useful for targeted phishing (business email compromise) and for understanding the organizational context of the attack
  • Employee turnover: Recently departed employees who had privileged access and may have taken data or credentials with them
  • Technology stack: Engineers list tools on their profiles: "Experienced with CrowdStrike Falcon, Splunk, AWS, Terraform" tells an attacker exactly what the security stack looks like
  • Skill gaps: A small security team with no cloud security specialists suggests cloud configuration reviews are low-priority

What attackers learn from job postings:

Job postings are unusually candid about internal technology:

Example job posting intelligence:
"Requirements: Experience with AWS (EC2, S3, RDS), Kubernetes (EKS), 
HashiCorp Terraform, Jenkins CI/CD, and our security tools 
(CrowdStrike Falcon, Qualys, Splunk SIEM)."

What this tells an attacker:
- AWS with specific services → look for exposed S3 buckets, IAM misconfigurations
- Jenkins → check for exposed Jenkins console
- CrowdStrike → attacker needs to evade a specific EDR
- Qualys → vulnerability scanning is in place, known CVEs may be patched
- Splunk → SIEM is in place: attacker needs to minimize event generation

Defensive steps:

  • Audit your own job postings: specify technology categories ("cloud infrastructure") rather than specific products ("AWS EKS, Terraform 1.6")
  • Review LinkedIn employee profiles for disclosed internal tools: they are not required to list internal tool names; most will remove this if asked
  • Implement a social engineering awareness program: employees should know that tool disclosure on social media is a reconnaissance vector

OSINT Source 2: DNS, Certificates, and Infrastructure

Passive DNS and certificate transparency:

Certificate transparency logs are public databases of every TLS certificate ever issued. Every subdomain you have ever given a certificate to is discoverable:

# Using crt.sh to enumerate subdomains via certificate transparency
curl -s 'https://crt.sh/?q=%.example.com&output=json' | 
  jq -r '.[].name_value' | 
  sort -u | 
  grep -v '^\*'

# Using amass for comprehensive subdomain enumeration
amass enum -passive -d example.com -o subdomains.txt

# Using subfinder (fast passive enumeration)
subfinder -d example.com -silent

Typical findings from certificate transparency searches:

  • dev.example.com: development environment, may be less patched
  • staging.example.com: staging environment with production-like access
  • jenkins.example.com: CI/CD server, should not be public-facing
  • vault.example.com: secrets management, should not be public-facing
  • admin.example.com: administrative interface
  • vpn.example.com: VPN endpoint, version disclosure may reveal unpatched software

Shodan and Censys: indexing exposed services:

# Search Shodan for all services associated with an organization
shodan search 'org:"Example Corporation" -H

# Find specific vulnerable services
shodan search 'product:Jenkins hostname:example.com'
shodan search 'http.title:"GitLab" hostname:example.com'
shodan search 'ssl:example.com port:8080'

# Look at what Shodan sees for your IP ranges
shodan host 203.0.113.100

Shodan continuously crawls the internet and indexes service banners, including software version numbers. An exposed Confluence server showing Atlassian Confluence 8.1.0 tells an attacker exactly which CVEs apply.

Run your own passive reconnaissance first:

# What does your organization look like from the outside?
# Run these against your own domains before attackers do
amass enum -d example.com -o recon/subdomains.txt
shodan search "org:Example Corporation"
curl -s 'https://crt.sh/?q=%.example.com&output=json' | jq -r '.[].name_value' | sort -u
nmap -sV -p 80,443,8080,8443,22,3389 $(cat recon/subdomains.txt | head -50)
Free daily briefing

Briefings like this, every morning before 9am.

Threat intel, active CVEs, and campaign alerts, distilled for practitioners. 50,000+ subscribers. No noise.

OSINT Source 3: GitHub and Code Repositories

What leaks into public GitHub repositories:

  • API keys and secrets committed accidentally
  • Internal hostnames, IP addresses, and service endpoints in config files
  • AWS account IDs, GCP project IDs
  • Database connection strings with credentials
  • SSH private keys
  • .env files committed before adding to .gitignore
  • Internal documentation in README files

Search GitHub for your organization's secrets:

# TruffleHog: scan for high-entropy strings and known credential patterns
trufflehog github --org=ExampleCorp --only-verified

# Gitleaks: scan a repository
gitleaks detect --source ./repo --verbose

# GitHub dork searches (manually or via API)
# site:github.com "example.com" password
# site:github.com "example.com" "api_key"
# site:github.com org:examplecorp filename:.env
# site:github.com org:examplecorp "aws_access_key_id"

Tools attackers use and defenders should run first:

# GitGuardian (free for open source)
# Scans public GitHub for your organization's secrets
# Sign up and add your domain to receive alerts when secrets leak

# truffleHog: run against all your public repos
for repo in $(gh repo list ExampleCorp --json name -q '.[].name'); do
  echo "Scanning $repo..."
  trufflehog github --repo=https://github.com/ExampleCorp/$repo --only-verified 2>/dev/null
done

Defensive steps:

  • Add pre-commit hooks that scan for secrets before commit (gitleaks, git-secrets)
  • Enable GitHub secret scanning on all repositories
  • Configure push protection to block pushes containing detected secrets
  • Run TruffleHog or GitGuardian against all existing public repos: rotate any exposed credentials immediately

OSINT Source 4: Breach Data and Credential Exposure

Have I Been Pwned and breach databases:

Multiple data breach databases contain billions of employee email/password combinations from past breaches of other services. Attackers use these to:

  1. Credential stuffing: try breach passwords against your VPN, email, and SSO
  2. Password spraying: use common passwords from breach data against all employee accounts
  3. Context building: knowing an employee's personal email and past passwords reveals patterns
# Check your organization's email domain against HIBP
# Register your domain at haveibeenpwned.com for free breach notifications
curl -s 'https://haveibeenpwned.com/api/v3/breachesforaccount/employee@example.com' \
  -H 'hibp-api-key: YOUR_API_KEY' | jq '.[].Name'

# Bulk domain check (via HIBP API or paid service)
# SpyCloud, Flare, and Constella Intelligence provide enterprise breach monitoring

Dehashed and other paid breach databases:

Beyond HIBP, paid services index plaintext passwords from breaches. Attackers often subscribe to these. Defenders should also check:

  • DeHashed (subscription service)
  • Intelligence X
  • Leaked.site

The defensive response to breach exposure:

# Force password reset for all accounts found in breach data
# For Azure AD / Entra ID:
Get-AzureADUser -Filter "mail eq 'exposed-user@example.com'" | 
  Set-AzureADUserPassword -ForceChangePasswordNextLogin $true

# Enable MFA for all accounts: breach passwords become useless with MFA
# This is the single highest-impact control for credential stuffing prevention

Pastebin, dark web, and telegram OSINT:

Attackers monitor paste sites and dark web forums for leaked credentials, internal documents, and breach announcements. Defensive monitoring:

  • DarkOwl, Flashpoint, Recorded Future: commercial dark web monitoring
  • Pulsedive: free threat intelligence for domain/email monitoring
  • OSINT Industries: free tier for searching leaked data

Reduce your OSINT exposure:

ExposureReduction
Employee emails in breach dataMFA on all accounts, password manager with unique passwords
Exposed subdomainsTake down dev/staging/admin from public DNS, require VPN
GitHub secretsPre-commit hooks, GitHub secret scanning, rotate all found credentials
Version disclosure in service bannersRemove server headers, keep software current
Job posting tech stack detailsSpecify categories, not product names
LinkedIn tool disclosureAwareness training, employees can remove internal tool names

The bottom line

Attackers build a complete intelligence picture of your organization from public data before touching a single system. Run the same reconnaissance against yourself first: use Amass and crt.sh to find exposed subdomains, TruffleHog to scan public repos for secrets, Shodan to see what services you are exposing with version banners, and HIBP to identify breach-exposed employee credentials. The three highest-impact defensive responses: enable MFA everywhere (negates breach credential value), enable GitHub secret scanning with push protection, and put dev/staging/admin subdomains behind VPN rather than public DNS.

Frequently asked questions

What is OSINT in cybersecurity?

OSINT (open-source intelligence) is the collection of publicly available information used to build intelligence about a target. Attackers use it to discover employee identities and email formats (LinkedIn, Hunter.io), organization technology stacks (job postings), exposed infrastructure (Shodan, Censys, certificate transparency logs), leaked credentials (breach databases, HIBP), and secrets accidentally committed to public repositories (TruffleHog, GitHub search). All of this reconnaissance is passive: it leaves no trace in the target's logs.

How do you defend against OSINT-based attacks?

Run the same reconnaissance against yourself first using Amass, Shodan, TruffleHog, and HIBP. Enforce MFA on all accounts to neutralize breach credential value. Enable GitHub secret scanning and pre-commit hooks to prevent secrets from leaking to public repos. Remove development, staging, and admin subdomains from public DNS. Train employees that disclosing internal tool names on LinkedIn and job postings provides attacker reconnaissance value.

What OSINT sources do attackers use to research a target organization?

Attackers use layered OSINT across six categories: passive DNS and subdomain enumeration (SecurityTrails, Shodan, Censys — revealing internal services exposed to the internet); LinkedIn for employee names, roles, and internal tool/technology mentions in job postings; data breach databases (HaveIBeenPwned, DeHashed) for corporate email credentials from third-party breaches; public GitHub repositories for accidentally committed secrets, internal API endpoints, and configuration files; Google dorks (site:target.com filetype:pdf OR filetype:xlsx) for sensitive documents; and WHOIS history for historical IP ranges and domain registrations. The recon phase typically takes 1-5 days before any active exploitation.

How do I use Shodan to find my organization's exposed services?

Run a Shodan search for your organization's name and ASN: 'org:"Your Company Name"' returns all internet-facing services registered to your organization's IP ranges. Also search by your primary IP ranges: 'net:192.0.2.0/24'. Review each result for unexpected services: RDP exposed on port 3389, SSH on port 22, database ports (1433, 5432, 3306, 27017) accessible from the internet, and outdated software versions in the banner. Set up Shodan Monitor for continuous alerting: it notifies you when new services appear in your IP ranges. This is the same view an attacker gets during reconnaissance — run this before a penetration test to understand your attack surface.

What is red team OSINT and how is it different from threat intelligence OSINT?

Red team OSINT is adversary-perspective reconnaissance performed against your own organization to discover what an attacker would find: exposed systems, leaked credentials, employee information, and technology footprint. The goal is to discover vulnerabilities before attackers do. Threat intelligence OSINT is outward-looking: monitoring dark web forums, threat actor channels, and paste sites for mentions of your organization, leaked data, or planned attacks against your industry. Both are valuable but serve different purposes. Red team OSINT should be done quarterly by your security team or annually by a third-party red team. Threat intelligence OSINT requires continuous monitoring, typically via a commercial threat intelligence platform.

How do threat actors use employee LinkedIn and social media profiles to execute targeted attacks?

LinkedIn provides attackers with a detailed organizational chart, technology inventory, and employee targeting list. From a corporate LinkedIn page, attackers can determine: the entire technology stack from job postings (we are hiring someone with experience in Palo Alto, Okta, Snowflake, and Kubernetes -- these are the systems in the environment), key decision-makers and their direct reports for business email compromise targeting, recent employee turnover that suggests IT changes or vulnerable transition periods, and merger or acquisition activity that may mean security tools are in flux. Individual employee profiles reveal personal email patterns (firstname.lastname@company.com), home city for spear phishing lure context (local events, sports teams), previous employers for cross-reference with public breach data, and personal interests for social engineering pretexts. Defender actions: train employees not to list specific vendor names in skills sections (use generic terms like 'identity management' instead of 'Okta administrator'). Configure LinkedIn to require connection approval before profile viewers can see employee lists. Use LinkedIn's 'Viewing in private mode' option for security research. Monitor for fake profiles impersonating your employees or executives using your company's name (search for your company name and 'recruiter' or HR titles).

Sources & references

  1. OSINT Framework: Comprehensive OSINT Tool Catalog
  2. Shodan: Internet-connected Device Search Engine
  3. Have I Been Pwned: Credential Breach Database

Free resources

25
Free download

Critical CVE Reference Card 2025–2026

25 actively exploited vulnerabilities with CVSS scores, exploit status, and patch availability. Print it, pin it, share it with your SOC team.

No spam. Unsubscribe anytime.

Free download

Ransomware Incident Response Playbook

Step-by-step 24-hour IR checklist covering detection, containment, eradication, and recovery. Built for SOC teams, IR leads, and CISOs.

No spam. Unsubscribe anytime.

Free newsletter

Get threat intel before your inbox does.

50,000+ security professionals read Decryption Digest for early warnings on zero-days, ransomware, and nation-state campaigns. Free, daily, no spam.

Unsubscribe anytime. We never sell your data.

Eric Bang
Author

Founder & Cybersecurity Evangelist, Decryption Digest

Cybersecurity professional with expertise in threat intelligence, vulnerability research, and enterprise security. Covers zero-days, ransomware, and nation-state operations for 50,000+ security professionals every morning.

Black Hat Giveaway

Win a $2,495 Black Hat pass.

Full-access to Black Hat USA 2026 in Las Vegas. Subscribe free to enter.

Joins Decryption Digest daily briefing. Unsubscribe anytime.

Related Questions: Answer Hub

Giveaway: Black Hat USA 2026 Full-Access Pass ($2,495 value)

Details →
Daily Briefing

Subscribe to enter the giveaway

Every subscriber is automatically entered. You also get daily threat intel every morning: zero-days, ransomware, and nation-state campaigns. Free. No spam.

Already subscribed? You're already entered.

Giveaway

Win a $2,495 Black Hat USA 2026 pass.