CVE-2026-6478
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 44 - wyżej niż 44% wszystkich znanych CVE
Streszczenie
Ukryty kanał czasowy (covert timing channel) podczas porównywania haseł haszowanych MD5 w uwierzytelnianiu PostgreSQL pozwala atakującemu na odzyskanie danych uwierzytelniających wystarczających do zalogowania. Nie dotyczy to haseł scram-sha-256, które są domyślne we wszystkich wspieranych wersjach. Jednak istniejące bazy danych mogą zawierać hasła haszowane MD5 pochodzące z aktualizacji z PostgreSQL 13 lub wcześniejszych. Podatne są wersje przed PostgreSQL 18.4, 17.10, 16.14, 15.18 i 14.23.
Ocena ryzyka
Organizacja narażona jest na kradzież danych uwierzytelniających użytkowników, co może prowadzić do nieautoryzowanego dostępu do bazy danych i potencjalnego wycieku danych.
Rekomendacja
Zaktualizuj PostgreSQL do wersji 18.4, 17.10, 16.14, 15.18, 14.23 lub nowszej. Rozważ migrację haseł z MD5 na scram-sha-256.
Inne podatności w PostgreSQL
Zobacz wszystkie- CVE-2017-15098Wysokie
Wersje PostgreSQL 10.x przed 10.1, 9.6.x przed 9.6.6, 9.5.x przed 9.5.10, 9.4.x przed 9.4.15 oraz 9.3.x przed 9.3.20 mają wadliwe wywołania funkcji json_populate_recordset lub jsonb_populate_recordset, co może prowadzić do awarii serwera lub ujawnienia kilku bajtów pamięci serwera.
- CVE-2017-7548Wysokie
Wersje PostgreSQL przed 9.4.13, 9.5.8 i 9.6.4 są podatne na błąd autoryzacji, który pozwala zdalnym, uwierzytelnionym atakującym bez uprawnień do dużego obiektu na nadpisanie całej zawartości obiektu, co prowadzi do odmowy usługi.
- CVE-2017-7547Wysokie
Wersje PostgreSQL przed 9.2.22, 9.3.18, 9.4.13, 9.5.8 i 9.6.4 mają lukę w autoryzacji, która pozwala zdalnym, uwierzytelnionym atakującym na odzyskanie haseł z map użytkowników zdefiniowanych przez właścicieli zdalnych serwerów, bez posiadania odpowiednich uprawnień.
- CVE-2017-7484Wysokie
W niektórych funkcjach estymacji selektywności w PostgreSQL przed wersją 9.2.21, 9.3.x przed 9.3.17, 9.4.x przed 9.4.12, 9.5.x przed 9.5.7 oraz 9.6.x przed 9.6.3 nie sprawdzano uprawnień użytkownika przed udostępnieniem informacji z pg_statistic, co może prowadzić do wycieku danych. Atakujący bez odpowiednich uprawnień mógł wykorzystać tę lukę do kradzieży informacji z tabel, do których normalnie nie miałby dostępu.
- CVE-2016-5424Wysokie
PostgreSQL w wersjach przed 9.1.23, 9.2.x przed 9.2.18, 9.3.x przed 9.3.14, 9.4.x przed 9.4.9 oraz 9.5.x przed 9.5.4 może pozwolić zdalnym uwierzytelnionym użytkownikom z rolą CREATEDB lub CREATEROLE na uzyskanie uprawnień superużytkownika poprzez niewłaściwe przetwarzanie znaków specjalnych w nazwach baz danych lub ról.
- CVE-2016-5423Wysokie
PostgreSQL w wersjach przed 9.1.23, 9.2.x przed 9.2.18, 9.3.x przed 9.3.14, 9.4.x przed 9.4.9 oraz 9.5.x przed 9.5.4 pozwala zdalnym uwierzytelnionym użytkownikom na wywołanie odmowy usługi (dereferencja wskaźnika NULL i awaria serwera), uzyskanie wrażliwych informacji z pamięci lub potencjalne wykonanie dowolnego kodu poprzez (1) wyrażenie CASE w subwyrażeniu wartości testowej innego CASE lub (2) wstawienie funkcji SQL implementującej operator równości używanego w wyrażeniu CASE z wartościami różnych typów.
- CVE-2016-2193Wysokie
PostgreSQL w wersjach przed 9.5.x i 9.5.2 nieprawidłowo utrzymuje status zabezpieczeń wierszy w planach pamięci podręcznej, co może pozwolić atakującym na obejście zamierzonych ograniczeń dostępu.
- CVE-2016-0773Wysokie
PostgreSQL w wersjach przed 9.1.20, 9.2.x przed 9.2.15, 9.3.x przed 9.3.11, 9.4.x przed 9.4.6 oraz 9.5.x przed 9.5.1 jest podatny na ataki zdalne, które mogą prowadzić do odmowy usługi poprzez nieskończoną pętlę lub przepełnienie bufora.
- CVE-2016-0766Wysokie
PostgreSQL w wersjach przed 9.1.20, 9.2.x przed 9.2.15, 9.3.x przed 9.3.11, 9.4.x przed 9.4.6 oraz 9.5.x przed 9.5.1 nie ogranicza prawidłowo dostępu do nieokreślonych ustawień konfiguracyjnych (GUCS) dla PL/Java. To umożliwia atakującym uzyskanie uprawnień za pomocą nieokreślonych wektorów.
- CVE-2024-10976Średnie
W PostgreSQL wykryto niekompletne śledzenie tabel z zabezpieczeniami na poziomie wierszy (row security), co pozwala ponownie używanemu zapytaniu na przeglądanie lub zmianę innych wierszy niż zamierzone. Poprawki z CVE-2023-2455 i CVE-2016-2193 nie obejmują przypadków z podzapytaniami, WITH ani security invoker views.
Oryginalny opis (angielski, źródło NVD)
Covert timing channel in comparison of MD5-hashed password in PostgreSQL authentication allows an attacker to recover user credentials sufficient to authenticate. This does not affect scram-sha-256 passwords, the default in all supported releases. However, current databases may have MD5-hashed passwords originating in upgrades from PostgreSQL 13 or earlier. Versions before PostgreSQL 18.4, 17.10, 16.14, 15.18, and 14.23 are affected.

