文章总结: 本文介绍Kali工具nuclei,一款基于YAML模板驱动的漏洞扫描器,社区维护数千模板,新漏洞曝光数小时内即可上线模板,官方宣称零误报。文章详解模板体系、筛选维度、Interactsh盲漏洞检测、与Burp等工具联动,并提供参数速查表和实战命令,适合CVE复现、批量资产体检和红队打点场景。
综合评分: 85
文章分类: 安全工具,漏洞分析,红队
每天学一个 Kali 工具 · Day22 nuclei:YAML 模板驱动的漏洞扫描”精确制导武器”
原创
0day收割机
0day收割机
0day收割机
2026年9月22日 11:01
山东
在小说阅读器读本章
去阅读
在公众号小说中沉浸阅读
每天学一个 Kali 工具 · Day22
nuclei:YAML 模板驱动的漏洞扫描”精确制导武器”
摘要:「每天学一个 Kali 工具」第二十二天。昨天 nikto 给 Web 服务器做了全身体检,今天升级到精确打击——nuclei:基于 YAML 模板的漏洞扫描器,社区维护数千个漏洞模板,新漏洞曝光几小时内模板就上线,官方宣称”零误报”。CVE 复现、批量资产体检、红队打点,它都是当下的顶流。文末附参数速查和实战命令,建议收藏。
写在前面
昨天的 nikto 是”体检医生”:拿着内置的七千项清单,把服务器从头查一遍——全面,但慢,且误报不少。
今天的 nuclei 换了个哲学:不做全面体检,做精确化验。
它的核心是模板(Template):每个漏洞一个 YAML 文件,里面写清楚”发什么请求、匹配什么特征、算不算命中”。社区几千名安全研究员持续贡献模板——Log4Shell 曝光几小时后,nuclei 模板就上线了;你手里攥着几千张”化验单”,对着目标批量跑一遍,命中的就是实锤。
官方定位原话:基于模板发请求,零误报(zero false positives),在海量主机上快速扫描。
nikto 是 2001 年的老军医,nuclei 是 2020 年的基因测序仪——这就是漏洞扫描的代际差。
一、nuclei 是什么?
Kali 官网的定义:nuclei 是一款基于简单 YAML DSL 的快速、可定制漏洞扫描器。它提供基于模板的可配置定向扫描,具备海量可扩展性和易用性。nuclei 根据模板向目标发送请求,从而实现零误报和海量主机的快速扫描。
| | |
| — | — |
| 当前版本 | v3.11.1 |
| 体积 | 136.31 MB |
| 出品方 | ProjectDiscovery(httpx、subfinder、naabu 全家桶的娘家) |
| 模板库 | nuclei-templates,社区维护,-ut 一键更新 |
| 语言 | Go(单二进制,无运行时依赖) |
支持的协议类型(官网帮助原文):
dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript
从 Web 到 TCP 裸协议、从证书到 DNS、甚至无头浏览器和 JavaScript 执行——一个扫描器通吃。
二、快速上手:官网示例精讲
官网给了五条示例,正好覆盖五种典型用法:
# 1. 最简扫描:全模板默认跑
nuclei -target example.com
# 2. 指定模板:只跑 HTTP 的 CVE 模板 + SSL 模板
nuclei -target example.com -t http/cves/ -t ssl
# 3. 批量目标:从文件读主机列表(每行一个)
nuclei -list hosts.txt
# 4. 结果导出 JSON
nuclei -target example.com -json-export output.json
# 5. 导出 Markdown 报告目录(按模板排序)
MARKDOWN_EXPORT_SORT_MODE=template nuclei -target example.com -markdown-export nuclei_report/
解读第 2 条——这是 nuclei 的精髓:
-
-t http/cves/:只跑模板库里
http/cves/目录——按年份组织的已知 CVE 漏洞模板; -
-t ssl:加上 SSL 配置类模板(弱加密套件、过期证书等);
-
多个
-t可以叠加,扫什么完全由你点名。
首次运行 nuclei 会自动下载官方模板库到 ~/nuclei-templates/,之后记得常更新:
# 更新模板库(漏洞知识库保鲜)
nuclei -update-templates
三、模板体系:nuclei 的灵魂
▍1. 一个模板长什么样?
YAML 格式,核心就四段——发什么请求、怎么匹配、什么严重级、元信息:
id: cve-example-001
info:
name: 某组件未授权访问
author: 社区贡献者
severity: high
tags: cve,exposure
requests:
- method: GET
path:
- "{{BaseURL}}/admin/api"
matchers:
- type: word
words:
- "admin_token"
看得懂 HTTP 请求就能写模板——这就是”YAML DSL”的平易之处。
▍2. 模板的筛选维度(FILTERING)
| 维度 | 参数 | 例子 |
| — | — | — |
| 按标签 | -tags | -tags cve2024,xss |
| 按严重级 | -s | -s critical,high |
| 按模板 ID | -id | -id CVE-2021-44228 (支持通配符) |
| 按作者 | -a | -a pdteam |
| 按协议 | -pt | -pt http,dns |
| 排除 | -etags / -es / -eid | -etags dos (排除 DoS 类) |
# 组合示例:只跑高危+严重级的 CVE 模板,排除 DoS
nuclei -list hosts.txt -tags cve -s high,critical -etags dos
▍3. 三个高级玩法(官网帮助里的宝藏)
| 参数 | 玩法 |
| — | — |
| -as | 自动扫描 :先用 wappalyzer 指纹识别目标技术栈,自动映射到对应标签的模板——不知道扫什么就交给它 |
| -ai <提示词> | AI 生成模板 :用自然语言描述漏洞,nuclei 直接生成并运行模板(v3 新特性) |
| -w | 工作流 :把多个模板串成条件链(先确认是 Tomcat,再跑 Tomcat 专属漏洞) |
四、Interactsh:盲漏洞的”传呼机”
SQL 盲注、SSRF、XXE 这类漏洞有个共同点:响应里看不到证据,得让目标”主动回连”才能实锤。
nuclei 内置了 Interactsh(ProjectDiscovery 的 OAST 平台):每个扫描分配一个专属回连域名,目标一旦发起带外请求(DNS/HTTP),nuclei 立刻收到”传呼”——盲漏洞无所遁形。
眼熟吗?这就是 Day19 Burp Collaborator 的开源同类。默认用官方免费服务器(oast.pro 等),也可以 -iserver 自建:
# 禁用 Interactsh(不想跑 OAST 类模板时)
nuclei -target example.com -no-interactsh
五、和已学工具的联动
nuclei 是 ProjectDiscovery 工具链的枢纽,和我们学过的兵器天然咬合:
| 联动 | 打法 |
| — | — |
| Day19 Burp Suite | -im burp 直接吃 Burp 导出的流量文件;或 -p http://127.0.0.1:8080 让流量全进 Burp 复盘 |
| Day21 nikto | nikto 全面体检找”病”,nuclei 精确化验找”实锤 CVE”——报告互补 |
| Day09 amass / Day12 theHarvester | 挖出的子域名列表直接 -l subdomains.txt 批量扫 |
| Day17 SpiderFoot | 情报里的资产清单喂给 nuclei 做漏洞验证 |
| Day01 nmap | -preflight-portscan 自带预检端口扫描;也可 nmap 出端口再喂 nuclei |
| uncover 引擎 | -uc -uq 'query' -ue shodan 直接从 Shodan/FOFA/ZoomEye 拉目标来扫 |
# 联动示例:Shodan 搜目标 → nuclei 直接扫
nuclei -uc -uq 'http.title:"后台登录"' -ue shodan -s critical,high
六、参数速查表
官网 nuclei -h 选项极多,挑高频的分类整理:
▍目标(TARGET)
| | |
| — | — |
| -u, -target <目标> | 单个/多个目标 URL 或主机 |
| -l, -list <文件> | 目标列表文件(每行一个) |
| -eh, -exclude-hosts | 从输入中排除指定主机 |
| -resume <文件> | 断点续扫 |
| -sa, -scan-all-ips | 扫描域名解析出的所有 IP |
| -im, -input-mode | 输入格式:list / burp / jsonl / yaml / openapi / swagger |
▍模板与过滤(TEMPLATES / FILTERING)
| | |
| — | — |
| -t, -templates | 指定模板文件或目录(逗号分隔) |
| -nt, -new-templates | 只跑最新模板库新增的模板(追新漏洞) |
| -as, -automatic-scan | 指纹识别自动匹配模板 |
| -ai, -prompt | AI 生成并运行模板 |
| -w, -workflows | 运行工作流(模板条件链) |
| -tl / -tgl | 列出当前过滤条件的模板 / 所有可用标签 |
| -tags / -etags | 按标签跑 / 排除标签 |
| -s / -es | 按严重级跑 / 排除(info/low/medium/high/critical) |
| -id / -eid | 按模板 ID 跑 / 排除(支持通配符) |
| -pt / -ept | 按协议类型跑 / 排除(dns/http/tcp/ssl/websocket…) |
▍输出(OUTPUT)
| | |
| — | — |
| -o, -output <文件> | 结果写入文件 |
| -silent | 只输出发现项(管道友好) |
| -je / -jle | 导出 JSON / JSONL |
| -me, -markdown-export | 导出 Markdown 报告目录 |
| -se, -sarif-export | 导出 SARIF(接 CI/CD 安全流水线) |
| -pe, -pdf-export | 导出 PDF |
| -sresp, -store-resp | 保存全部请求/响应 |
| -rd, -redact | 输出中脱敏指定字段 |
▍速率与优化(RATE-LIMIT / OPTIMIZATIONS)
| | |
| — | — |
| -rl, -rate-limit <n> | 每秒最大请求数,默认 150 |
| -c, -concurrency <n> | 并行模板数,默认 25 |
| -bs, -bulk-size <n> | 每模板并行主机数,默认 25 |
| -timeout <秒> | 请求超时,默认 10 |
| -spm, -stop-at-first-match | 命中即停(提速,可能破坏工作流逻辑) |
| -project | 项目模式:避免重复发相同请求 |
▍高级(INTERACTSH / HEADLESS / HONEYPOT / DEBUG / UPDATE)
| | |
| — | — |
| -iserver <url> | 自建 Interactsh 服务器 |
| -ni, -no-interactsh | 禁用 OAST 回连检测 |
| -headless | 启用需要无头浏览器的模板(DOM XSS 等) |
| -hpd, -honeypot-detect | 蜜罐检测 :按命中浓度识别蜜罐主机 |
| -shp, -suppress-honeypot | 屏蔽蜜罐主机的输出 |
| -p, -proxy <代理> | 走 HTTP/SOCKS5 代理(接 Burp) |
| -debug / -hc / -stats | 调试请求响应 / 诊断自检 / 进度统计 |
| -ut, -update-templates | 更新模板库 |
七、实战速查
# 1. 首次使用:更新模板库
nuclei -update-templates
# 2. 官网同款:单目标全量扫描
nuclei -target example.com
# 3. 只打已知 CVE + SSL 配置
nuclei -target example.com -t http/cves/ -t ssl
# 4. 批量目标:nmap/amass 的成果直接喂进来
nuclei -l hosts.txt -s critical,high -o findings.txt
# 5. 追新漏洞:只跑模板库最新增加的模板
nuclei -l hosts.txt -nt
# 6. 全自动:指纹识别 → 自动匹配模板
nuclei -target example.com -as
# 7. 复现指定 CVE(Log4Shell 为例)
nuclei -l hosts.txt -id CVE-2021-44228
# 8. 报告全家桶:JSON + Markdown + SARIF
nuclei -target example.com -je out.json -me report_dir/ -se out.sarif
# 9. 流量全走 Burp,边扫边看
nuclei -target example.com -p http://127.0.0.1:8080
# 10. 温柔扫生产:限速 + 限时 + 排除 DoS 模板
nuclei -l hosts.txt -rl 50 -mt 1h -etags dos
# 11. 断点续扫:大目标扫一半断了接着来
nuclei -l hosts.txt -resume resume.cfg
# 12. 蜜罐识别:命中浓度异常的主机自动标记
nuclei -l hosts.txt -hpd -shp
八、合规提醒
nuclei 是真实漏洞利用级别的扫描器,红线比 nikto 更粗:
-
书面授权是绝对前提
:CVE 模板发的是真实利用请求(不只是探测),未授权使用性质等同攻击;
-
生产环境三重保护
:
-rl限速 +-mt限时 +-etags dos,intrusive排除破坏性模板; -
OAST 回连注意
:Interactsh 模板会让目标向外部服务器发请求,敏感环境评估自建
-iserver或-ni禁用; -
蜜罐意识
:扫到”命中率高得离谱”的主机先想想
-hpd——你可能正在被反制方记录; -
结果即证据链
:JSON/SARIF 报告含完整漏洞证据,按最高密级资料管理。
今日小结
-
nuclei
= 模板驱动的精确制导漏洞扫描器:YAML 写漏洞逻辑,社区数千模板,新 CVE 几小时内跟进,官方宣称零误报;
-
和 nikto 的代际差:nikto 内置数据库全面体检(慢+误报),nuclei 模板化验精确打击(快+实锤)——正式项目双管齐下;
-
三件套必会:
-ut更新模板、-t/-tags/-s点名扫描、-je/-me出报告; -
高级玩法:
-as指纹自动匹配、-ai自然语言生成模板、Interactsh 盲漏洞回连、-hpd蜜罐检测; -
工具链枢纽:吃 Burp 流量、吃 amass 子域名列表、接 uncover 情报引擎——前面二十一天学的成果都能喂给它。
觉得有用的话,点赞 + 在看 + 转发 给一起学安全的朋友
关注「每天学一个 Kali 工具」,明天见!
参考资料
· Kali 官方工具页:https://www.kali.org/tools/nuclei/
· 项目主页:https://github.com/projectdiscovery/nuclei
· 官方模板库:https://github.com/projectdiscovery/nuclei-templates
· 模板编写指南:https://docs.projectdiscovery.io/tools/nuclei/
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:0day收割机 0day收割机
0day收割机《每天学一个 Kali 工具 · Day22 nuclei:YAML 模板驱动的漏洞扫描”精确制导武器”》