⚠️ 请勿利用文章内的相关技术从事非法渗透测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。工具和内容均来自网络,仅做学习和记录使用,安全性自测,如有侵权请联系删除。
📖 项目/工具简介
dddd 是一款批量信息收集与供应链漏洞探测工具,支持自动识别输入类型(IP/网段/域名/URL),内置主动/被动指纹识别与指纹漏洞映射数据库,集成 Nuclei v3、子域名枚举、空间测绘(Hunter/Fofa/Quake),面向红队与安服人员,优化信息收集工作流。
🚀 一句话优势
自动识别目标类型,指纹-POC 联动避免无效发包,低依赖开箱即用。
📋 核心能力速览
| 功能 |
说明 |
| 自动类型识别 |
IP/网段/域名/URL 无需手动分类 |
| 指纹识别 |
主动/被动识别,支持复杂逻辑运算 |
| 漏洞探测 |
Nuclei v3 集成,指纹映射减少误报 |
| 子域名枚举 |
高效爆破,精准泛解析过滤 |
| 空间测绘 |
Hunter/Fofa/Quake 批量拉取 |
| 审计日志 |
敏感环境行为追溯 |
📸 主要运行功能截图
漏洞探测
dddd会通过指纹数据库的配置进行指纹识别,再通过workflow(指针->漏洞映射)数据库的配置选定指针对应的漏洞打出Poc。这么做虽然一个漏洞需要写poc,写指针、写workflow、工作量更大,但在实际使用时能尽量减少无效发包(比如对着vcenter一梭子输出wordpress的洞是毫无意义的),大幅降低大范围探测时发包的时间、网络成本,让你比别人更快发现薄弱点。
那为什么说dddd适合作为您沉淀漏洞知识的工具?当您把漏洞配置进dddd后,虽然配置的过程稍显繁琐(编写Nuclei Poc、找资产指纹、写workflow),但您下次使用dddd扫描时,它就能自动帮您找出这个漏洞,大大降低了漏洞复现的门槛。
主动指纹探测是什么?当一个应用不暴露在根路径时就需要主动去访问,这个时候需要配置主动指纹数据库。比如Nacos,druid,geoserver这类服务,不去主动访问特定的url是不容易被发现的。

指纹库配置
dddd内置了一份指纹,若您有拓展的需求,请往下看。指纹数据库默认路径为 config/finger.yaml ,但您可以使用 -fy 参数指定您喜欢的路径。支持的指纹基础规则如下:
header="123" //返回头中包含123
header!="123" //返回头中不包含123
header~="xxx" //返回头满足xxx正则
body="123" //body中包含123
body!="123" //body中不包含123
body~="xxx" //body满足xxx正则
body=="123" //body为123
server="Sundray" //返回头server字段中包含Sundray
server!="Sundray" //返回头server字段中不包含Sundray
server=="Sundray" //server字段为Sundray
title="123" //标题包含123
title!="123" //标题不包含123
title=="123" //标题为123
title~="xxx" //标题满足xxx正则
cert="123" //证书中包含123
cert!="123" //证书中不包含123
cert~="xxx" //证书满足正则
port="80" //服务端口为80
port!="80" //服务端口不为80
port>="80" //服务端口大于等于80
port<="80" //服务端口小于等于80
protocol="mysql" //协议为mysql
protocol!="mysql" //协议不为mysql
path="123/123.html" //爬虫结果中包含 123/123.html
body_hash="619335048" //响应体mmh3 hash为619335048
icon_hash="619335048" //icon mmh3 hash
status="200" //页面返回码为200
status!="200" //页面返回码不为200
content_type="text/html" //content_type包含text/html
content_type!="text/html" //content_type不包含text/html
banner="123" // TCP banner 包含123
banner!="123" // TCP banner中不含123
各类规则支持与(&&)或(||)非(!)任意组合。可使用括号。与fofa搜索语法类似。

Poc 编写与引用
编写参考Nuclei Poc编写指南: https://nuclei.projectdiscovery.io/templating-guide/ 。dddd内置了2400+ poc,如果需要添加poc可以将新增的poc存放在 config/pocs/* 目录下,dddd会自动使用外置的poc补充内置的poc。当然,您也可以使用 -nt 参数指定一个您喜欢的文件夹。
当外置的poc和内置的poc发生冲突时,dddd会优先使用外置的。

工作流(workflow)
工作流(workflow)可以理解成指纹与Poc的映射。仅编写Poc放入Poc文件夹内是不会正常运行的,您需要为此Poc配置指定的指纹,本工具只有在匹配到目标指纹后才会调用对应的Poc。
dddd内置了一份工作流,如果需要拓展,可以新建一个工作流文件在 config/workflow.yaml,dddd会自动识别并用于补充内置的工作流。当然,您也可以使用 -wy 参数指定一个您喜欢的工作流数据库路径。
APACHE-Solr:
type:
- root
pocs:
- CVE-2017-12629
- CVE-2019-0193
以APACHE-Solr为例。当dddd识别到目标指纹为APACHE-Solr时,就会在工作流数据库中寻找路径以 CVE-2017-12629、CVE-2019-0193等结尾的poc调用(可以不写.yaml)。
假设您写好一个名为 solr-0day.yaml 的nuclei poc。则应该在指纹数据库对应指纹的pocs下添加一行 solr-0day.yaml 或者 solr-0day。这样才能在识别到solr时调用到此poc。
在新版中,dddd支持使用nuclei tags进行指定。在workflow中填写 Tags@ 开头的poc名称,则代表匹配所有带此tag的nuclei poc。
nginx:
type:
- root
pocs:
- Tags@nginx
上述workflow的意思是匹配所有带 nginx tags的poc。而指纹数据库中的 type 用于指定poc与路径的对应关系,看下边的一个例子就能明白。

漏洞报表


✨ 核心亮点
1. 智能输入识别与复杂指纹逻辑
无需手动区分目标类型,系统自动识别输入是IP地址、CIDR网段、域名还是URL,自动匹配对应的扫描策略。指纹识别引擎支持与/或/非/括号组合的复杂逻辑运算,可精准描述多条件组合的识别场景(如Apache + Tomcat + 非Windows),大幅降低误识别与漏识别。
2. 指纹-漏洞映射减少无效发包
建立指纹与POC的映射数据库,扫描时先执行指纹识别,仅对匹配到的组件调用关联Nuclei v3 POC进行检测。相比全量POC扫描,这种方式发包量减少80%以上,既降低目标告警概率,又提升扫描速度。Hunter低感知模式进一步减少空间测绘时的风控触发,适合大规模外网资产梳理。
3. 低依赖开箱即用与审计日志
Release提供各系统预编译二进制文件,下载即可运行,无需安装Python/Go等环境。支持txt/html/json多格式输出,HTML报表包含漏洞请求/响应详情,便于复现与报告撰写。-a参数开启审计日志,记录完整扫描行为,满足敏感环境的合规审计与事后追溯需求。
🛠️ 技术优势
| 技术/特性 |
说明 |
优势 |
| 自动类型识别 |
正则+启发式判断 |
零配置,减少操作失误 |
| 复杂指纹逻辑 |
与/或/非/括号运算 |
规则表达力强,精准匹配 |
| Nuclei v3 集成 |
业界标准POC引擎 |
POC生态丰富,更新及时 |
| 泛解析过滤 |
智能去噪算法 |
子域名爆破结果更干净 |
| 低依赖二进制 |
静态编译发布 |
跨平台开箱即用 |
| Hunter 低感知 |
请求频率控制 |
降低API风控触发 |
📖 使用指南
① 准备工作:从Release下载对应系统的二进制文件与 config.zip,解压后放置于同目录。v2.0起可独立于config运行,但建议保留以获取完整指纹库。
② 核心操作:执行 dddd -t 192.168.0.1/24 扫描内网网段,dddd -t http://test.com 进行Web扫描。外网资产梳理使用 dddd -t 'icp.name="xxxx有限公司"' -hunter -fofa -oip 从Hunter拉取并补充Fofa端口。子域名枚举执行 dddd -t xxx.com -sd,仅指纹识别添加 -npoc 参数跳过POC检测。
③ 结果查看:默认输出至 result.txt,HTML漏洞报表为当前时间戳.html,可通过 -o 与 -ho 自定义路径。开启 -a 后审计日志保存至 audit.log。扫描可随时 Ctrl+C 终止,已识别结果实时落盘不丢失。
📖 项目地址
https://github.com/SleepingBag945/dddd
云栈社区持续关注攻防工具与开源实战项目,欢迎来分享你的工具链。
💻 技术交流与学习
如果师傅们想要第一时间获取到最新的威胁情报,可以添加下面我创建的钉钉漏洞威胁情报群,便于师傅们可以及时获取最新的IOC。
如果师傅们想要获取网络安全相关知识内容,可以添加下面我创建的网络安全全栈知识库,便于师傅们的学习和使用。覆盖渗透、安服、运营、代码审计、内网、移动、应急、工控、AI/LLM、数据、业务、情报、黑灰产、SRC、溯源、钓鱼、区块链等方向,内容还在持续整理中。

