SP

SpiderFoot

global API

SpiderFoot

Type: osint
Module: SpiderFoot

Capabilities

Automated Recon 200+ Data Sources Attack Surface Mapping Dark Web Scanning Data Breach Detection Correlation Engine

Try SpiderFoot

API Endpoint

Results

Overview

SpiderFoot is an open-source intelligence automation framework that queries over 200 data sources to gather intelligence on IP addresses, domains, email addresses, names, and other entities. Created by Steve Micallef, SpiderFoot automates the tedious process of collecting OSINT by chaining queries across multiple sources and correlating results into a unified investigation view. Available as both open-source (self-hosted) and a commercial cloud service (SpiderFoot HX), it represents one of the most comprehensive automated reconnaissance platforms available.

For OSINT investigators, SpiderFoot eliminates the manual process of querying dozens of individual data sources and correlating results. A single scan target -- whether an IP address, domain name, email address, phone number, or person's name -- triggers automated queries across all relevant data sources, with results cross-referenced and linked through the platform's correlation engine. This automation transforms what would be hours of manual investigation into a systematic, repeatable process that ensures no relevant data source is overlooked.

SpiderFoot's architecture is modular, with each data source integration implemented as an independent module. This design enables rapid addition of new sources and customization of scan scope. Modules can be enabled or disabled per scan, allowing analysts to tailor reconnaissance depth to specific investigation requirements. The platform supports both passive reconnaissance (querying external databases without touching the target) and active scanning modes (directly probing target infrastructure).

The platform's correlation engine is its key differentiator from simple multi-source query tools. When SpiderFoot discovers an entity (an IP address, domain, email, or hostname), it automatically feeds that entity into all applicable modules, creating a recursive discovery process. A domain scan might discover subdomains, which resolve to IPs, which reveal co-hosted domains, which lead to additional email addresses, which appear in breach databases. This recursive expansion maps the complete intelligence picture from a single starting point.

Data Sources and Coverage

SpiderFoot integrates with over 200 data sources across multiple intelligence categories.

CategoryModule CountExamplesData Types
DNS Intelligence15+SecurityTrails, DNSDumpster, ViewDNSSubdomains, DNS records, zone transfers
WHOIS & Registration10+WhoisXML, DomainTools, ARIN/RIPERegistrant data, registration history
Threat Intelligence20+VirusTotal, AlienVault OTX, ThreatFoxMalware, C2, blocklists
Internet Scanning10+Shodan, Censys, ZoomEyeOpen ports, services, vulnerabilities
Dark Web5+Tor, I2P, .onion scanning, dark web searchDark web mentions, hidden services
Breach Intelligence10+Have I Been Pwned, Intelligence X, DeHashedLeaked credentials, exposed data
Social Media10+Twitter, LinkedIn, GitHub, RedditProfiles, posts, repositories
Geolocation5+MaxMind, IPInfo, IP2LocationIP geolocation, ASN data
Email Intelligence10+Hunter.io, EmailRep, email validationEmail discovery, verification, reputation
Certificate Intelligence5+crt.sh, CertSpotter, SSL LabsCertificate history, transparency logs
Search Engines5+Google, Bing, DuckDuckGo, BaiduCached content, indexed pages
Code Repositories5+GitHub, GitLab, BitbucketCode leaks, secret exposure
Passive DNS5+PassiveDNS, CIRCL, FarsightHistorical DNS resolution
Web Analysis10+BuiltWith, Wappalyzer, web scrapersTechnology detection, content analysis

Scan Target Types

Target TypeDescriptionModule Activation
IP AddressSingle IPv4 or IPv6 addressPort scanning, geolocation, reverse DNS, blocklist checks
DomainFully qualified domain nameDNS, WHOIS, subdomains, certificates, web analysis
SubnetCIDR notation network rangeAll hosts in range, network ownership
EmailEmail addressBreach checks, social profiles, domain analysis
PhonePhone numberCaller ID, social profiles, carrier lookup
UsernameOnline usernameCross-platform profile discovery
Person NameFull nameSocial media, public records, news mentions
Bitcoin AddressCryptocurrency addressTransaction analysis, exchange attribution
ASNAutonomous System NumberNetwork ownership, IP ranges, peering

API Integration

SpiderFoot provides both a web UI and a REST API for scan management and result retrieval. The self-hosted version runs on http://localhost:5001 by default.

API Endpoints

EndpointMethodDescription
/api/scansGETList all scans
/api/scan/newPOSTStart a new scan
/api/scan/{id}/statusGETGet scan status
/api/scan/{id}/dataGETGet scan results
/api/scan/{id}/data/type/{type}GETGet results by data type
/api/scan/{id}/deleteDELETEDelete a scan
/api/scan/{id}/stopPOSTStop a running scan
/api/scan/{id}/export/csvGETExport results as CSV
/api/scan/{id}/export/jsonGETExport results as JSON
/api/modulesGETList available modules
/api/typesGETList data types

Deployment Options

OptionCostFeaturesBest For
Open SourceFreeSelf-hosted, CLI + web UI, all modules, full customizationSecurity teams, researchers
SpiderFoot HXFrom $100/moCloud-hosted, team collaboration, scheduling, API, SLAEnterprise teams
DockerFreeContainerized deployment, easy setupDevSecOps integration

Query Examples

curl Examples

# Start a new scan (self-hosted)
curl -X POST "http://localhost:5001/api/scan/new" \
  -H "Content-Type: application/json" \
  -d '{"scanname": "Example Corp Recon", "scantarget": "example.com", "usecase": "all", "modules": ""}'

# List all scans
curl "http://localhost:5001/api/scans"

# Get scan status
curl "http://localhost:5001/api/scan/SCAN_ID/status"

# Get scan results
curl "http://localhost:5001/api/scan/SCAN_ID/data"

# Get results filtered by type (e.g., email addresses)
curl "http://localhost:5001/api/scan/SCAN_ID/data/type/EMAILADDR"

# Export scan results as JSON
curl "http://localhost:5001/api/scan/SCAN_ID/export/json" > results.json

# Stop a running scan
curl -X POST "http://localhost:5001/api/scan/SCAN_ID/stop"

# Delete a scan
curl -X DELETE "http://localhost:5001/api/scan/SCAN_ID/delete"

# List available modules
curl "http://localhost:5001/api/modules"

# Docker deployment
docker run -p 5001:5001 spiderfoot/spiderfoot

Elixir Integration

# Start an automated full-scope scan
{:ok, scan} = PrismaticOsint.SpiderFoot.scan("example.com",
  name: "Example Corp Reconnaissance",
  modules: :all,
  use_case: :all
)
# => %{id: "scan_abc123", status: "running", target: "example.com"}

# Check scan status
{:ok, status} = PrismaticOsint.SpiderFoot.status(scan.id)
# => %{status: "running", progress: 67, modules_completed: 142, modules_total: 212}

# Get results by type
{:ok, emails} = PrismaticOsint.SpiderFoot.results(scan.id, type: :email)
# => [
#   %{data: "admin@example.com", source: "sfp_hunter", confidence: 90},
#   %{data: "john.doe@example.com", source: "sfp_linkedin", confidence: 75}
# ]

# Get all subdomains discovered
{:ok, subdomains} = PrismaticOsint.SpiderFoot.results(scan.id, type: :subdomain)
# => [
#   %{data: "mail.example.com", source: "sfp_securitytrails"},
#   %{data: "vpn.example.com", source: "sfp_crtsh"},
#   %{data: "dev.example.com", source: "sfp_dnsdumpster"}
# ]

# Get vulnerability findings
{:ok, vulns} = PrismaticOsint.SpiderFoot.results(scan.id, type: :vulnerability)

# Export full scan report
{:ok, report} = PrismaticOsint.SpiderFoot.export(scan.id, format: :json)

# Targeted passive-only scan (no active probing)
{:ok, passive_scan} = PrismaticOsint.SpiderFoot.scan("target-person@example.com",
  name: "Person OSINT - Passive Only",
  modules: [:passive_only],
  use_case: :passive
)

# Integrate SpiderFoot results into platform pipeline
{:ok, enriched} = PrismaticOsint.Pipeline.spiderfoot_enrichment("example.com",
  scan_modules: [:dns, :email, :breach, :social],
  cross_reference: [:shodan, :securitytrails, :virustotal]
)

Data Schema

FieldTypeDescription
scan_idstringUnique scan identifier
scan_namestringUser-assigned scan name
scan_targetstringOriginal scan target
scan_statusenumcreated, running, finished, aborted, error
scan_starteddatetimeScan start timestamp
scan_endeddatetimeScan completion timestamp
data[].typestringSpiderFoot data type (EMAILADDR, DOMAIN, IP_ADDRESS, etc.)
data[].datastringDiscovered data value
data[].modulestringModule that discovered this data
data[].sourcestringSource entity that led to this discovery
data[].confidenceintegerConfidence score (0-100)
data[].riskenumRisk assessment (info, low, medium, high, critical)
data[].last_seendatetimeWhen the data was last observed

SpiderFoot Data Types

Type CodeDescriptionExample
DOMAIN_NAMEDiscovered domainexample.com
INTERNET_NAMESubdomain or hostnamemail.example.com
IP_ADDRESSIPv4 address1.2.3.4
IPV6_ADDRESSIPv6 address2001:db8::1
EMAILADDREmail addressadmin@example.com
PHONE_NUMBERPhone number+1-555-123-4567
SOCIAL_MEDIASocial media profiletwitter.com/example
VULNERABILITYCVE or vulnerabilityCVE-2024-12345
DARKNET_MENTIONDark web referenceMention on .onion site
LEAKSITE_CONTENTBreach/leak dataCredentials in dump
SSL_CERTIFICATECertificate detailsSHA-256 fingerprint
TCP_PORT_OPENOpen port443/tcp
WEB_TECHNOLOGYDetected technologyWordPress 6.4
ASNAutonomous SystemAS13335
GEOINFOGeolocation dataCountry, city, coordinates

Use Cases

Automated Reconnaissance

SpiderFoot eliminates the manual process of querying individual OSINT sources. A single scan target triggers comprehensive reconnaissance across all relevant data sources with automatic correlation. This systematic approach ensures complete coverage without relying on an analyst's memory of which sources to check, making it ideal for standardized reconnaissance procedures.

Attack Surface Discovery

By querying DNS databases, certificate transparency logs, web crawlers, and internet scanners simultaneously, SpiderFoot maps the complete external attack surface of an organization. The recursive discovery process uncovers shadow IT, forgotten infrastructure, and interconnected services that manual investigation might miss.

Data Breach Assessment

SpiderFoot's integration with breach databases (Have I Been Pwned, Intelligence X, DeHashed) enables rapid assessment of an organization's exposure to credential leaks. By discovering all email addresses associated with a target domain and checking each against breach databases, SpiderFoot quantifies credential exposure across the organization.

Dark Web Monitoring

SpiderFoot's dark web modules scan .onion services, dark web forums, and paste sites for mentions of target entities. This reveals whether an organization's data, credentials, or internal documents have been posted on dark web marketplaces or forums.

Person-of-Interest Investigation

When investigating a specific individual, SpiderFoot correlates information across social media platforms, public records, email databases, and breach repositories to build a comprehensive profile. Starting from a name, email, or username, the platform discovers linked accounts, associated organizations, and digital footprints.

Supply Chain Security Assessment

SpiderFoot enables assessment of third-party vendor security posture by scanning vendor domains, IP ranges, and key personnel. This reveals exposed infrastructure, leaked credentials, dark web mentions, and other risk indicators for supply chain partners.

Limitations

LimitationImpactMitigation
API key requirementsMany premium modules require API keys from third-party servicesPre-configure API keys for all relevant services
Scan durationFull-scope scans across 200+ modules can take hoursUse module selection to scope scans appropriately
Rate limitingThird-party APIs may rate-limit SpiderFoot queriesConfigure per-module rate limits in SpiderFoot settings
False positivesAutomated correlation may link unrelated entitiesReview and validate high-impact findings manually
Resource consumptionLarge scans consume significant CPU, memory, and bandwidthDeploy on dedicated infrastructure with adequate resources
Active scanning riskSome modules perform active probing of target infrastructureUse passive-only mode for unauthorized targets
Data freshnessResults depend on freshness of underlying data sourcesRun scans periodically for current intelligence

Passive vs. Active Modules: SpiderFoot modules range from purely passive (querying external databases) to actively scanning target infrastructure. Ensure that active scanning modules are only enabled against authorized targets. SpiderFoot's module documentation clearly marks which modules perform active probing.

Third-Party API Terms: SpiderFoot queries third-party APIs on your behalf. Ensure your use of these APIs complies with their individual terms of service, particularly regarding automated queries and data retention.

Data Handling: SpiderFoot scans may discover sensitive information including email addresses, breach data, and personal information. Handle discovered data in accordance with applicable privacy regulations (GDPR, CCPA) and organizational data handling policies.

Authorization: While passive reconnaissance is generally legal, the comprehensiveness of SpiderFoot scans means they can discover information that the target may not expect to be easily aggregated. Ensure reconnaissance activities are authorized, particularly for engagements involving person-of-interest investigations.

Dark Web Modules: Dark web scanning may expose the investigator's infrastructure to monitoring. Use appropriate operational security measures (VPN, Tor, dedicated analysis systems) when enabling dark web modules.

Integration with Prismatic Platform

Within the Prismatic Platform, SpiderFoot serves as the automated reconnaissance engine for comprehensive OSINT collection.

  • Automated Reconnaissance Pipeline: SpiderFoot scans are triggered through the platform's investigation workflow, with results automatically ingested and correlated with existing entity data.
  • Module Orchestration: The platform manages SpiderFoot module selection and API key configuration, ensuring optimal module activation for each investigation type.
  • Entity Enrichment: SpiderFoot discoveries feed into the platform's knowledge graph, automatically enriching entities with cross-source intelligence.
  • Breach Intelligence: SpiderFoot's breach detection results are correlated with Have I Been Pwned and Intelligence X data for comprehensive credential exposure assessment.
  • Attack Surface Integration: SpiderFoot's domain and infrastructure discoveries feed into Prismatic Perimeter for continuous attack surface monitoring.
  • Report Generation: SpiderFoot scan results are formatted into the platform's standardized investigation report templates.

Best Practices

  1. Configure API keys before scanning: Pre-load all available API keys in SpiderFoot's configuration to maximize module coverage. Missing keys will silently skip those modules.

  2. Use targeted module selection: Full-scope scans are comprehensive but slow. Select modules relevant to your investigation objective for faster, more focused results.

  3. Start passive, go active: Begin with passive-only modules to gather intelligence without touching the target, then selectively enable active modules for authorized assessments.

  4. Review correlation chains: SpiderFoot's automated correlation is powerful but can produce false links. Trace the discovery chain for high-impact findings to validate the correlation logic.

  5. Schedule recurring scans: For ongoing monitoring, schedule periodic scans to detect changes in an organization's attack surface, new breach exposures, or emerging dark web mentions.

  6. Export and archive results: Export scan results in JSON format for long-term archival and cross-session analysis.

  7. Use Docker for isolation: Deploy SpiderFoot in Docker containers to isolate scanning infrastructure and simplify deployment.

  8. Combine with specialized tools: Use SpiderFoot for broad coverage, then follow up with specialized tools (Shodan for deep port analysis, Maltego for visual analysis) for detailed investigation.


Connect & Contribute

Created by Tomáš Korcak (korczis) | Open Source under GHL