VYPR
Unrated severityNVD Advisory· Published Jan 20, 2020· Updated Aug 4, 2024

CVE-2020-7237

CVE-2020-7237

Description

Cacti 1.2.8 allows Remote Code Execution (by privileged users) via shell metacharacters in the Performance Boost Debug Log field of poller_automation.php. OS commands are executed when a new poller cycle begins. The attacker must be authenticated, and must have access to modify the Performance Settings of the product.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

Affected products

9

Patches

Vulnerability mechanics

Root cause

"Missing input validation in the Boost Debug Log field allows shell metacharacters to be passed into a command executed by poller_automation.php."

Attack vector

An authenticated attacker with access to modify Performance Settings navigates to Console → Configuration → Settings → Performance and enters shell metacharacters in the Boost Debug Log field, e.g. `--verbose; cat /etc/passwd > rce.txt` [ref_id=1]. The value is saved even when `$input_whitelisting` is enabled. When a new poller cycle begins, `poller_automation.php` constructs a command such as `/bin/php

Affected code

The vulnerability is in `poller_automation.php`, which accepts command-line arguments such as `--debug`, `--force`, `--verbose`, `--version`, or `--help` from the Performance Boost Debug Log field. The field is saved without input validation, and the value is passed directly into a shell command executed by the poller process [ref_id=1].

What the fix does

No patch is included in the bundle. The remediation guidance recommends applying input validation on the Boost Debug Log field (e.g., checking input length and allowed characters) or replacing the free-text field with a drop-down menu that only permits the intended arguments (`--debug`, `--force`, `--verbose`, `--version`, `--help`) [ref_id=1].

Preconditions

  • authAttacker must be authenticated to the Cacti web interface.
  • configAttacker must have permission to modify Performance Settings.
  • configThe poller must execute a new cycle after the payload is saved.

Reproduction

Navigate to Console → Configuration → Settings → Performance. In the Boost Debug Log field, enter `--verbose; cat /etc/passwd > rce.txt` and save. Wait for a new poller cycle to begin, then access `http://cacti/rce.txt` to view the contents of `/etc/passwd` [ref_id=1].

Generated on May 25, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

9

News mentions

0

No linked articles in our index yet.