CRITICAL🇬🇧 English

CVE-2026-39948

Cacti: Pre-auth SQL injection przez parametr rfilter (SQLi)

CVSS 9.3v4.0pub. 2026-06-24upd. 2026-06-26

W Cacti w wersjach 1.2.30 i wcześniejszych parametr rfilter nie jest odpowiednio walidowany, co umożliwia nieuwierzytelnionemu atakującemu wstrzyknięcie dowolnego kodu SQL. Podatność jest szczególnie groźna, ponieważ punkt wejścia jest dostępny bez uwierzytelnienia na instalacjach z włączonym gościnnym przeglądaniem wykresów.

Pokaż oryginał (EN)

Cacti is an open source performance and fault management framework. In versions 1.2.30 and prior, the rfilter request parameter is retrieved via the raw accessor grv() (rather than gfrv() with FILTER_VALIDATE_IS_REGEX validation) and concatenated directly into RLIKE SQL clauses in lib/html_graph.php and lib/html_tree.php, which are reachable pre-authentication through graph_view.php on installations with guest graph viewing enabled. Because the unbalanced-quote payload bypasses the regex validation that would otherwise reject it, an unauthenticated attacker can inject arbitrary SQL to compromise the confidentiality, integrity, and availability of the database. This advisory is similar to GHSA-69gg-mjfm-jjpc. This issue has been fixed in version 1.2.31.

🤖 Analiza AI
Jak działa

Parametr żądania rfilter jest pobierany przez niefiltrujący akcesor grv() zamiast gfrv() z walidacją FILTER_VALIDATE_IS_REGEX. Wartość parametru jest następnie bezpośrednio konkatenowana do klauzul SQL RLIKE w plikach lib/html_graph.php oraz lib/html_tree.php. Payload z niezbalansowanym cudzysłowem omija walidację wyrażeń regularnych, która normalnie odrzuciłaby złośliwe dane wejściowe. Atak jest możliwy do przeprowadzenia bez uwierzytelnienia poprzez endpoint graph_view.php.

Skutki

Nieuwierzytelniony atakujący może wstrzyknąć dowolny kod SQL, prowadząc do naruszenia poufności i integralności danych bazy danych oraz potencjalnego przejęcia kontroli nad wrażliwymi informacjami przechowywanymi przez aplikację.

Mitygacja

Należy zaktualizować Cacti do wersji 1.2.31, w której podatność została naprawiona. Jako obejście tymczasowe można rozważyć wyłączenie opcji gościnnego przeglądania wykresów, aby ograniczyć dostęp pre-authentication do podatnego endpointu.

Kogo dotyczy

Cacti w wersji 1.2.30 i wcześniejszych, na instalacjach z włączoną opcją gościnnego przeglądania wykresów (guest graph viewing).

Uwagi

Podatność jest podobna do wcześniej zgłoszonego problemu GHSA-69gg-mjfm-jjpc. Poprawka dostępna w commicie 136ae6ef0715e77bca69c0eb60781f5e17df0795 w repozytorium GitHub projektu Cacti.

CVSS Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
  • Cacti

    APP
    Cacti
    < 1.2.31
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
Auth BypassSQLi
CWE
Referencje

Powiązane podatności

CVE-2022-46169CRITICAL9.8⚠ KEVten sam produkt

Cacti is an open source platform which provides a robust and extensible operational monitoring and fault manag...

CVE-2026-39938CRITICAL9.8PL ✓ten sam produkt

Niezautoryzowany path traversal i command injection w Cacti (LFI)

CVE-2026-39955CRITICAL9.8PL ✓ten sam produkt

SQL Injection przed uwierzytelnieniem w Cacti (graph_view.php)

CVE-2026-39893CRITICAL9.8PL ✓ten sam produkt

SQL Injection w Cacti — atak bez uwierzytelnienia przez parametr rfilter

CVE-2025-22604CRITICAL9.1PL ✓ten sam produkt

Cacti: Command Injection przez malformowane OID w parserze SNMP

CVE-2026-39948 — Cacti: Pre-auth SQL injection przez parametr rfilter (SQLi) — CRITICAL 9.3 | CVEbaza.pl