DLDL 是一款强大的自动化漏洞扫描工作流管理工具,它可以帮助你高效管理指纹库、POC库和扫描工作流。无论你是安全测试新手还是资深安全研究员,DLDL都能让你的工作效率提升10倍!
今天给大家带来保姆级入门教程,重点讲解DLDL最核心的两个功能:
- 🔥 自动生成Workflow - 智能匹配,一键生成
- 🚀 批量编写Workflow - 高效编辑,批量管理
在开始之前,先理解DLDL的三个核心概念:
- 作用:识别目标服务器上运行的是什么系统、什么版本
- 示例:识别出目标运行的是 Nginx 1.18.0,还是 Apache 2.4.41
- 数据来源:DLDL内置了5000+常见产品的指纹识别规则
- 作用:验证目标是否存在某个漏洞
- 示例:验证目标是否存在 CVE-2021-29441 Nginx RCE 漏洞
- 数据来源:DLDL内置了大量CVE漏洞POC,支持YAML格式
- 作用:将Finger和POC关联起来,形成完整的扫描流程
- 示例:先识别是Nginx → 再验证Nginx相关漏洞 → 根据扫描路径决定请求方式
- 类型:Root(根路径)、Dir(各级目录)、Base(完整路径)
这是DLDL最强大的功能!它会自动分析所有Finger和POC,智能匹配并生成Workflow。
点击菜单栏 「自动生成 Workflow」 进入功能页面
按文件名/名称匹配 ⚡ 推荐
- ✅ 匹配速度快
- ✅ 准确度高
- 📝 工作原理:通过指纹关键字(如"nginx"、"apache")匹配POC文件名和POC名称
- 💡 适用场景:快速生成常见服务的Workflow
按全称全文搜索 🔍 更全面
- ✅ 覆盖更全面
⚠️ 耗时较长- 📝 工作原理:通过指纹全称在POC的全部内容(包括描述、规则等)中搜索匹配
- 💡 适用场景:需要全面匹配,不遗漏任何可能
最佳实践:两个都选!先快速匹配,再全文搜索补充。
Root(根路径)
- 向目标根路径发送请求
- 示例:
http://target.com/
Dir(各级目录)
- 向目标的所有子目录发送请求
- 示例:
http://target.com/admin/、http://target.com/api/
Base(完整路径)
- 使用完整路径进行检测
- 示例:
http://target.com/manager/html
最佳实践:根据Finger的路径类型选择对应的扫描类型。
全部POC 🔥 推荐
- 使用所有POC进行匹配
- 适合首次使用或需要全面覆盖的场景
已选择的POC
- 只使用你预先选择的POC
- 适合针对性测试或已知道目标类型的场景
点击 「开始生成」 按钮,DLDL将开始自动处理:
-
任务进行中:
- 可以看到实时进度
- 已处理指纹数 / 总指纹数
- 已生成的Workflow数量
- 当前正在处理的指纹名称
-
随时终止:
- 点击「终止任务」按钮可以随时停止
- 已生成的部分会保留
-
刷新状态:
- 点击「刷新」按钮查看最新进度
任务完成后,你会看到:
✅ 成功生成:显示成功数量
详细日志:
- 每个指纹的处理结果
- 匹配到的POC列表
- 生成的Workflow详情
如果不满意生成结果,点击 「撤销操作」 按钮:
- ✅ 支持撤销已完成的任务
- ✅ 支持撤销已终止的任务
- ✅ 撤销后可以重新配置再生成
自动生成之后,你可以在 「Workflow 编辑器」 中进行批量编辑和管理。
点击菜单栏 「Workflow 编辑」 进入功能页面
支持多种搜索方式:
-
基本搜索
- 直接输入关键词
- 同时搜索指纹名称和POC名称
-
字段搜索
name:nginx- 只搜索指纹名称poc:CVE- 只搜索POC名称CVE-2021- 搜索特定CVE编号
-
排序规则
- 完全匹配优先显示
- 然后按字母A-Z排序
- 按扫描类型筛选:Root / Dir / Base
- 按POC状态筛选:有POC / 无POC
- 点击 「新增 Workflow」 按钮
- 填写指纹信息(名称、路径、规则等)
- 关联POC(支持多选)
- 选择扫描类型
- 保存
- 点击列表中的指纹名称进入编辑
- 修改指纹信息
- 添加/删除/更换POC
- 调整扫描类型
- 保存更改
- 勾选多个Workflow
- 点击批量删除按钮
- 确认删除
- 点击 「保存到文件」
- 将所有Workflow保存到
workflow.yaml - 这是DLDL的主配置文件,扫描时会使用
- 点击 「导出 YAML」
- 导出当前配置到本地文件
- 方便备份或分享给他人
- 点击 「导入 YAML」
- 导入之前导出的配置
- 支持合并或覆盖现有配置
- 点击 「清空配置」
- 清空所有Workflow配置
⚠️ 此操作不可逆,请谨慎使用
- 点击 「刷新」 按钮
- 重新加载数据
- 用于同步文件更改
假设你要为一批新的Web应用建立扫描工作流:
- 准备好你的Finger库(YAML格式)
- 进入 「Finger 管理」
- 点击 「导入 YAML」 导入指纹库
- 点击 「保存到文件」 保存
- 准备好你的POC库(YAML格式)
- 进入 「POC 管理」
- 点击 「导入 YAML」 导入POC库
- 点击 「保存到文件」 保存
- 进入 「自动生成 Workflow」
- 配置选项:
- ✅ 按文件名/名称匹配
- ✅ 按全称全文搜索
- ✅ Root / Dir / Base 全选
- 📌 POC范围:全部POC
- 点击 「开始生成」
- 等待完成(可能需要几分钟)
- 进入 「Workflow 编辑」
- 搜索需要调整的指纹
- 手动添加漏掉的POC
- 调整扫描类型
- 点击 「保存到文件」
- 配置目标列表
- 启动扫描任务
- 查看扫描结果
-
POC命名规范
- 尽量在POC文件名中包含产品名
- 示例:
CVE-2021-12345_nginx.yaml - 这样「按文件名匹配」的效果更好
-
指纹关键字提取
- DLDL会自动从指纹名称提取关键字
- 中文:提取连续的汉字序列(2字以上)
- 英文:提取完整的单词
- 自动过滤黑名单词汇
-
分批生成
- 如果Finger库很大,可以分批选择POC生成
- 先用全部POC生成一遍
- 再针对性补充某些产品
Q1:为什么有些Finger没有生成Workflow? A:这是因为没有找到匹配的POC。你可以:
- 检查POC库是否完整
- 手动为该Finger添加POC
- 使用「按全称全文搜索」模式重新生成
Q2:生成的Workflow可以修改吗? A:当然可以!在「Workflow 编辑」中可以随意修改、添加、删除POC。
Q3:如何避免重复生成? A:DLDL会自动去重,同一个Finger + POC组合只会生成一个Workflow。
Q4:生成任务卡住了怎么办? A:点击「终止任务」按钮,然后:
- 检查Finger和POC库是否损坏
- 减少POC范围重新生成
- 查看错误日志定位问题
Q5:如何备份我的配置? A:定期导出YAML文件备份:
- Finger配置 → 导出 finger.yaml
- POC配置 → 导出 pocs.yaml
- Workflow配置 → 导出 workflow.yaml
已知目标类型(比如都是Nginx),只想测试Nginx相关漏洞:
- 进入 「POC 管理」
- 搜索 "nginx"
- 勾选所有Nginx相关POC
- 进入 「自动生成 Workflow」
- POC范围选择 「已选择的POC」
- 开始生成
手动发现某些Finger应该关联某个POC但被遗漏了:
- 进入 「Workflow 编辑」
- 搜索该Finger
- 点击编辑
- 在POC列表中勾选漏掉的POC
- 保存
当你更新了POC库后,需要让Workflow使用新的POC:
- 进入 「POC 管理」
- 导入新的POC库
- 保存
- 进入 「自动生成 Workflow」
- 全部重新生成一次
- 或者手动在编辑器中批量更换POC
DLDL的核心优势在于:
✅ 自动化:智能匹配,一键生成,告别手动逐个配置 ✅ 可视化:直观的Web界面,操作简单 ✅ 批量管理:支持批量编辑、导入导出 ✅ 灵活扩展:支持自定义Finger和POC ✅ 高效工作流:从识别到验证,一站式完成
-
下载启动:运行
dldl64.exe,打开浏览器访问http://localhost:8181 -
导入数据:导入你的Finger库和POC库(或使用内置库)
-
自动生成:点击「自动生成 Workflow」,一键完成所有配置
- GitHub:[项目地址]
- Issues:提交问题和建议
- 公众号:关注我们获取更多教程
DLDL让安全扫描工作流管理变得简单高效!
如果觉得DLDL对你有帮助,欢迎给个 ⭐ Star 支持一下!
本文档持续更新中,如有疑问欢迎留言讨论