当前位置: 首页 > news >正文

Nuclei-快速漏洞扫描器

Nuclei-快速漏洞扫描器

声明
学习内容来自 B 站UP主泷羽sec,如涉及侵权马上删除文章。

笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负。

✍🏻作者简介:致力于网络安全领域,目前作为一名学习者,很荣幸成为一名分享者,最终目标是成为一名开拓者,很有趣也十分有意义
🤵‍♂️ 个人主页: @One_Blanks
欢迎评论 💬点赞👍🏻 收藏 📂加关注+

  • 关注总部:泷羽Sec

目录

  • Nuclei-快速漏洞扫描器
      • 介绍
      • 下载
  • Nuclei-POC库5000+获取
  • Nuclei使用
      • 1. **基本命令格式**
      • 2. **运行单个模板**
      • 3. **扫描多个目标**
      • 4. **使用多个模板**
      • 5. **扫描多个目标和多个模板**
      • 6. **使用Nuclei的高级参数**
        • a. **指定扫描并发数**
        • b. **指定扫描时间**
        • c. **指定输出格式**
        • d. **扫描指定端口**
        • e. **指定请求头**
        • f. **忽略 SSL 验证**
      • 7. **更新模板**
      • 8. **过滤扫描结果**
      • 9. **扫描时指定请求方法**
      • 10. **Nuclei 结果解析**

介绍

Nuclei 是一个快速的、基于模板的漏洞扫描工具,支持多种平台,主要通过 YAML 模板 来执行各种网络漏洞扫描。它支持多种攻击类型,包括常见的 Web漏洞安全配置错误已知 CVE 漏洞 等。Nuclei 通过扫描模板来快速查找漏洞。

下载

Windows系统版安装包:

https://pan.quark.cn/s/83453b91ec89

Nuclei-POC库5000+获取

https://pan.quark.cn/s/2dd5b4c04ba1

image

Nuclei使用

1. 基本命令格式

在安装好 Nuclei 之后,可以通过命令行来运行漏洞扫描。基本的命令格式如下:

nuclei -t <template> -target <target>
  • -t <template>:指定要使用的模板(可以是单个模板、模板文件或模板目录)。
  • -target <target>:指定目标网站或 IP 地址,可以是单个目标,也可以是包含多个目标的文件。

2. 运行单个模板

假设你已经安装了 Nuclei 并下载了模板,你可以使用以下命令扫描单个目标(网站):

nuclei -t cves/2021-12345.yaml -target https://example.com
  • 该命令将使用 cves/2021-12345.yaml 这个模板扫描目标 https://example.com

3. 扫描多个目标

如果你有一个包含多个目标的文件(比如 targets.txt),你可以使用 -target 参数指定该文件。每一行可以是一个 URL 或 IP 地址。

nuclei -t cves/2021-12345.yaml -target targets.txt

4. 使用多个模板

如果你想同时使用多个模板,可以通过 -t 参数指定多个模板路径。例如:

nuclei -t cves/2021-12345.yaml -t technologies/struts.yaml -target https://example.com

你也可以通过模板目录来扫描所有模板。例如:

nuclei -t /path/to/templates/ -target https://example.com

5. 扫描多个目标和多个模板

如果你有多个目标和多个模板,想同时扫描多个目标,可以这样运行:

nuclei -t /path/to/templates/ -target /path/to/targets.txt

这会同时对多个目标应用多个模板进行扫描。

6. 使用Nuclei的高级参数

Nuclei 具有许多可自定义的参数,你可以根据需求进行调整。

a. 指定扫描并发数

可以使用 -c 参数来设置扫描的并发数,增加并发数能加速扫描,但也可能会导致过多请求被目标服务器阻止。

nuclei -t cves/2021-12345.yaml -target https://example.com -c 50
b. 指定扫描时间

你可以使用 -timeout 参数设置扫描的超时时间。例如,设置为 30 秒:

nuclei -t cves/2021-12345.yaml -target https://example.com -timeout 30
c. 指定输出格式

Nuclei 支持将扫描结果输出为不同的格式,如 jsonyamlcsvhtml。例如,输出为 JSON 格式:

nuclei -t cves/2021-12345.yaml -target https://example.com -o output.json

如果想要结果输出到文件并以 HTML 格式呈现:

nuclei -t cves/2021-12345.yaml -target https://example.com -o output.html
d. 扫描指定端口

可以通过 -p 参数指定扫描目标的端口。例如,扫描端口 80 和 443:

nuclei -t cves/2021-12345.yaml -target https://example.com -p 80,443
e. 指定请求头

有时你可能需要自定义 HTTP 请求头,可以通过 -H 参数传递。例如:

nuclei -t cves/2021-12345.yaml -target https://example.com -H "User-Agent: CustomAgent/1.0"
f. 忽略 SSL 验证

如果目标站点启用了自签名证书或者你不想检查 SSL 证书,可以使用 -ssl-verify 参数来忽略 SSL 验证:

nuclei -t cves/2021-12345.yaml -target https://example.com -ssl-verify false

7. 更新模板

Nuclei 会定期更新其漏洞模板库,可以通过以下命令来手动更新模板:

nuclei -update-templates

或者,也可以从 GitHub 上克隆 Nuclei 的模板库,手动获取最新的模板:

git clone https://github.com/projectdiscovery/nuclei-templates

8. 过滤扫描结果

Nuclei 也支持通过 -severity 参数来过滤结果,根据严重性等级进行筛选。严重性等级包括 lowmediumhighcritical

nuclei -t cves/2021-12345.yaml -target https://example.com -severity high

这只会输出严重性为 high 的漏洞。

9. 扫描时指定请求方法

默认情况下,Nuclei 使用 GET 请求进行扫描,但你也可以使用 -method 参数来指定其他 HTTP 请求方法,如 POSTPUT 等:

nuclei -t cves/2021-12345.yaml -target https://example.com -method POST

10. Nuclei 结果解析

你可以通过解析输出的文件来查看扫描结果。如果你使用 jsoncsv 格式输出,可以使用标准的工具(如 jqcatgrep)来进一步分析和筛选结果。

例如,查看 json 格式的扫描结果:

cat output.json | jq '.'

或者,如果你想过滤出具体的漏洞信息,可以使用:

cat output.json | jq '.results[] | select(.info.name=="CVE-2021-12345")'
http://www.lryc.cn/news/496024.html

相关文章:

  • linux网络抓包工具
  • 详解桥接模式
  • 探索AI新世界!热门工具与学习资源免费获取
  • vue3项目搭建-6-axios 基础配置
  • Django 视图层
  • 代理IP与百度在信息时代的交互
  • 1、Three.js开端准备环境
  • 什么是Batch Normalization?
  • 十四(AJAX)、AJAX、axios、常用请求方法(GET POST...)、HTTP协议、接口文档、form-serialize
  • vue2怎么写computed属性
  • 【从零开始的LeetCode-算法】35. 搜索插入位置
  • vscode + conda + qt联合开发
  • 技术总结(四十三)
  • mac终端自定义命令打开vscode
  • 代码设计:设计模式:应对变化
  • Proteus中添加新元件库
  • Hive学习基本概念
  • 运维工程师.云计算工程师面试题.考试题
  • 四、初识C语言(4)
  • 解决爬虫ConnectionResetError出现的问题
  • Qt桌面应用开发 第十天(综合项目二 翻金币)
  • vue跳转以及传参
  • Meta Reality Labs的VR/AR投资战略转向:内部视角与市场影响
  • animate.css和wow.js结合使用实现动画效果
  • 【大模型】ChatGPT 提示词优化进阶操作实战详解
  • 网络安全:攻击和防御练习(全战课), DDos压力测试
  • 【落羽的落羽 C语言篇】指针·之其五
  • go的web框架介绍
  • 基于群晖搭建个人图书架-TaleBook based on Docker
  • redis哨兵安装部署