VYPR
Unrated severityNVD Advisory· Published Sep 5, 2023· Updated Feb 13, 2025

Insecure Deserialization in Cacti

CVE-2023-30534

Description

Cacti is an open source operational monitoring and fault management framework. There are two instances of insecure deserialization in Cacti version 1.2.24. While a viable gadget chain exists in Cacti’s vendor directory (phpseclib), the necessary gadgets are not included, making them inaccessible and the insecure deserializations not exploitable. Each instance of insecure deserialization is due to using the unserialize function without sanitizing the user input. Cacti has a “safe” deserialization that attempts to sanitize the content and check for specific values before calling unserialize, but it isn’t used in these instances. The vulnerable code lies in graphs_new.php, specifically within the host_new_graphs_save function. This issue has been addressed in version 1.2.25. Users are advised to upgrade. There are no known workarounds for this vulnerability.

AI Insight

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

Affected products

13

Patches

Vulnerability mechanics

Root cause

"The `unserialize` function is used without sanitizing user-controlled input in two locations."

Attack vector

An authenticated user can trigger this vulnerability by sending a POST request to `graphs_new.php` with `action=save` and `save_component_new_graphs` parameters, or to `managers.php` with `action=actions` and `action_receiver_notifications` parameters. In both cases, the user can control the `selected_graphs_array` or `selected_items` POST variable, which is then deserialized without proper sanitization [ref_id=1]. This allows an attacker to inject arbitrary PHP objects into the application's memory.

Affected code

The vulnerable code resides in `graphs_new.php` within the `host_new_graphs_save` function, and in `managers.php` within the `form_actions` function. Both functions directly call `unserialize` on user-controlled input without adequate sanitization [ref_id=1].

What the fix does

The advisory states that the issue has been addressed in version 1.2.25. The fix involves ensuring that user input is properly sanitized before being passed to the `unserialize` function, or by utilizing Cacti's existing "safe" deserialization mechanism which includes content sanitization and value checks [ref_id=1]. Users are advised to upgrade to version 1.2.25 to mitigate this vulnerability.

Preconditions

  • authThe attacker must be an authenticated user.

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

References

5

News mentions

0

No linked articles in our index yet.