nsec3walker 的现代高速继任者。一个用 Go 构建的专用 NSEC3 取证引擎,用于快速区域采集和自动化哈希逆向,针对准确性和多核性能进行了优化。
免责声明:本项目由人工智能(AI)生成,但经过了严格的“人在回路”(HITL)流程。这意味着代码已由人类软件工程师审查和重构,架构设计由人类主导,并且执行了基本的安全审计以验证功能并排除典型的 AI 幻觉。此流程确保了纯 AI 生成无法保证的质量和可靠性水平。
NSEC3-X 是一款专用的取证和渗透测试工具,旨在审计 DNSSEC NSEC3 配置。它为 nsec3walker 等传统工具提供了现代、高性能的替代方案,集成了区域枚举(采集)和哈希逆向(破解)功能。
该工具使用 Go 编写,设计为自包含、无依赖的二进制文件,适合在受限环境中部署。
域名系统安全扩展(DNSSEC)使用 NSEC3 记录来证明某个域名不存在,同时不泄露整个区域内容。NSEC3 通过对域名进行哈希来实现这一点。然而,如果哈希参数(特别是迭代次数和盐值)较弱,这些哈希可能容易受到离线暴力破解攻击。
NSEC3-X 通过两个主要阶段自动化利用这些弱点:
NSEC3PARAM 记录,以使用正确的盐值和迭代次数配置破解器。go install gitlab.com/cyberdev-tools/nsec3-x/cmd/nsec3-x@latest
GOTOOLCHAIN=local,这会阻止 go install 原本执行的自动工具链下载。请运行一次 go env -w GOTOOLCHAIN=auto,或从 go.dev/dl 安装官方 Go >= 1.27。工具链被有意固定,以便本地构建的二进制文件包含 crypto/x509 eMudhra 中间 CA 拒绝列表修复(CVE-2026-111943)。出于安全原因,建议使用提供的 SHA256 校验和验证下载的二进制文件的完整性。
sha256sums.txt 文件。sha256sum -c sha256sums.txt
克隆仓库并构建二进制文件:
git clone https://gitlab.com/cyberdev-tools/nsec3-x.git
cd nsec3-x
go build ./cmd/nsec3-x
这将在当前目录中生成一个名为 nsec3-x 的可执行文件。
该工具以不同的模式运行,由 -mode 标志控制。
分析目标域以确定 NSEC3 是否处于活动状态,并评估其配置的安全强度。
./nsec3-x -mode investigate -target example.com
通过向目标发送随机查询来收集 NSEC3 哈希。这填补了区域中已知哈希之间的空白。
./nsec3-x -mode harvest -target example.com -n 1000
-n:要发送的随机查询数量。数值越大,覆盖范围越广,但产生的流量也越多。-t:并发工作线程数。hashes.txt。尝试使用字典从收集到的哈希中恢复明文子域名。
./nsec3-x -mode crack -target example.com -w /path/to/wordlist.txt
-target:目标区域(正确应用盐值所必需)。-file:包含已收集哈希的文件路径(默认:hashes.txt)。-w:字典文件(词表)的路径。可选:如果省略,则使用内置的默认词表(SecLists subdomains-top1million-5000,约 4.8k 个标签),因此破解可完全离线进行。-no-auto:禁用自动参数检测(需要手动指定 -i 和 -s 标志)。一个调试工具,用于计算特定完全限定域名(FQDN)的 NSEC3 哈希。这对于验证某个特定子域是否与收集过程中发现的哈希匹配非常有用。
./nsec3-x -mode verify -target secret.example.com
-doh 可将该工具指向任何你信任的、兼容 RFC 8484 的解析器(例如你自己的解析器)。请仅在你有权测试的网络中运行采集/破解。sha256sums.txt,随每个版本一同发布)。运行下载的二进制文件前务必先验证——这是你防范被篡改镜像的手段。