CRITICAL🇬🇧 English

CVE-2024-34340

Cacti: Auth Bypass przez type juggling przy weryfikacji hasła MD5

CVSS 9.1v3.1pub. 2024-05-14upd. 2025-11-04

Cacti przed wersją 1.2.27 zawiera podatność typu type juggling w funkcji weryfikacji hasła, umożliwiającą obejście uwierzytelnienia. Błąd wynika z użycia luźnego operatora porównania PHP (`==` zamiast `===`) przy sprawdzaniu skrótu MD5 hasła, co może pozwolić atakującemu na uzyskanie nieautoryzowanego dostępu do systemu.

Pokaż oryginał (EN)

Cacti provides an operational monitoring and fault management framework. Prior to version 1.2.27, Cacti calls `compat_password_hash` when users set their password. `compat_password_hash` use `password_hash` if there is it, else use `md5`. When verifying password, it calls `compat_password_verify`. In `compat_password_verify`, `password_verify` is called if there is it, else use `md5`. `password_verify` and `password_hash` are supported on PHP < 5.5.0, following PHP manual. The vulnerability is in `compat_password_verify`. Md5-hashed user input is compared with correct password in database by `$md5 == $hash`. It is a loose comparison, not `===`. It is a type juggling vulnerability. Version 1.2.27 contains a patch for the issue.

🤖 Analiza AI
Jak działa

W funkcji `compat_password_verify` skrót MD5 wprowadzonego przez użytkownika hasła jest porównywany z hasłem przechowywanym w bazie danych za pomocą luźnego operatora `==` zamiast ścisłego `===`. W PHP luźne porównanie ciągów znaków może prowadzić do nieoczekiwanych wyników, gdy wartości dają się zinterpretować jako liczby zmiennoprzecinkowe (np. ciągi w notacji naukowej typu `0e...` są porównywane jako zero). Atakujący może dostarczyć spreparowane hasło, którego skrót MD5 spełni warunek luźnego porównania z hasłem ofiary. Błąd dotyczy ścieżki weryfikacji używającej MD5, aktywowanej na PHP < 5.5.0.

Skutki

Atakujący zdalny, nieuwierzytelniony może ominąć mechanizm logowania i uzyskać nieautoryzowany dostęp do konta użytkownika lub administratora w aplikacji Cacti, co prowadzi do naruszenia poufności i integralności danych.

Mitygacja

Należy zaktualizować Cacti do wersji 1.2.27 lub nowszej, która zawiera patch eliminujący podatność poprzez zastąpienie luźnego porównania `==` ścisłym `===` w funkcji `compat_password_verify`

Kogo dotyczy

Cacti w wersjach przed 1.2.27 oraz pakiety Cacti dla Fedora i Debian korzystające z podatnych wersji

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
  • Cacti

    APP
    Cacti
    < 1.2.27
  • Fedora Project Fedora

    OS
    Fedoraproject
    39
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
Auth Bypass
CWE
Referencje

Powiązane podatności

CVE-2024-4577CRITICAL9.8⚠ KEVPL ✓ten sam produkt

PHP CGI argument injection – RCE na Windows przez mechanizm Best-Fit

CVE-2024-5274CRITICAL9.6⚠ KEVPL ✓ten sam produkt

Type Confusion w V8 (Google Chrome) — RCE przez spreparowaną stronę HTML

CVE-2024-4947CRITICAL9.6⚠ KEVPL ✓ten sam produkt

Type Confusion w silniku V8 Chrome — zdalne wykonanie kodu (RCE)

CVE-2024-4671CRITICAL9.6⚠ KEVPL ✓ten sam produkt

Use-after-free w Google Chrome Visuals umożliwiający ucieczkę z sandbox

CVE-2023-6345CRITICAL9.6⚠ KEVPL ✓ten sam produkt

Integer overflow w Skia w Google Chrome — sandbox escape