CVE-2023-5869
WysokieCVSS 8.8Prawdopodobieństwo exploitacji (EPSS)
Bardzo wysokie ryzykoPercentyl 91 - wyżej niż 91% wszystkich znanych CVE
Streszczenie
W PostgreSQL wykryto lukę, która pozwala uwierzytelnionym użytkownikom bazy danych na wykonanie dowolnego kodu poprzez brak sprawdzenia przepełnienia podczas modyfikacji wartości tablicy SQL. Luka wynika z przepełnienia liczb całkowitych podczas modyfikacji tablicy, które może być wywołane przez zdalnego użytkownika dostarczającego specjalnie spreparowane dane.
Ocena ryzyka
Organizacja korzystająca z PostgreSQL może być narażona na wykonanie dowolnego kodu przez uwierzytelnionego użytkownika, co może prowadzić do zapisu dowolnych bajtów w pamięci i odczytu pamięci serwera.
Rekomendacja
Zaktualizuj PostgreSQL do najnowszej wersji zawierającej poprawkę. Ogranicz dostęp do bazy danych tylko do zaufanych użytkowników.
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)
A flaw was found in PostgreSQL that allows authenticated database users to execute arbitrary code through missing overflow checks during SQL array value modification. This issue exists due to an integer overflow during array modification where a remote user can trigger the overflow by providing specially crafted data. This enables the execution of arbitrary code on the target system, allowing users to write arbitrary bytes to memory and extensively read the server's memory.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

