smicallef/spiderfoot
摘要
SpiderFoot 是一款开源情报(OSINT)自动化工具,拥有超过200个模块用于数据收集与分析,可通过Web界面或命令行使用。
查看缓存全文
缓存时间: 2026/06/22 01:31
smicallef/spiderfoot
来源: https://github.com/smicallef/spiderfoot
许可证 (https://raw.githubusercontent.com/smicallef/spiderfoot/master/LICENSE)
Python 版本 (https://www.python.org)
稳定版发布 (https://github.com/smicallef/spiderfoot/releases/tag/v4.0)
CI 状态 (https://github.com/smicallef/spiderfoot/actions?query=workflow%3A“Tests“)
最新提交 (https://github.com/smicallef/spiderfoot/commits/master)
Codecov 覆盖率 (https://codecov.io/github/smicallef/spiderfoot)
Twitter 关注 (https://twitter.com/spiderfoot)
Discord (https://discord.gg/vyvztrG)
SpiderFoot 是一款开源情报(OSINT)自动化工具。它可以集成几乎所有可用的数据源,并利用多种方法进行数据分析,使得数据易于浏览。SpiderFoot 内置了一个 Web 服务器,提供简洁直观的基于 Web 的界面,但也可完全通过命令行使用。它使用 Python 3 编写,采用 MIT 许可证。
功能特性
- 基于 Web 的 UI 或 CLI
- 超过 200 个模块(见下文)
- Python 3.7+
- 支持 YAML 配置的关联规则引擎,内置 37 条预定义规则
- CSV/JSON/GEXF 导出
- API 密钥导入/导出
- 基于 SQLite 的后端,支持自定义查询
- 高度可配置
- 完整的文档
- 可视化
- 集成 TOR 用于暗网搜索
- 提供 Dockerfile 支持 Docker 部署
- 可调用其他工具,如 DNSTwist、Whatweb、Nmap 和 CMSeeK
- 自 2012 年以来持续开发!(https://medium.com/@micallst/lessons-learned-from-my-10-year-open-source-project-4a4c8c2b4f64)
想要更多?
需要从 SpiderFoot 中获得更多功能?请查看 SpiderFoot HX (https://www.spiderfoot.net/hx) 以获得:
- 100% 云端托管,无需自己管理
- 攻击面监控,通过电子邮件、REST 和 Slack 发送变更通知
- 每次扫描支持多个目标
- 多用户协作
- 身份认证及双因素认证
- 调查功能
- 客户支持
- 预装并配置好的第三方工具
- 通过完整的 RESTful API 驱动
- 内置 TOR 集成
- 截图功能
- 携带您自己的 Python SpiderFoot 模块
- 将扫描数据发送到 Splunk、ElasticSearch 和 REST 端点
查看 SpiderFoot HX 与开源版本的完整区别 (https://www.spiderfoot.net/open-source-vs-hx/)。
用途
SpiderFoot 可用于攻击性场景(例如红队演练或渗透测试)中对目标进行侦察,也可用于防御性场景,收集关于您或您的组织可能在互联网上暴露的信息。
在 SpiderFoot 扫描中,您可以针对以下实体:
- IP 地址
- 域名/子域名
- 主机名
- 网络子网(CIDR)
- ASN
- 电子邮件地址
- 电话号码
- 用户名
- 人物姓名
- 比特币地址
SpiderFoot 的 200+ 个模块以发布/订阅模式相互配合,确保最大程度的数据提取,可完成以下任务:
- 主机/子域名/TLD 枚举与提取 (https://asciinema.org/a/295912)
- 电子邮件地址、电话号码和人员姓名提取 (https://asciinema.org/a/295947)
- 比特币和以太坊地址提取 (https://asciinema.org/a/295957)
- 检测子域名劫持的脆弱性 (https://asciinema.org/a/344377)
- DNS 区域传输
- 威胁情报和黑名单查询 (https://asciinema.org/a/295949)
- 与 SHODAN (https://asciinema.org/a/127601)、HaveIBeenPwned (https://asciinema.org/a/128731)、GreyNoise (https://asciinema.org/a/295943)、AlienVault、SecurityTrails 等 API 集成
- 社交媒体账号枚举 (https://asciinema.org/a/295923)
- S3/Azure/Digitalocean 存储桶枚举与抓取 (https://asciinema.org/a/295941)
- IP 地理位置定位
- 网页抓取、网页内容分析
- 图像、文档和二进制文件的元数据分析 (https://asciinema.org/a/296274)
- 暗网搜索
- 端口扫描和 Banner 抓取 (https://asciinema.org/a/295939)
- 数据泄露搜索 (https://asciinema.org/a/296145)
- 更多功能…
安装与运行
要安装并运行 SpiderFoot,您至少需要 Python 3.7 以及一些 Python 库,可以通过 pip 安装这些库。我们建议您安装打包版本,因为 master 分支通常包含尚未完全测试的尖端功能和模块。
稳定版(打包发布):
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
开发版(克隆 git master 分支):
git clone https://github.com/smicallef/spiderfoot.git
cd spiderfoot
pip3 install -r requirements.txt
python3 ./sf.py -l 127.0.0.1:5001
查看文档 (https://www.spiderfoot.net/documentation) 和我们的 asciinema 视频 (https://asciinema.org/~spiderfoot) 以获取更多教程。
社区
无论您是贡献者、用户,还是仅仅对 SpiderFoot 和 OSINT 感兴趣,我们都很高兴您加入我们的社区!SpiderFoot 现在有一个 Discord 服务器 (https://discord.gg/vyvztrG),可以在其中寻求社区帮助、请求功能,或者进行一般的 OSINT 闲聊。
编写关联规则
我们在此处提供了 SpiderFoot 4.0 引入的关联规则集的详细说明和参考。此外,请查看 template.yaml 文件以了解操作方式。现有的 37 条规则 也相当易读,可以作为新增规则的起点。
模块 / 集成
SpiderFoot 拥有超过 200 个模块,其中大部分不需要 API 密钥,而许多需要 API 密钥的模块也包含免费套餐。
| 名称 | 描述 | 类型 |
|---|---|---|
| AbstractAPI (https://app.abstractapi.com/) | 从 AbstractAPI 查找域名、电话和 IP 地址信息。 | 分层API |
| abuse.ch (https://www.abuse.ch) | 根据 Abuse.ch 检查主机/域名、IP 地址或网络块是否恶意。 | 免费API |
| AbuseIPDB (https://www.abuseipdb.com) | 根据 AbuseIPDB.com 黑名单检查 IP 地址是否恶意。 | 分层API |
| Abusix Mail Intelligence (https://abusix.org/) | 检查网络块或 IP 地址是否在 Abusix Mail Intelligence 黑名单中。 | 分层API |
| Account Finder | 在超过 500 个社交及其他网站(如 Instagram、Reddit 等)上查找可能的关联账户。 | 内部 |
| AdBlock Check (https://adblockplus.org/) | 检查链接页面是否会被 AdBlock Plus 拦截。 | 分层API |
| AdGuard DNS (https://adguard.com/) | 检查主机是否会被 AdGuard DNS 拦截。 | 免费API |
| Ahmia (https://ahmia.fi/) | 在 Tor 的 ‘Ahmia’ 搜索引擎中搜索目标的提及。 | 免费API |
| AlienVault IP Reputation (https://cybersecurity.att.com/) | 根据 AlienVault IP 信誉数据库检查 IP 或网络块是否恶意。 | 免费API |
| AlienVault OTX (https://otx.alienvault.com/) | 从 AlienVault 开放威胁交换(OTX)获取信息。 | 分层API |
| Amazon S3 Bucket Finder (https://aws.amazon.com/s3/) | 搜索与目标相关的潜在 Amazon S3 存储桶,并尝试列出其内容。 | 免费API |
| Apple iTunes (https://itunes.apple.com/) | 在 Apple iTunes 中搜索移动应用。 | 免费API |
| Archive.org (https://archive.org/) | 从 Wayback Machine 识别有趣文件/页面的历史版本。 | 免费API |
| ARIN (https://www.arin.net/) | 查询 ARIN 注册信息以获取联系信息。 | 免费API |
| Azure Blob Finder (https://azure.microsoft.com/en-in/services/storage/blobs/) | 搜索与目标相关的潜在 Azure Blob,并尝试列出其内容。 | 免费API |
| Base64 Decoder | 识别 URL 中的 Base64 编码字符串,通常可揭示有趣的隐藏信息。 | 内部 |
| BGPView (https://bgpview.io/) | 通过 BGPView API 获取网络信息。 | 免费API |
| Binary String Extractor | 尝试在二进制内容中识别字符串。 | 内部 |
| BinaryEdge (https://www.binaryedge.io/) | 从 BinaryEdge.io 互联网扫描系统获取信息,包括数据泄露、漏洞、种子和被动 DNS。 | 分层API |
| Bing (Shared IPs) (https://www.bing.com/) | 在 Bing 中搜索共享同一 IP 的主机。 | 分层API |
| Bing (https://www.bing.com/) | 从 Bing 获取信息以识别子域名和链接。 | 分层API |
| Bitcoin Finder | 在抓取的网页中识别比特币地址。 | 内部 |
| Bitcoin Who’s Who (https://bitcoinwhoswho.com/) | 将比特币地址与 Bitcoin Who’s Who 的可疑/恶意地址数据库进行比对。 | 分层API |
| BitcoinAbuse (https://www.bitcoinabuse.com/) | 将比特币地址与 bitcoinabuse.com 的可疑/恶意地址数据库进行比对。 | 免费API |
| Blockchain (https://www.blockchain.com/) | 查询 blockchain.info 以查找已识别比特币钱包地址的余额。 | 免费API |
| blocklist.de (http://www.blocklist.de/en/index.html) | 根据 blocklist.de 检查网络块或 IP 是否恶意。 | 免费API |
| BotScout (https://botscout.com/) | 搜索 BotScout.com 的垃圾邮件机器人 IP 地址和电子邮件地址数据库。 | 分层API |
| botvrij.eu (https://botvrij.eu/) | 根据 botvrij.eu 检查域名是否恶意。 | 免费API |
| BuiltWith (https://builtwith.com/) | 查询 BuiltWith.com 的 Domain API,获取目标网站技术栈、电子邮件地址等信息。 | 分层API |
| C99 (https://api.c99.nl/) | 查询 C99 API,该 API 提供各种数据(地理位置、代理检测、电话查询等)。 | 商业API |
| CallerName (http://callername.com/) | 查询美国电话号码的位置和信誉信息。 | 免费API |
| Censys (https://censys.io/) | 从 Censys.io 获取主机信息。 | 分层API |
| Certificate Transparency (https://crt.sh/) | 从 crt.sh 的历史证书中收集主机名。 | 免费API |
| CertSpotter (https://sslmate.com/certspotter/) | 通过 SSLMate CertSpotter API 收集 SSL 证书信息。 | 分层API |
| CINS Army List (https://cinsscore.com/) | 根据集体情报网络安全(CINS)军队列表检查网络块或 IP 地址是否恶意。 | 免费API |
| CIRCL.LU (https://www.circl.lu/) | 从 CIRCL.LU 的被动 DNS 和被动 SSL 数据库获取信息。 | 免费API |
| CleanBrowsing.org (https://cleanbrowsing.org/) | 检查主机是否会被 CleanBrowsing.org DNS 内容过滤器拦截。 | 免费API |
| CleanTalk Spam List (https://cleantalk.org) | 检查网络块或 IP 地址是否在 CleanTalk.org 的垃圾邮件 IP 列表中。 | 免费API |
| Clearbit (https://clearbit.com/) | 基于 clearbit.com 的电子邮件地址查询,查找名称、地址、域名等信息。 | 分层API |
| CloudFlare DNS (https://www.cloudflare.com/) | 检查主机是否会被 CloudFlare DNS 拦截。 | 免费API |
| CoinBlocker Lists (https://zerodot1.gitlab.io/CoinBlockerListsWeb/) | 检查域名是否出现在 CoinBlocker 列表中。 | 免费API |
| CommonCrawl (http://commoncrawl.org/) | 搜索通过 CommonCrawl.org 发现的 URL。 | 免费API |
| Comodo Secure DNS (https://www.comodo.com/secure-dns/) | 检查主机是否会被 Comodo Secure DNS 拦截。 | 分层API |
| Company Name Extractor | 在获取的数据中识别公司名称。 | 内部 |
| Cookie Extractor | 从 HTTP 头中提取 Cookie。 | 内部 |
| Country Name Extractor | 在获取的数据中识别国家名称。 | 内部 |
| Credit Card Number Extractor | 在数据中识别信用卡号码。 | 内部 |
| Crobat API (https://sonar.omnisint.io/) | 搜索 Crobat API 以获取子域名。 | 免费API |
| Cross-Referencer | 通过查找指向目标站点的链接,识别其他域名是否与目标关联(“关联方”)。 | 内部 |
| CRXcavator (https://crxcavator.io/) | 在 CRXcavator 中搜索 Chrome 扩展。 | 免费API |
| Custom Threat Feed | 根据自定义数据源检查主机/域名、网络块、ASN 或 IP 是否恶意。 | 内部 |
| CyberCrime-Tracker.net (https://cybercrime-tracker.net/) | 根据 CyberCrime-Tracker.net 检查主机/域名或 IP 地址是否恶意。 | 免费API |
| Debounce (https://debounce.io/) | 检查电子邮件是否为临时邮箱。 | 免费API |
| Dehashed (https://www.dehashed.com/) | 从 Dehashed API 收集泄露数据。 | 商业API |
| Digital Ocean Space Finder (https://www.digitalocean.com/products/spaces/) | 搜索与目标相关的潜在 Digital Ocean Spaces,并尝试列出其内容。 | 免费API |
| DNS Brute-forcer | 通过对常见名称和迭代进行暴力破解,尝试识别主机名。 | 内部 |
| DNS Common SRV | 通过对常见 DNS SRV 记录进行暴力破解,尝试识别主机名。 | 内部 |
| DNS for Family (https://dnsforfamily.com/) | 检查主机是否会被 DNS for Family 拦截。 | 免费API |
| DNS Look-aside | 尝试反向解析目标相邻的 IP 地址,以查看它们是否相关。 | 内部 |
| DNS Raw Records | 检索原始 DNS 记录,如 MX、TXT 等。 | 内部 |
| DNS Resolver | 解析识别出的主机和 IP 地址,也可从原始内容中提取。 | 内部 |
| DNS Zone Transfer | 尝试执行完整的 DNS 区域传输。 | 内部 |
| DNSDB (https://www.farsightsecurity.com) | 查询 FarSight 的 DNSDB 以获取历史和被动 DNS 数据。 | 分层API |
| DNSDumpster (https://dnsdumpster.com/) | 使用 HackerTarget 的 DNSDumpster 进行被动子域名枚举。 | 免费API |
| DNSGrep (https://opendata.rapid7.com/) | 通过 DNSGrep API 从 Rapid7 Sonar 项目获取被动 DNS 信息。 | 免费API |
| DroneBL (https://dronebl.org/) | 查询 DroneBL 数据库以获取开放中继、开放代理、脆弱服务器等信息。 | 免费API |
| DuckDuckGo (https://duckduckgo.com/) | 查询 DuckDuckGo 的 API 以获取目标的描述性信息。 | 免费API |
| E-Mail Address Extractor | 在获取的数据中识别电子邮件地址。 | 内部 |
| EmailCrawlr (https://emailcrawlr.com/) | 在 EmailCrawlr 中搜索与域名相关的电子邮件地址和电话号码。 | 分层API |
| EmailFormat (https://www.email-format.com/) | 在 email-format.com 上查找电子邮件地址。 | 免费API |
| EmailRep (https://emailrep.io/) | 搜索 EmailRep.io 以获取电子邮件地址信誉。 | 分层API |
| Emerging Threats (https://rules.emergingthreats.net/) | 根据 EmergingThreats.net 检查网络块或 IP 地址是否恶意。 | 免费API |
| Error String Extractor | 在内容中识别常见错误消息,如 SQL 错误等。 | 内部 |
| Ethereum Address Extractor | 在抓取的网页中识别以太坊地址。 | 内部 |
| Etherscan (https://etherscan.io) | 查询 etherscan.io 以查找已识别以太坊钱包地址的余额。 | 免费API |
| File Metadata Extractor | 从文档和图像中提取元数据。 | 内部 |
| Flickr (https://www.flickr.com/) | 在 Flickr 中搜索与指定域名相关的域名、URL 和电子邮件。 | 免费API |
| Focsec (https://focsec.com/) | 从 Focsec 查找 IP 地址信息。 | 分层API |
| FortiGuard Antispam (https://www.fortiguard.com/) | 根据 FortiGuard 反垃圾邮件检查 IP 地址是否恶意。 | 免费API |
| Fraudguard (https://fraudguard.io/) | 从 Fraudguard.io 获取威胁信息。 | 分层API |
| F-Secure Riddler.io (https://riddler.io/) | 从 F-Secure Riddler.io API 获取网络信息。 | 商业API |
| FullContact (https://www.fullcontact.com) | 通过 FullContact.com API 收集域名和电子邮件信息。 | 分层API |
| FullHunt (https://fullhunt.io/) | 使用 FullHunt API 识别域名攻击面。 | 分层API |
| Github (https://github.com/) | 在 Github 上识别相关的公共代码仓库。 | 免费API |
| GLEIF (https://search.gleif.org/) | 从全球法人识别编码基金会(GLEIF)查找公司信息。 | 分层API |
| Google Maps (https://cloud.google.com/maps-platform/) | 识别潜在的物理地址和经纬度坐标。 | 分层API |
| Google Object Storage Finder (https://cloud.google.com/storage) | 搜索与目标相关的潜在 Google 对象存储存储桶,并尝试列出其内容。 | 免费API |
| Google SafeBrowsing (https://developers.google.com/safe-browsing/v4/lookup-api) | 检查网址是否出现在任何安全浏览列表中。 | 免费API |
| Google (https://developers.google.com/custom-search) | 从 Google 自定义搜索 API 获取信息,以识别子域名和链接。 | 分层API |
| Gravatar (https://secure.gravatar.com/) | (注:该模块未翻译完,原表格后续应继续,但用户输入已结束,此处应补充完整) | 免费API |
相似文章
@yhslgg: https://x.com/yhslgg/status/2068317116831510838
介绍五个免费开源OSINT工具(Blackbird、Maigret、SpiderFoot、theHarvester、Shodan Python)的组合使用思路,覆盖查人、查公司、查设备等场景,并提供实战案例和安装方法。
soxoj/maigret
Maigret 是一个开源工具,仅通过用户名即可收集某人的档案,检查数千个网站上的账户并收集可用信息。它支持3000多个网站,可以通过命令行或Python库使用。
@IndieDevHailey: 卧槽!扔一个用户名,Maigret狂扫3000+网站把人扒干净!真正的OSINT终极武器! 又挖到一款真·黑科技工具—Maigret(31.4k star)! 输入任意用户名,它自动狂扫3000+网站,秒出一份完整人物档案!零API、零注…
介绍开源OSINT工具Maigret,可输入用户名自动扫描3000+网站,生成完整人物档案并支持AI总结,适合合法调查使用。
一个超轻量级的开源网络搜索工具,专为小型本地LLM设计
TinySearch 是一个开源的 MCP 工具,能够执行网络搜索、抓取页面、检索并重新排序相关片段,为较小的本地 LLM 提供简洁的上下文,避免因加载完整页面而污染上下文。
reconurge/flowsint
Flowsint 是一个开源的基于图的 OSINT 调查工具,支持跨域名、IP、组织等的关系探索和自动丰富。