
External Reconnaissance with OSINT
FreeMap an organization's attack surface using OSINT techniques.
Free · Opens the source repo
What External Reconnaissance with OSINT does
Conducting External Reconnaissance with OSINT is a specialized skill designed for cybersecurity professionals conducting passive information gathering on target organizations. This skill leverages various open-source intelligence (OSINT) techniques to compile a comprehensive profile of a target's digital footprint without directly interacting with their systems. By utilizing tools for DNS enumeration, infrastructure discovery, and employee intelligence gathering, this skill is essential for the reconnaissance phase of penetration testing, enabling security experts to identify potential vulnerabilities and attack vectors.
The workflow is structured into multiple steps, beginning with domain and DNS enumeration to identify all associated domains and subdomains. This is followed by infrastructure and service discovery, where tools like Shodan and Censys are employed to reveal internet-facing services. The skill also focuses on collecting employee information and email formats, which can be crucial for social engineering tactics. Additionally, it includes techniques for analyzing exposed credentials and sensitive data through breach databases and code repositories. Finally, technology stack profiling helps to identify the frameworks and services utilized by the target organization.
This skill is particularly beneficial for penetration testers, red teamers, and security analysts who need to gather intelligence before engaging with a target. It provides a structured approach to understanding an organization's external attack surface, which is critical for identifying shadow IT assets and potential security gaps. By adhering to ethical guidelines and ensuring proper authorization, users can effectively leverage this skill to enhance their reconnaissance efforts.
When to use it
Use this skill during the initial reconnaissance phase of a penetration test or when mapping an organization's external attack surface.
When not to use it
Do not use this skill for unauthorized surveillance or harassment; it is intended for ethical and authorized engagements only.
What you can build with it
Penetration Testing Preparation
Gather critical information about a target organization before conducting active penetration testing.
Identifying Shadow IT Assets
Map out an organization's external attack surface to discover unknown or shadow IT assets.
Social Engineering Campaigns
Collect employee information and email formats to prepare for social engineering tactics.
How to install External Reconnaissance with OSINT
View source1. Install with the skills CLI
npx skills add mukul975/anthropic-cybersecurity-skills/conducting-external-reconnaissance-with-osint --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by mukul975Conducting External Reconnaissance with OSINT
When to Use
- Performing the initial reconnaissance phase of a penetration test to gather intelligence before active scanning
- Mapping an organization's external attack surface to identify unknown or shadow IT assets
- Collecting employee information, email formats, and organizational structure for social engineering campaigns
- Identifying exposed credentials, leaked data, or sensitive documents published on the internet
- Scoping the breadth of an organization's digital footprint prior to a red team engagement
Do not use for stalking, harassment, or unauthorized surveillance of individuals. OSINT gathering must be conducted within the scope of an authorized engagement and comply with applicable privacy laws (GDPR, CCPA).
Prerequisites
- Written authorization to perform reconnaissance against the target organization
- Dedicated research workstation with a VPN or Tor for anonymized queries when required
- OSINT framework tools installed: Amass, theHarvester, Shodan CLI, Recon-ng, SpiderFoot
- API keys for Shodan, Censys, SecurityTrails, Hunter.io, VirusTotal, and GitHub for enhanced results
- Disposable email accounts for accessing services that require registration during research
Workflow
Step 1: Domain and DNS Enumeration
Enumerate all domains, subdomains, and DNS records associated with the target:
- Root domain identification: Start with the primary domain and identify all related domains through reverse WHOIS lookups on registrant name, email, and organization using
whoxy.comordomaintools.com - Subdomain enumeration: Run multiple tools for comprehensive coverage:
amass enum -passive -d target.com -o amass_subs.txtfor passive subdomain discovery from 40+ data sourcessubfinder -d target.com -all -o subfinder_subs.txtfor fast passive enumerationcrt.shcertificate transparency log queries:curl -s "https://crt.sh/?q=%25.target.com&output=json" | jq -r '.[].name_value' | sort -u
- DNS record analysis: Query for all record types:
dig target.com ANY, check for SPF, DKIM, DMARC records that reveal email infrastructure, and enumerate MX records to identify email providers - Zone transfer attempt:
dig axfr @ns1.target.com target.comto check for misconfigured DNS servers - Consolidate results: Merge, deduplicate, and resolve all discovered subdomains to IP addresses. Map IP addresses to ASN and hosting providers.
Step 2: Infrastructure and Service Discovery
Identify internet-facing infrastructure without directly scanning target systems:
- Shodan:
shodan search "ssl.cert.subject.cn:target.com"to find all internet-facing services with TLS certificates for the target domain. Also search by organization name and IP ranges. - Censys: Search for target's IP ranges and TLS certificates to identify services, technologies, and potential vulnerabilities indexed from internet-wide scanning
- Cloud asset discovery: Check for S3 buckets (
target-com,target-backup,target-dev), Azure Blob storage (target.blob.core.windows.net), and GCP storage using tools likecloud_enum - WAF and CDN identification: Use
wafw00f target.comto identify web application firewalls and CDN providers that may mask the origin server IP - Historical data: Use Wayback Machine (
web.archive.org) to find removed pages, old application versions, and forgotten endpoints
Step 3: Email and Personnel Intelligence
Gather employee information and email addresses for social engineering preparation:
- Email harvesting:
theHarvester -d target.com -b all -f harvest_results.htmlto collect emails from search engines, LinkedIn, and data sources - Email format identification: Use
hunter.ioto determine the email format (first.last, flast, firstl) and verify deliverability - LinkedIn reconnaissance: Identify employees by department, particularly IT administrators, security team members, and executives. Note technologies mentioned in job postings and employee profiles.
- Organizational chart: Build an org chart from LinkedIn data to understand reporting structures, identify key personnel, and map departments
- Social media analysis: Review employee social media profiles for information about internal tools, technologies, office locations, badge photos, and security practices
- Job postings: Analyze current and historical job postings on the company career page and job boards for technology stack details, tools, and infrastructure information
Step 4: Credential and Data Leak Analysis
Search for exposed credentials and sensitive data:
- Breach databases: Check
haveibeenpwned.comAPI for breached email addresses associated with the target domain - Paste sites: Search Pastebin, GitHub Gists, and similar paste sites for leaked credentials, configuration files, or internal documents
- Code repositories: Search GitHub, GitLab, and Bitbucket for:
org:target "password",org:target "api_key",org:target "secret"- Use
trufflehogorgitleaksfor automated secret scanning across the target's public repositories
- Document metadata: Download publicly available documents (PDF, DOCX, XLSX) from the target website and extract metadata using
exiftoolto reveal internal usernames, software versions, printer names, and file paths - Google dorking: Use targeted search operators:
site:target.com filetype:pdffor public documentssite:target.com inurl:adminfor admin panelssite:target.com "index of /"for directory listingssite:pastebin.com "target.com"for paste site mentions
Step 5: Technology Stack Profiling
Identify the technologies, frameworks, and services used by the target:
- Web technology fingerprinting: Use
whatweb target.comor Wappalyzer browser extension to identify CMS, frameworks, JavaScript libraries, analytics, and server software - SSL/TLS analysis:
sslyze target.comortestssl.sh target.comto identify cipher suites, protocol versions, certificate details, and cryptographic weaknesses - JavaScript analysis: Download and review JavaScript files for framework identifiers, API endpoints, internal hostnames, and version strings
- DNS-based service identification: Review TXT records for service providers (e.g.,
v=spf1 include:_spf.google.comindicates Google Workspace,MS=msXXXXXXindicates Microsoft 365) - Mobile app analysis: Download the target's mobile applications from app stores and analyze with
apktool(Android) orfridafor hardcoded URLs, API endpoints, and embedded credentials
Key Concepts
| Term | Definition |
|---|---|
| OSINT | Open Source Intelligence; intelligence collected from publicly available sources including websites, social media, public records, and government data |
| Passive Reconnaissance | Information gathering without directly interacting with target systems, leaving no footprint in target logs |
| Active Reconnaissance | Information gathering that involves direct interaction with target systems (scanning, probing) and may be logged |
| Certificate Transparency | Public logs of TLS certificates issued by certificate authorities, queryable to discover subdomains and infrastructure |
| Attack Surface | The sum of all points where an unauthorized user can attempt to enter or extract data from an environment |
| Google Dorking | Using advanced Google search operators to find sensitive information indexed by search engines that was not intended to be public |
| Shadow IT | Technology systems and services deployed by employees or departments without the knowledge or approval of the IT department |
Tools & Systems
- Amass (OWASP): Comprehensive subdomain enumeration tool that combines passive sources, DNS brute-forcing, and certificate transparency log analysis
- Shodan: Internet-wide scanning database that indexes services, banners, and metadata for internet-connected devices, searchable by IP, domain, or organization
- theHarvester: OSINT tool for gathering emails, subdomains, hosts, employee names, and open ports from public sources
- SpiderFoot: Automated OSINT collection platform that queries 200+ data sources and correlates findings into a unified graph
- Recon-ng: Modular web reconnaissance framework with a database backend for organizing and cross-referencing discovered intelligence
Common Scenarios
Scenario: Pre-Engagement Reconnaissance for a Red Team Exercise
Context: A technology company has contracted a red team assessment. Before active testing begins, the team conducts passive OSINT to map the attack surface and identify potential entry points. The target is a SaaS company with 500 employees and a primary domain of techcorp.io.
Approach:
- Enumerate 147 subdomains via Amass and crt.sh, including staging.techcorp.io, jenkins.techcorp.io, and vpn.techcorp.io
- Shodan reveals a forgotten Elasticsearch instance on port 9200 with no authentication exposed to the internet
- theHarvester collects 89 employee email addresses, revealing the format first.last@techcorp.io
- GitHub search discovers a former developer's public repository containing a
.envfile with AWS access keys - LinkedIn analysis reveals the company uses Okta for SSO, Jira for project management, and AWS for hosting
- Google dorking finds a directory listing on docs.techcorp.io exposing internal architecture diagrams
- Compile all intelligence into a reconnaissance report that feeds directly into the threat modeling and attack planning phases
Pitfalls:
- Relying on a single subdomain enumeration tool and missing assets found by other tools using different data sources
- Failing to check cloud storage services (S3, Azure Blob, GCP) for publicly accessible buckets
- Not searching for credentials in public code repositories, which frequently yield immediate access
- Conducting active scanning (port scans, vulnerability scans) during what should be a passive-only phase
Output Format
## External Reconnaissance Report - TechCorp.io
### Attack Surface Summary
- **Domains discovered**: 3 (techcorp.io, techcorp.com, techcorpapp.com)
- **Subdomains enumerated**: 147 unique subdomains across all domains
- **Unique IP addresses**: 34 IPs mapped across AWS us-east-1 and us-west-2
- **Email addresses collected**: 89 valid corporate email addresses
- **Exposed services**: 12 internet-facing services identified via Shodan/Censys
### Critical Findings
**1. Unauthenticated Elasticsearch Instance**
- Host: 52.xx.xx.xx:9200 (elastic.techcorp.io)
- Indexed data: Application logs containing user session tokens and PII
- Source: Shodan search "ssl.cert.subject.cn:techcorp.io"
**2. AWS Credentials in Public GitHub Repository**
- Repository: github.com/former-dev/techcorp-scripts
- File: .env containing AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY
- Status: Keys appear active (not tested - out of scope for passive recon)
**3. Directory Listing Exposing Internal Documents**
- URL: https://docs.techcorp.io/internal/
- Contents: Architecture diagrams, network topology, runbooks
- Source: Google dork "site:techcorp.io intitle:index.of"
### Recommendations
1. Immediately rotate the exposed AWS credentials and audit CloudTrail logs
2. Restrict Elasticsearch access to internal networks or add authentication
3. Disable directory listings on docs.techcorp.io and audit all web servers
4. Implement GitHub secret scanning across all organization repositories
Frequently asked questions about External Reconnaissance with OSINT
Similar skills
Cloudflare Security Audit
Perform authorized security audits on codebases.
Authenticated Scan with OpenVAS
Perform deep vulnerability scans using OpenVAS with credentials.
Active Directory Penetration Test
Conduct focused AD penetration tests with ease.
Active Directory BloodHound Analysis
Visualize Active Directory attack paths and risks.
Orchestrating LLM Attacks with PyRIT
Automate multi-turn adversarial attacks against LLMs.
Operating Sliver C2
Deploy and manage Sliver C2 for red-team engagements.
