Nuclei – 快速且可定制的漏洞扫描器
Nuclei是一种快速且可定制的漏洞扫描器。 Nuclei 工具是基于 Golang 语言的工具,用于基于 Nuclei 模板跨多个目标发送请求,导致误报或不相关结果为零,并提供对各种主机的快速扫描。 Nuclei 具有内置支持,可自动将模板更新为具有更多数据的较新版本。 Nuclei-templates 项目定期为随时可用的模板提供定期更新列表。 Nuclei 提供扫描各种协议,包括 DNS、HTTP、TCP 等。可以使用核模板执行各种安全检查。
注意:由于 Nuclei 是一个基于 Golang 语言的工具,所以你的系统上需要有一个 Golang 环境。
在 Kali Linux 中安装 Nuclei 工具
第一步:如果您的系统中已经下载了Golang,请通过检查Golang的版本来验证安装,使用以下命令。
go version
第二步:从Github获取Nuclei仓库或者克隆Nuclei工具,使用如下命令。
sudo GO111MODULE=on go get -v github.com/projectdiscovery/nuclei/v2/cmd/nuclei
第三步:复制bin目录下的Nuclei工具,这样我们就可以方便的使用工具了,不用golang手动运行工具,使用如下命令。
sudo cp /root/go/bin/nuclei /usr/local/go/bin/
第 4 步:更新 Nuclei 模板,使用以下命令。
sudo nuclei -update-templates
步骤5:查看帮助菜单页面以更好地了解Nuclei 工具,使用以下命令。
nuclei -h
用法:
示例 1:运行单个模板
nuclei -u http://testphp.vulnweb.com/ -t technologies/ngix-version.yaml
示例 2:快速运行多个模板。
nuclei -u http://example.com -t cves/ -t exposures/
示例 3:扫描给定 URL 列表上的 CVE。
nuclei -l target_urls.txt -t cves/
示例 4:排除单个模板。
nuclei -u https://evil.com -t cves/ - evclude-templates cves/2020/
示例 5:排除单个模板。
nuclei -u http://example.com -exclude-templates exposed-panels/ -exclude-templates technologies/
示例 6:排除带有单个标签的模板。
nuclei -u https://facebook.com -t cves/ -etags xss
示例 7:排除具有多个标签的模板。
nuclei -u geeksforgeeks.org -t cves/ -etags sqli.rce
示例 8:运行被阻止的模板。
nuclei -l target_urls.txt -include-tags iot,misc,fuzz