CVE-2026-55854
ŚrednieCVSS 5.9Streszczenie
MariaDB Connector/Node.js przed wersjami 3.2.4, 3.3.3, 3.4.6 i 3.5.3 może ujawnić hasło konta, gdy uwierzytelnianie PAM dialog jest negocjowane przez niezabezpieczony transport. W lib/cmd/handshake/auth/pam-password-auth.js i lib/cmd/handshake/authentication.js, zachowanie SendPamAuthPacketFactory dla pluginu dialog po stronie serwera nie miało zabezpieczenia bezpiecznego transportu zastosowanego do mysql_clear_password. Przy domyślnych ustawieniach sslMode=DISABLE i restrictedAuth=null, wrogi lub on-path serwer może wysłać Authentication Switch Request dla dialog przez zwykłe TCP, powodując, że sterownik zwróci hasło konta w postaci jawnego tekstu. Poprawnie zweryfikowane TLS i lokalny gniazdo Unix zapobiegają tej ścieżce, podczas gdy walidacja tożsamości serwera tylko na podstawie odcisku palca nie jest wystarczająca.
Ocena ryzyka
Ryzyko przechwycenia haseł użytkowników, co może prowadzić do nieautoryzowanego dostępu do bazy danych i naruszenia poufności danych.
Rekomendacja
Zaleca się aktualizację do wersji 3.2.4, 3.3.3, 3.4.6 lub 3.5.3, które zawierają poprawkę, oraz wymuszenie szyfrowania połączeń (TLS) dla klientów bazy danych.
Inne podatności w MariaDB Connector/Node.js
Zobacz wszystkie- CVE-2026-55855Średnie
MariaDB Connector/Node.js przed wersjami 3.2.4, 3.3.3, 3.4.6 i 3.5.3 pozwala na wstrzyknięcie SQL, gdy kontrolowane przez atakującego parametry Buffer są escapowane po stronie klienta przy zestawach znaków big5, gbk, sjis, cp932 lub gb18030. PacketOutputStream.writeBufferEscape w lib/io/packet-output-stream.js escapował bajty bez uwzględnienia logiki charset-aware getMbRecognizer z lib/misc/charset-mb.js. Serwerowy lekser SQL uruchamia my_ismbchar przed przetwarzaniem escapowania, więc kontrolowany bajt może skonsumować wstawiony backslash 0x5C jako bajt wielobajtowy i pozostawić następujący cudzysłów 0x27 nieescapowany, kończąc literał łańcuchowy i pozwalając na dowolne SQL. Domyślny zestaw utf8mb4 i parametry wysyłane przez ścieżkę execute binary prepared-statement nie są podatne.
- CVE-2026-55215Wysokie
MariaDB Connector/Node.js przed wersjami 3.3.3, 3.4.6 i 3.5.3, gdy SSL jest włączony bez przypiętego certyfikatu CA lub serwera, wysyła poświadczenia przed zakończeniem weryfikacji odcisku certyfikatu. Aktywny atakujący typu man-in-the-middle może przechwycić hasło bazy danych.
Oryginalny opis (angielski, źródło NVD)
MariaDB Connector/Node.js is used to connect applications developed on Node.js to MariaDB and MySQL databases. Prior to 3.2.4, 3.3.3, 3.4.6, and 3.5.3, MariaDB Connector/Node.js can disclose an account password when PAM dialog authentication is negotiated over an insecure transport. In lib/cmd/handshake/auth/pam-password-auth.js and lib/cmd/handshake/authentication.js, the SendPamAuthPacketFactory behavior for the server-side plugin dialog lacked the secure-transport gate applied to mysql_clear_password. With the default sslMode=DISABLE and restrictedAuth=null settings, a hostile or on-path server can send an Authentication Switch Request for dialog over plain TCP, causing the connector to return the account password in cleartext. Properly verified TLS and a local Unix socket prevent this path, while fingerprint-only server identity validation is not sufficient. This issue is fixed in versions 3.2.4, 3.3.3, 3.4.6, and 3.5.3.

