Sign inSign up

gyarbij/spiderfoot

By gyarbij

•Updated almost 2 years ago

Image
0

1.0K

gyarbij/spiderfoot repository overview

License Python Version Stable Release CI status Last Commit Codecov Twitter Follow Discord

SpiderFoot is an open source intelligence (OSINT) automation tool. It integrates with just about every data source available and utilises a range of methods for data analysis, making that data easy to navigate.

SpiderFoot has an embedded web-server for providing a clean and intuitive web-based interface but can also be used completely via the command-line. It's written in Python 3 and MIT-licensed.

⁠FEATURES
  • Web based UI or CLI
  • Over 200 modules (see below)
  • Python 3.7+
  • YAML-configurable correlation engine⁠ with 37 pre-defined rules⁠
  • CSV/JSON/GEXF export
  • API key export/import
  • SQLite back-end for custom querying
  • Highly configurable
  • Fully documented
  • Visualisations
  • TOR integration for dark web searching
  • Dockerfile for Docker-based deployments
  • Can call other tools like DNSTwist, Whatweb, Nmap and CMSeeK
  • Actively developed since 2012!⁠
⁠WANT MORE?

Need more from SpiderFoot? Check out SpiderFoot HX⁠ for:

  • 100% Cloud-based and managed for you
  • Attack Surface Monitoring with change notifications by email, REST and Slack
  • Multiple targets per scan
  • Multi-user collaboration
  • Authenticated and 2FA
  • Investigations
  • Customer support
  • Third party tools pre-installed & configured
  • Drive it with a fully RESTful API
  • TOR integration built-in
  • Screenshotting
  • Bring your own Python SpiderFoot modules
  • Feed scan data to Splunk, ElasticSearch and REST endpoints

See the full set of differences between SpiderFoot HX and the open source version here⁠.

⁠USES

SpiderFoot can be used offensively (e.g. in a red team exercise or penetration test) for reconnaissance of your target or defensively to gather information about what you or your organisation might have exposed over the Internet.

You can target the following entities in a SpiderFoot scan:

  • IP address
  • Domain/sub-domain name
  • Hostname
  • Network subnet (CIDR)
  • ASN
  • E-mail address
  • Phone number
  • Username
  • Person's name
  • Bitcoin address

SpiderFoot's 200+ modules feed each other in a publisher/subscriber model to ensure maximum data extraction to do things like:

⁠INSTALLING & RUNNING

To install and run SpiderFoot, you need at least Python 3.7 and a number of Python libraries which you can install with pip. We recommend you install a packaged release since master will often have bleeding edge features and modules that aren't fully tested.

⁠Stable build (packaged release):
 wget https://github.com/smicallef/spiderfoot/archive/v4.0.tar.gz
 tar zxvf v4.0.tar.gz
 cd spiderfoot-4.0
 pip3 install -r requirements.txt
 python3 ./sf.py -l 127.0.0.1:5001
⁠Development build (cloning git master branch):
 git clone https://github.com/smicallef/spiderfoot.git
 cd spiderfoot
 pip3 install -r requirements.txt
 python3 ./sf.py -l 127.0.0.1:5001

Check out the documentation⁠ and our asciinema videos⁠ for more tutorials.

⁠COMMUNITY

Whether you're a contributor, user or just curious about SpiderFoot and OSINT in general, we'd love to have you join our community! SpiderFoot now has a Discord server⁠ for seeking help from the community, requesting features or just general OSINT chit-chat.

⁠WRITING CORRELATION RULES

We have a comprehensive write-up and reference of the correlation rule-set introduced in SpiderFoot 4.0 here⁠.

Also take a look at the template.yaml⁠ file for a walk through. The existing 37 rules⁠ are also quite readable and good as starting points for additional rules.

⁠MODULES / INTEGRATIONS

SpiderFoot has over 200 modules, most of which don't require API keys, and many of those that do require API keys have a free tier.

NameDescriptionType
AbstractAPI⁠Look up domain, phone and IP address information from AbstractAPI.Tiered API
abuse.ch⁠Check if a host/domain, IP address or netblock is malicious according to Abuse.ch.Free API
AbuseIPDB⁠Check if an IP address is malicious according to AbuseIPDB.com blacklist.Tiered API
Abusix Mail Intelligence⁠Check if a netblock or IP address is in the Abusix Mail Intelligence blacklist.Tiered API
Account FinderLook for possible associated accounts on over 500 social and other websites such as Instagram, Reddit, etc.Internal
AdBlock Check⁠Check if linked pages would be blocked by AdBlock Plus.Tiered API
AdGuard DNS⁠Check if a host would be blocked by AdGuard DNS.Free API
Ahmia⁠Search Tor 'Ahmia' search engine for mentions of the target.Free API
AlienVault IP Reputation⁠Check if an IP or netblock is malicious according to the AlienVault IP Reputation database.Free API
AlienVault OTX⁠Obtain information from AlienVault Open Threat Exchange (OTX)Tiered API
Amazon S3 Bucket Finder⁠Search for potential Amazon S3 buckets associated with the target and attempt to list their contents.Free API
Apple iTunes⁠Search Apple iTunes for mobile apps.Free API
Archive.org⁠Identifies historic versions of interesting files/pages from the Wayback Machine.Free API
ARIN⁠Queries ARIN registry for contact information.Free API
Azure Blob Finder⁠Search for potential Azure blobs associated with the target and attempt to list their contents.Free API
Base64 DecoderIdentify Base64-encoded strings in URLs, often revealing interesting hidden information.Internal
BGPView⁠Obtain network information from BGPView API.Free API
Binary String ExtractorAttempt to identify strings in binary content.Internal
BinaryEdge⁠Obtain information from BinaryEdge.io Internet scanning systems, including breaches, vulnerabilities, torrents and passive DNS.Tiered API
Bing (Shared IPs)⁠Search Bing for hosts sharing the same IP.Tiered API
Bing⁠Obtain information from bing to identify sub-domains and links.Tiered API
Bitcoin FinderIdentify bitcoin addresses in scraped webpages.Internal
Bitcoin Who's Who⁠Check for Bitcoin addresses against the Bitcoin Who's Who database of suspect/malicious addresses.Tiered API
BitcoinAbuse⁠Check Bitcoin addresses against the bitcoinabuse.com database of suspect/malicious addresses.Free API
Blockchain⁠Queries blockchain.info to find the balance of identified bitcoin wallet addresses.Free API
blocklist.de⁠Check if a netblock or IP is malicious according to blocklist.de.Free API
BotScout⁠Searches BotScout.com's database of spam-bot IP addresses and e-mail addresses.Tiered API
botvrij.eu⁠Check if a domain is malicious according to botvrij.eu.Free API
BuiltWith⁠Query BuiltWith.com's Domain API for information about your target's web technology stack, e-mail addresses and more.Tiered API
C99⁠Queries the C99 API which offers various data (geo location, proxy detection, phone lookup, etc).Commercial API
CallerName⁠Lookup US phone number location and reputation information.Free API
Censys⁠Obtain host information from Censys.io.Tiered API
Certificate Transparency⁠Gather hostnames from historical certificates in crt.sh.Free API
CertSpotter⁠Gather information about SSL certificates from SSLMate CertSpotter API.Tiered API
CINS Army List⁠Check if a netblock or IP address is malicious according to Collective Intelligence Network Security (CINS) Army list.Free API
CIRCL.LU⁠Obtain information from CIRCL.LU's Passive DNS and Passive SSL databases.Free API
CleanBrowsing.org⁠Check if a host would be blocked by CleanBrowsing.org DNS content filters.Free API
CleanTalk Spam List⁠Check if a netblock or IP address is on CleanTalk.org's spam IP list.Free API
Clearbit⁠Check for names, addresses, domains and more based on lookups of e-mail addresses on clearbit.com.Tiered API
CloudFlare DNS⁠Check if a host would be blocked by CloudFlare DNS.Free API
CoinBlocker Lists⁠Check if a domain appears on CoinBlocker lists.Free API
CommonCrawl⁠Searches for URLs found through CommonCrawl.org.Free API
Comodo Secure DNS⁠Check if a host would be blocked by Comodo Secure DNS.Tiered API
Company Name ExtractorIdentify company names in any obtained data.Internal
Cookie ExtractorExtract Cookies from HTTP headers.Internal
Country Name ExtractorIdentify country names in any obtained data.Internal
Credit Card Number ExtractorIdentify Credit Card Numbers in any dataInternal
Crobat API⁠Search Crobat API for subdomains.Free API
Cross-ReferencerIdentify whether other domains are associated ('Affiliates') of the target by looking for links back to the target site(s).Internal
CRXcavator⁠Search CRXcavator for Chrome extensions.Free API
Custom Threat FeedCheck if a host/domain, netblock, ASN or IP is malicious according to your custom feed.Internal
CyberCrime-Tracker.net⁠Check if a host/domain or IP address is malicious according to CyberCrime-Tracker.net.Free API
Debounce⁠Check whether an email is disposableFree API
Dehashed⁠Gather breach data from Dehashed API.Commercial API
Digital Ocean Space Finder⁠Search for potential Digital Ocean Spaces associated with the target and attempt to list their contents.Free API
DNS Brute-forcerAttempts to identify hostnames through brute-forcing common names and iterations.Internal
DNS Common SRVAttempts to identify hostnames through brute-forcing common DNS SRV records.Internal
DNS for Family⁠Check if a host would be blocked by DNS for Family.Free API
DNS Look-asideAttempt to reverse-resolve the IP addresses next to your target to see if they are related.Internal
DNS Raw RecordsRetrieves raw DNS records such as MX, TXT and others.Internal
DNS ResolverResolves hosts and IP addresses identified, also extracted from raw content.Internal
DNS Zone TransferAttempts to perform a full DNS zone transfer.Internal
DNSDB⁠Query FarSight's DNSDB for historical and passive DNS data.Tiered API
DNSDumpster⁠Passive subdomain enumeration using HackerTarget's DNSDumpsterFree API
DNSGrep⁠Obtain Passive DNS information from Rapid7 Sonar Project using DNSGrep API.Free API
DroneBL⁠Query the DroneBL database for open relays, open proxies, vulnerable servers, etc.Free API
DuckDuckGo⁠Query DuckDuckGo's API for descriptive information about your target.Free API
E-Mail Address ExtractorIdentify e-mail addresses in any obtained data.Internal
EmailCrawlr⁠Search EmailCrawlr for email addresses and phone numbers associated with a domain.Tiered API
EmailFormat⁠Look up e-mail addresses on email-format.com.Free API
EmailRep⁠Search EmailRep.io for email address reputation.Tiered API
Emerging Threats⁠Check if a netblock or IP address is malicious according to EmergingThreats.net.Free API
Error String ExtractorIdentify common error messages in content like SQL errors, etc.Internal
Ethereum Address ExtractorIdentify ethereum addresses in scraped webpages.Internal
Etherscan⁠Queries etherscan.io to find the balance of identified ethereum wallet addresses.Free API
File Metadata ExtractorExtracts meta data from documents and images.Internal
Flickr⁠Search Flickr for domains, URLs and emails related to the specified domain.Free API
Focsec⁠Look up IP address information from Focsec.Tiered API
FortiGuard Antispam⁠Check if an IP address is malicious according to FortiGuard Antispam.Free API
Fraudguard⁠Obtain threat information from Fraudguard.ioTiered API
F-Secure Riddler.io⁠Obtain network information from F-Secure Riddler.io API.Commercial API
FullContact⁠Gather domain and e-mail information from FullContact.com API.Tiered API
FullHunt⁠Identify domain attack surface using FullHunt API.Tiered API
Github⁠Identify associated public code repositories on Github.Free API
GLEIF⁠Look up company information from Global Legal Entity Identifier Foundation (GLEIF).Tiered API
Google Maps⁠Identifies potential physical addresses and latitude/longitude coordinates.Tiered API
Google Object Storage Finder⁠Search for potential Google Object Storage buckets associated with the target and attempt to list their contents.Free API
Google SafeBrowsing⁠Check if the URL is included on any of the Safe Browsing lists.Free API
Google⁠Obtain information from the Google Custom Search API to identify sub-domains and links.Tiered API
Gravatar⁠Retrieve user information from Gravatar API.Free API
Grayhat Warfare⁠Find bucket names matching the keyword extracted from a domain from Grayhat API.Tiered API
Greensnow⁠Check if a netblock or IP address is malicious according to greensnow.co.Free API
grep.app⁠Search grep.app API for links and emails related to the specified domain.Free API
GreyNoise Community⁠Obtain IP enrichment data from GreyNoise Community APITiered API
GreyNoise⁠Obtain IP enrichment data from GreyNoiseTiered API
HackerOne (Unofficial)⁠Check external vulnerability scanning/reporting service h1.nobbd.de to see if the target is listed.Free API
HackerTarget⁠Search HackerTarget.com for hosts sharing the same IP.Free API
Hash ExtractorIdentify MD5 and SHA hashes in web content, files and more.Internal
HaveIBeenPwned⁠Check HaveIBeenPwned.com for hacked e-mail addresses identified in breaches.Commercial API
Hosting Provider IdentifierFind out if any IP addresses identified fall within known 3rd party hosting ranges, e.g. Amazon, Azure, etc.Internal
Host.io⁠Obtain information about domain names from host.io.Tiered API
Human Name ExtractorAttempt to identify human names in fetched content.Internal
Hunter.io⁠Check for e-mail addresses and names on hunter.io.Tiered API
Hybrid Analysis⁠Search Hybrid Analysis for domains and URLs related to the target.Free API
IBAN Number ExtractorIdentify International Bank Account Numbers (IBANs) in any data.Internal
Iknowwhatyoudownload.com⁠Check iknowwhatyoudownload.com for IP addresses that have been using torrents.Tiered API
IntelligenceX⁠Obtain information from IntelligenceX about identified IP addresses, domains, e-mail addresses and phone numbers.Tiered API
Interesting File FinderIdentifies potential files of interest, e.g. office documents, zip files.Internal
Internet Storm Center⁠Check if an IP address is malicious according to SANS ISC.Free API
ipapi.co⁠Queries ipapi.co to identify geolocation of IP Addresses using ipapi.co APITiered API
ipapi.com⁠Queries ipapi.com to identify geolocation of IP Addresses using ipapi.com APITiered API
IPInfo.io⁠Identifies the physical location of IP addresses identified using ipinfo.io.Tiered API
IPQualityScore⁠Determine if target is malicious using IPQualityScore APITiered API
ipregistry⁠Query the ipregistry.co database for reputation and geo-location.Tiered API
ipstack⁠Identifies the physical location of IP addresses identified using ipstack.com.Tiered API
JsonWHOIS.com⁠Search JsonWHOIS.com for WHOIS records associated with a domain.Tiered API
Junk File FinderLooks for old/temporary and other similar files.Internal
Keybase⁠Obtain additional information about domain names and identified usernames.Free API
Koodous⁠Search Koodous for mobile apps.Tiered API
LeakIX⁠Search LeakIX for host data leaks, open ports, software and geoip.Free API
Leak-Lookup⁠Searches Leak-Lookup.com's database of breaches.Free API
Maltiverse⁠Obtain information about any malicious activities involving IP addressesFree API
MalwarePatrol⁠Searches malwarepatrol.net's database of malicious URLs/IPs.Tiered API
MetaDefender⁠Search MetaDefender API for IP address and domain IP reputation.Tiered API
Mnemonic PassiveDNS⁠Obtain Passive DNS information from PassiveDNS.mnemonic.no.Free API
multiproxy.org Open Proxies⁠Check if an IP address is an open proxy according to multiproxy.org open proxy list.Free API
MySpace⁠Gather username and location from MySpace.com profiles.Free API
NameAPI⁠Check whether an email is disposableTiered API
NetworksDB⁠Search NetworksDB.io API for IP address and domain information.Tiered API
NeutrinoAPI⁠Search NeutrinoAPI for phone location information, IP address information, and host reputation.Tiered API
numverify⁠Lookup phone number location and carrier information from numverify.com.Tiered API
Onion.link⁠Search Tor 'Onion City' search engine for mentions of the target domain using Google Custom Search.Free API
Onionsearchengine.com⁠Search Tor onionsearchengine.com for mentions of the target domain.Free API
Onyphe⁠Check Onyphe data (threat list, geo-location, pastries, vulnerabilities) about a given IP.Tiered API
Open Bug Bounty⁠Check external vulnerability scanning/reporting service openbugbounty.org to see if the target is listed.Free API
OpenCorporates⁠Look up company information from OpenCorporates.Tiered API
OpenDNS⁠Check if a host would be blocked by OpenDNS.Free API
OpenNIC DNS⁠Resolves host names in the OpenNIC alternative DNS system.Free API
OpenPhish⁠Check if a host/domain is malicious according to OpenPhish.com.Free API
OpenStreetMap⁠Retrieves latitude/longitude coordinates for physical addresses from OpenStreetMap API.Free API
Page InformationObtain information about web pages (do they take passwords, do they contain forms, etc.)Internal
PasteBin⁠PasteBin search (via Google Search API) to identify related content.Tiered API
PGP Key ServersLook up domains and e-mail addresses in PGP public key servers.Internal
PhishStats⁠Check if a netblock or IP address is malicious according to PhishStats.Free API
PhishTank⁠Check if a host/domain is malicious according to PhishTank.Free API
Phone Number ExtractorIdentify phone numbers in scraped webpages.Internal
Port Scanner - TCPScans for commonly open TCP ports on Internet-facing systems.Internal
Project Honey Pot⁠Query the Project Honey Pot database for IP addresses.Free API
ProjectDiscovery Chaos⁠Search for hosts/subdomains using chaos.projectdiscovery.ioCommercial API
Psbdmp⁠Check psbdmp.cc (PasteBin Dump) for potentially hacked e-mails and domains.Free API
Pulsedive⁠Obtain information from Pulsedive's API.Tiered API
PunkSpider⁠Check the QOMPLX punkspider.io service to see if the target is listed as vulnerable.Free API
Quad9⁠Check if a host would be blocked by Quad9 DNS.Free API
ReverseWhois⁠Reverse Whois lookups using reversewhois.io.Free API
RIPE⁠Queries the RIPE registry (includes ARIN data) to identify netblocks and other info.Free API
RiskIQ⁠Obtain information from RiskIQ's (formerly PassiveTotal) Passive DNS and Passive SSL databases.Tiered API
Robtex⁠Search Robtex.com for hosts sharing the same IP.Free API
searchcode⁠Search searchcode for code repositories mentioning the target domain.Free API
SecurityTrails⁠Obtain Passive DNS and other information from SecurityTrailsTiered API
Seon⁠Queries seon.io to gather intelligence about IP Addresses, email addresses, and phone numbersCommercial API
[SHOD

Tag summary

Content type

Image

Digest

sha256:9babfb414…

Size

291.7 MB

Last updated

almost 2 years ago

docker pull gyarbij/spiderfoot