RushiVenkatadri/nuclei-security-scanning-guide
GitHub: RushiVenkatadri/nuclei-security-scanning-guide
一份系统讲解 Nuclei 漏洞扫描器安装、命令使用、模板编写及自动化侦察工作流的中文实用指南。
Stars: 1 | Forks: 0
# 🚀 精通 Nuclei:安全测试实用指南



## 📖 概述
Nuclei 是一款由 ProjectDiscovery 开发的快速且高度可定制的漏洞扫描器。它使用社区驱动的模板来识别安全配置错误、暴露的服务、缺失的安全标头、已知的 CVE、暴露的面板以及许多其他漏洞。
与仅仅依赖特征的传统扫描器不同,Nuclei 通过基于 YAML 的模板结合了速度、灵活性和自动化。
本仓库说明了:
* 什么是 Nuclei
* 它的工作原理
* 安装过程
* 重要命令
* 模板用法
* 侦察工作流
* Bug Bounty 应用
* 安全最佳实践
# 什么是 Nuclei?
Nuclei 是一款由 ProjectDiscovery 创建的开源漏洞扫描器。
它向目标发送请求,并将响应与描述安全问题的预定义模板进行比较。
### 示例
无需手动检查:
* 缺失的安全标头
* 暴露的 Git 仓库
* 配置错误的 S3 Bucket
* 已知的 CVE
Nuclei 可以使整个流程自动化。
# Nuclei 的工作原理
```
Target
↓
Templates
↓
HTTP/DNS/TCP Requests
↓
Response Matching
↓
Vulnerability Detection
```
Nuclei 执行以下操作:
1. 发送请求
2. 接收响应
3. 匹配响应模式
4. 生成发现结果
# 安装说明
## Linux
```
go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest
```
## MacOS
```
brew install nuclei
```
## 验证安装
```
nuclei -version
```
# 更新模板
模板会频繁更新。
```
nuclei -update-templates
```
检查模板版本:
```
nuclei -tl
```
# 模板类别
Nuclei 提供了针对以下类别的模板:
| 类别 | 用途 |
| ---------------- | -------------------------- |
| CVEs | 已知漏洞 |
| Exposure | 信息泄露 |
| Misconfiguration | 安全配置错误 |
| Technologies | 技术检测 |
| DNS | DNS 问题 |
| SSL | TLS 配置错误 |
| Default Logins | 弱凭证 |
| Panels | 管理界面 |
| Files | 敏感文件 |
| Headless | 基于浏览器的检查 |
# 基础扫描
```
nuclei -u https://example.com
```
# 扫描多个目标
```
nuclei -l targets.txt
```
示例:
```
https://site1.com
https://site2.com
https://site3.com
```
# 扫描特定类别
## Exposure 检查
```
nuclei -u https://example.com -tags exposure
```
## Misconfiguration 检查
```
nuclei -u https://example.com -tags misconfig
```
## CVE 检查
```
nuclei -u https://example.com -tags cve
```
# 保存结果
```
nuclei -l targets.txt -o results.txt
```
# 严重性过滤
仅显示 Critical 发现结果:
```
nuclei -u https://example.com -severity critical
```
Medium 和 High:
```
nuclei -u https://example.com -severity medium,high
```
# 技术检测
```
nuclei -u https://example.com -tags tech
```
适用于:
* 侦察
* 攻击面映射
* 技术指纹识别
# 常见发现
## 缺失的安全标头
示例:
```
Content-Security-Policy
X-Frame-Options
Strict-Transport-Security
Permissions-Policy
Referrer-Policy
```
影响:
* 点击劫持 (Clickjacking)
* 信息泄露
* 降低的浏览器安全性
## 暴露的面板
示例:
```
Jenkins
Grafana
Kibana
WordPress Admin
phpMyAdmin
```
## 暴露的文件
示例:
```
.git
.env
backup.zip
config.php.bak
```
# Nuclei 在 Bug Bounty 中的应用
一个常见的工作流:
```
Subfinder
↓
Httpx
↓
Nuclei
↓
Manual Verification
↓
Report
```
示例:
```
subfinder -d example.com | httpx | nuclei
```
# 重要参数
## 静默模式
```
-silent
```
## JSON 输出
```
-json
```
## 速率限制
```
-rl 100
```
## 自定义模板
```
-t templates/
```
# 创建自定义模板
示例:
```
id: example-template
info:
name: Example Check
severity: low
requests:
- method: GET
path:
- "{{BaseURL}}"
matchers:
- type: word
words:
- "Welcome"
```
# 最佳实践
✅ 始终获取授权
✅ 手动验证发现结果
✅ 保持模板更新
✅ 使用速率限制
✅ 在报告前了解影响
✅ 遵循负责任的披露原则
# Nuclei 的优势
✔ 极速
✔ 轻量级
✔ 易于自动化
✔ 庞大的社区
✔ 数以千计的模板
✔ 易于集成
✔ Bug Bounty 友好
# 局限性
❌ 可能出现误报
❌ 需要人工验证
❌ 依赖于模板
❌ 无法完全替代人工测试
# 学习资源
官方文档:
https://docs.projectdiscovery.io
官方模板:
https://github.com/projectdiscovery/nuclei-templates
官方网站:
https://projectdiscovery.io
# 免责声明
本仓库仅出于教育和授权安全测试目的而创建。
在扫描任何目标之前,请务必获得适当的许可。
未经授权的扫描可能会违反法律、服务条款或组织政策。
⭐ 如果您觉得此仓库有用,请考虑给它点个 Star。
标签:Google, Nuclei, YAML模板, 主机安全, 安全测试, 实时处理, 密码管理, 插件系统, 攻击性安全, 日志审计, 网络安全, 自动化侦察, 隐私保护