Ad · Leaderboard 728×90

CVE-2026-30971

8.8High

Published 16 Oct 2026 · NVD status: Deferred · AI triage by gemini-3.8-flash

8.8High
Attack vector
Network
Complexity
Low
Privileges needed
Low
User interaction
None
Impact
Full C/I/A compromise
Weakness
CWE-78

Impact

Authenticated attackers with monitor-edit permissions can execute arbitrary shell commands as the web server user. They need an active account with monitor creation or modification rights to trigger the injection.

Root cause

The application interpolates unvalidated monitor Device Path values directly into Perl backticks and uses bypassable escapeshellcmd sanitization in PHP command execution paths.

Affected systems

ZoneMinder prior to 1.36.40, 1.38.2, and 1.39.2

CVSS v3.1 · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Fix & remediation

Upgrade ZoneMinder to version 1.36.40, 1.38.2, 1.39.2, or later. If immediate patching is not possible, revoke monitor creation and editing permissions from non-administrative users.

shell
$ sudo apt-get update && sudo apt-get install --only-upgrade zoneminder

AI-suggested. Run it in staging first and check it against the vendor advisory. Why?

Ad · In-content banner

NVD description

ZoneMinder is a free, open source closed-circuit television software application. Prior to 1.39.2, 1.38.2, and 1.36.40, ZoneMinder interpolates an unvalidated monitor Device field into shell commands in PHP and Perl control paths when an authenticated user with monitor-create or monitor-edit permission saves a Local monitor whose Device Path contains shell metacharacters and the monitor control or startup path runs. In this attack mechanism, the stored Device value reaches Perl qx() and backtick execution before zmdc.pl argument detainting, while separate PHP command paths use bypassable escapeshellcmd defenses. The attacker can execute arbitrary commands as the web server user. This vulnerability is fixed in 1.39.2, 1.38.2, and 1.36.40.

References

Source: nvd.nist.gov/vuln/detail/CVE-2026-30971

Ad · Sticky 320×50 / 728×90