nuclei-templates 漏洞扫描指南:从首次运行到批量审计
【免费下载链接】nuclei-templatesCommunity curated list of templates for the nuclei engine to find security vulnerabilities.项目地址: https://gitcode.com/GitHub_Trending/nu/nuclei-templates
公司有一批待检站点,想知道各自暴露了哪些漏洞,逐台手工跑工具效率太低。nuclei-templates 就是为 nuclei 扫描器准备的模板库,收录了 1.2 万个可直接运行的漏洞检测模板:给它一个 URL,它会按模板逐项检查目标并输出命中项。
本文按“能做什么 → 三步跑起来 → 高频用法 → 配置组合 → 避坑”的顺序展开,走完即可独立完成一次常规巡检。
先看清模板库的结构
模板按检测对象分目录存放,数量以TEMPLATES-STATS.md的统计为准:
| 目录 | 解决的问题 |
|---|---|
http/ | Web 漏洞、暴露面板、配置错误,约 9000 个模板,占最大头 |
cloud/ | AWS、Azure、GCP、阿里云等云服务的配置错误检测 |
code/ | 主机提权链、代码类 CVE、操作系统配置审计,适合已拿到服务器权限后的场景 |
file/ | 扫描暴露文件、泄露的密钥令牌、webshell、恶意程序特征 |
workflows/ | 把多个模板串起来,对 WordPress 等产品做整类全量审计 |
记住一点:后面所有命令里的-t参数,填的都是上表这种相对于模板库根目录的路径。
安装并验证环境
第 1 步:安装
git clone https://gitcode.com/GitHub_Trending/nu/nuclei-templates go install -u github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest第一条命令把模板仓库拉到本地,第二条安装 nuclei 扫描器本体。
第 2 步:验证
nuclei -version nuclei -update-templates预期输出当前版本号;第二条命令把最新模板同步到本地模板目录(默认~/.local/share/nuclei/templates),看到下载进度即成功。
第 3 步:运行首次扫描
nuclei -u https://example.com -t http/technologies/预期逐条打印检测命中项(目标用了哪些技术栈)。没有任何输出也是正常结果,说明这一类模板未命中。
日常、专项、批量:三种常用跑法
日常巡检
对技术栈未知的站点,先只看高风险命中,减少噪音:
nuclei -u https://target.com -severity high,critical
无输出只表示本次没有 high/critical 级别命中,不代表站点没有问题,可再放低级别复查。
专项排查(WordPress)
确认目标是 WordPress 站点后,用仓库自带的 workflow 模板一次跑完该品类全部检测:
nuclei -workflow workflows/wordpress-workflow.yaml -u https://target.com
workflow 会先执行技术识别模板,再自动带上所有 wordpress 标签的漏洞模板,比手动拼-t省事。
团队批量处理
把目标站点列表存成文本文件(每行一个 URL),只扫 AWS 相关模板并落盘结果:
nuclei -l targets.txt -t cloud/aws/ -o results.json
-o输出的 JSON 便于后续聚合、去重和生成报告。
配置 profile 文件并用命令行覆盖
仓库profiles/目录下有多份现成 profile(如cloud.yml、recommended.yml),本质是过滤规则集合。自定义一份时写法如下:
tags: - cloud - misconfig severity: - critical - high exclude-tags: - fuzz rate-limit: 100tags:只运行带这些标签的模板,把范围收窄到云与配置错误severity:限定模板严重级别,过滤掉大量 info 级噪音exclude-tags:排除不想执行的模板类别,fuzz 类请求量大,默认排除较稳妥rate-limit:限制每秒请求数,避免压垮目标或被 WAF 封禁
运行方式:
nuclei -profile cloud -u https://target.com -severity critical -o result.json-profile传目录内现成的 profile 名(如cloud)或自定义文件路径;命令行参数会覆盖 profile 中的同名设置,临时调级别时不必改文件。
避坑清单
- 提示模板路径找不到→
-t是相对模板库根目录的路径,不是相对当前工作目录 → 改成http/technologies/这类形式。 - 结果被 info 级条目刷屏→ 模板库中 info 级模板有 4000+ → 加
-severity high,critical或用-tags收窄。 - 目标被限流、扫描明显变慢→ 默认并发和速率偏高 → 追加
-rl 100(每秒请求上限)与-c 25(并发上限)。 - 新 CVE 扫不出来→ 本地模板滞后 → 定期执行
nuclei -update-templates,或更新 clone 的仓库后再扫。 - 高危 RCE 类模板发出大量真实请求→ 部分 high/critical 模板带真实攻击载荷 → 先在单一目标验证;生产环境建议用
-exclude-id排除,profiles/recommended.yml内有一份可直接参考的高危排除清单。
延伸资源
- profiles/recommended.yml:推荐检测 profile,含高危模板排除清单
- TEMPLATES-STATS.md:模板全量统计,按标签、级别、目录分布
- TEMPLATE-REVIEW-GUIDE.md:模板评审标准,帮助理解一条合格模板长什么样
- README_CN.md:项目中文说明
模板库会随新漏洞持续更新,扫描前先刷新一次模板,覆盖范围才能跟上漏洞发布的节奏。
【免费下载链接】nuclei-templatesCommunity curated list of templates for the nuclei engine to find security vulnerabilities.项目地址: https://gitcode.com/GitHub_Trending/nu/nuclei-templates
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考