Summary
CVE-2026-39893 is a critical pre-authentication SQL injection vulnerability in Cacti, an open source performance and fault management framework, affecting all versions up to and including 1.2.30. The flaw resides in graph_view.php, where the rfilter request variable is concatenated directly into an SQL RLIKE clause without sanitization, and is reachable without credentials on any Cacti deployment with guest graph viewing enabled. The vulnerability carries a CVSS v3.1 base score of 9.8 (Critical) and was fixed in version 1.2.31.
Technical details
- Root cause: The
rfilterparameter passed tograph_view.php(at lines 470 and 753) is directly concatenated into an SQLRLIKEclause with no input sanitization or parameterized query handling, constituting an improper neutralization of special elements in an SQL command (CWE-89). - Trigger conditions: Exploitation requires no authentication. Cacti’s graph viewing endpoint supports unauthenticated guest access via the configured guest user account — a configuration present on many internet-facing Cacti deployments.
- Attack vector: Remotely exploitable over the network; no privileges and no user interaction required (AV:N/AC:L/PR:N/UI:N).
- Impact: Successful exploitation grants an attacker full read access to the underlying database, the ability to modify or corrupt database records, and the potential to cause service disruption through resource exhaustion. CVSS impact metrics are rated High across confidentiality, integrity, and availability (C:H/I:H/A:H).
Affected software
- Cacti versions 1.2.30 and prior (all versions up to and including 1.2.30)
Severity
- CVSS v3.1 Base Score: 9.8 (Critical)
- Vector string:
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Mitigation and recommended actions
- Immediate action — upgrade: Update to Cacti 1.2.31 or later. The patch introduces a new
db_qstr_rlike()helper function that limits therfilterinput to 255 characters, strips SQL and regex metacharacters (including|,{,}, and NUL bytes), and applies parameterized quoting viadb_qstr(). - If immediate patching is not possible:
- Disable guest/unauthenticated graph viewing in Cacti’s configuration to eliminate the pre-auth attack surface.
- Restrict access to
graph_view.phpat the network or web server level (e.g., firewall rules, IP allowlisting) to trusted networks only. - Monitor database logs for anomalous
RLIKEquery patterns indicative of injection attempts.
IONIX Status
The IONIX research team is tracking ongoing exploitation attempts and recommends immediate patching. Potentially affected assets are outlined in this post.

