Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Spoofy — 批量域名欺骗性检查器,使用权威的SPF和DMARC记录分析,结合自定义、经过实际测试的欺骗逻辑,并可选进行DKIM枚举。 | Kitploit
工具/GitHubGitHub/mattkeeley/spoofy
钓鱼攻击渗透测试电子邮件安全DNS 分析
GitHubmattkeeley/spoofy

Spoofy

批量域名欺骗性检查器,使用权威的SPF和DMARC记录分析,结合自定义、经过实际测试的欺骗逻辑,并可选进行DKIM枚举。

查看仓库
769823923天前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享



Spoofy

forthebadge forthebadge forthebadge

是什么

Spoofy 是一个程序,用于根据 SPF 和 DMARC 记录检查一组域名是否可以被伪造。你可能会问:“为什么我们需要另一个可以检查域名是否可以被伪造的工具?”

好吧,Spoofy 与众不同,原因如下:

  1. 自定义、经过人工测试的伪造逻辑(不猜测、不推测,真实世界的测试结果)
  2. 基于标准的记录发现:RFC 7208 SPF 评估和 RFC 9989 DMARC 树遍历,包括子域的 sp/np
  3. 通过共享的、带缓存的解析器进行准确的批量查询,并具有故障转移(1.1.1.1、8.8.8.8、9.9.9.9)
  4. SPF DNS 查询和空查询计数器,以及检测未注册的 SPF include 域名
  5. 可选的通过 API 进行 DKIM 选择器枚举

通过的测试

Spoofy CI

如何使用

Spoofy 需要 Python 3.9+。从 PyPI 安装:

pip3 install spoofy
spoofy -d example.com

或者从克隆的仓库运行,使用 pip3 install -r requirements.txt,并用 ./spoofy.py 代替 spoofy。用法如下所示:

Usage:
    spoofy -d [DOMAIN] -o [stdout, xls or json] -t [NUMBER_OF_THREADS] [--dkim] [--dns-server IP]
    OR
    spoofy -iL [DOMAIN_LIST] -o [stdout, xls or json] -t [NUMBER_OF_THREADS] [--dkim] [--dns-server IP]

Options:
    -d            : Process a single domain.
    -iL           : Provide a file containing a list of domains to process (blank lines and # comments are skipped).
    -o            : Specify the output format: stdout (default), xls, or json.
    -t            : Set the number of threads to use (default: 4).
    --dkim        : Enable DKIM selector enumeration via API (optional).
    --dns-server  : Query this resolver instead of 1.1.1.1, 8.8.8.8 and 9.9.9.9.

Examples:
    spoofy -d example.com -t 10
    spoofy -d example.com --dkim
    spoofy -iL domains.txt -o xls
    spoofy -iL domains.txt -o json --dkim

你如何知道它是否可以被伪造

(可伪造性表列出了影响收件箱送达率的 SPF 和 DMARC 配置的每一种组合,DKIM 修饰符除外。) 在此下载

代码结果SPOOFING_POSSIBLE
0可以伪造true
1可以伪造子域true
2可以伪造组织域true
3可能可以伪造(p=quarantine 且 pct < 100)null
4可能可以伪造(取决于邮箱)null
5可能可以伪造组织域(取决于邮箱)null
6可能可以伪造子域(取决于邮箱)null
7可以伪造子域,可能可以伪造组织域true
8无法伪造false
9无法确定(DNS 查询失败)null

判定结果是针对域名的 SPF all 机制以及 DMARC p、sp 和 aspf 标签按记录所写内容测试得到的代码。spoofy/master_table.py 以数据形式保存该电子表格(电子表格更改后,运行 python3 -m spoofy.master_table 可重写它),test.py 检查每一行都能被复现。表格未覆盖的输入按如下方式处理:

  • 带有 aspf 但没有 sp 的强制 p(24 种未测试的组合):sp 默认为 p,因此使用写出 sp 的已测试行。
  • 从父域继承的 DMARC 记录(子域没有自己的 _dmarc 记录):使用针对父域 SPF 和 DMARC 记录测试的子域结果,当子域不存在时用 np 代替 sp。
  • p=quarantine 且 pct 低于 100:代码 3,因为未抽样的邮件会得到 p=none。对于 p=reject,未抽样的邮件仍会被隔离,因此 pct 不会改变判定结果。
  • t=y(RFC 9989 测试模式):在查询前策略降低一级(reject 降为 quarantine,quarantine 降为 none)。
  • DNS 查询失败:代码 9,而不是将记录视为缺失。

方法论

可伪造性表的创建涉及列出每一种相关的 SPF 和 DMARC 配置,将它们组合起来,然后使用早期版本的 Spoofy 在大量美国政府域名上进行 SPF 和 DMARC 信息收集。测试某个 SPF 和 DMARC 组合是否可伪造,是使用 emailspooftest 的电子邮件安全渗透测试套件在 Microsoft 365 上完成的。然而,最初的测试是使用 Protonmail 和 Gmail 进行的,但发现这些服务会使用反向查找检查,从而影响结果,尤其是子域伪造测试。因此,测试使用了 Microsoft 365,因为它对邮件的处理提供了更大的控制权。

在使用 Microsoft 365 进行初步测试后,由于 Protonmail 和 Gmail 对电子邮件中横幅的处理方式不同,一些组合使用 Protonmail 和 Gmail 进行了重新测试。Protonmail 和 Gmail 可能会将伪造邮件放入收件箱并带有横幅,或放入垃圾邮件且不带横幅,这导致使用 Spoofy 时某些 SPF 和 DMARC 组合被报告为“取决于邮箱”。相比之下,Microsoft 365 会将这两种情况都放入垃圾邮件。测试和数据收集过程耗时数天完成,之后编制了一份良好的主表,并用作 Spoofy 可伪造性逻辑的基础。

免责声明

此工具仅用于测试和学术目的,并且只能在获得严格同意的情况下使用。不要将其用于非法目的!最终用户有责任遵守所有适用的地方、州和联邦法律。开发者不承担任何责任,也不对由本工具和软件造成的任何误用或损害负责。

许可证

本项目根据 Creative Commons Attribution-NonCommercial 4.0 International License 许可 - 详情请参阅 LICENSE 文件

下载工具