dddd是一个非常高效的红队渗透工具,我经常使用它,因为它内置了Nuclei引擎和大量的指纹及PoC,其gopoc模块在进行端口扫描和爆破时速度极快,使用体验非常流畅。尽管作者已经有一段时间没有更新,但基本功能已经非常完善,确实不需要频繁更新。然而,随着新漏洞的不断发现,及时更新PoC对于保持工具的先进性至关重要。因此,将最新的PoC集成到你的Dddd中,可以让你在渗透测试时抢占先机,始终保持领先。
项目地址
SleepingBag945/dddd: dddd是一款使用简单的批量信息收集,供应链漏洞探测工具,旨在优化红队工作流,减少伤肝的机械性操作。支持从Hunter、Fofa批量拉取目标
首先-h查看使用方法
可以看到一些默认的配置文件指定方式
我们这里全部使用默认的,在dddd所在的目录下面新建一个config文件即可
另外在config中创建 pocs文件夹和finger.yaml 和workflow.yaml
通过查看作者的源码中的finger格式和workflow格式可以仿照编写
首先是finger.yaml
先看一段作者的源文件内容
FiberHome-公司产品:
- '(title="FIBERHOME" && body="FIBERHOME Systems, Inc.") || body="scos_fx@fiberhome.com "'
D-Link-DAR-8000:
- 'title="D-Link" && body="DAR-8000"'
Dynamicweb:
- body="Dynamicweb"
可以看得出来并不是nuclei特有的写法,类似于fofa的语法规则,其实本质上也就是常见的指纹匹配规则,通过body header banner title的匹配关键字,还支持protocol和icon_hash基本和fofa的搜索语法差不多,那么我们也就按照他的写法即可。
workflow.yaml
FiberHome-公司产品:
type:
- root
pocs:
- CVE-2017-15647
D-Link-DAR-8000:
type:
- root
pocs:
- dlink-dar-8000-rce
Dynamicweb:
type:
- root
pocs:
- CVE-2022-25369
这里的写法就更加明了了,系统名就和指纹中的一致,然后type全是root这个不知道是干什么的照着写即可,最后是pocs: 其实就是指定的pocs文件夹下的存放的poc,因为是nuclei引擎所以使用都是nuclei的yaml模版,写在这里不需要加.yaml就可以,也就是指纹识别到了就会去调用pocs下面的yaml去检测。
那么这里仿照添加一个九思OA系统的指纹和poc来验证
首先是我写好的5个九思OA的检测yaml放置到pocs文件夹下(前面有文章介绍如何快速编写yaml)
编写finger.yaml
在网上找的的指纹
编写workflow.yaml
都很简单,写好保存后直接用dddd开扫
平时在有新的漏洞爆出都可以自己添加到这些内容中,在打点的时候实现真正的快人一步。