CVE-2023-54366
WysokieCVSS 8.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 20 - wyżej niż 20% wszystkich znanych CVE
Streszczenie
SurrealDB przed wersją 1.0.1 domyślnie ustawia pełne uprawnienia do tabel (SELECT, CREATE, UPDATE, DELETE) zamiast braku uprawnień. Atakujący z dostępem do bazy danych lub nieuwierzytelnieni użytkownicy na publicznie dostępnych instancjach mogą wykonywać nieograniczone operacje na niezabezpieczonych tabelach.
Ocena ryzyka
Nieautoryzowani użytkownicy mogą odczytywać, modyfikować lub usuwać dane w tabelach, do których nie powinni mieć dostępu, co prowadzi do naruszenia poufności i integralności danych.
Rekomendacja
Zaktualizuj SurrealDB do wersji 1.0.1 lub nowszej, która domyślnie ustawia uprawnienia NONE dla tabel.
Inne podatności w SurrealDB
Zobacz wszystkie- CVE-2026-63763Wysokie
Podatność eskalacji uprawnień w SurrealDB przed wersją 2.5.0 i 3.0.0-beta.3. Nieuprzywilejowani użytkownicy mogą tworzyć lub modyfikować pola zawierające futures, funkcje lub domknięcia, które są wykonywane w kontekście uprzywilejowanego użytkownika, co prowadzi do eskalacji uprawnień aż do przejęcia serwera.
- CVE-2026-63762Średnie
SurrealDB przed wersją 2.6.1 (i przed 3.0.0-beta.3) zawiera podatność na odmowę usługi (DoS) w silniku JavaScript. Użytkownik z możliwością wykonywania zapytań może skonstruować duży string i przekazać go do kompilacji, powodując wyłuskanie wskaźnika null i awarię serwera.
- CVE-2026-63761Średnie
SurrealDB przed wersją 3.1.0 po cichu zamienia algorytm ES512 na ES384 podczas konfiguracji dostępu JWT z ALGORITHM ES512. Wynika to z braku wsparcia dla ES512 w crate'cie jsonwebtoken v10.x, co powoduje niedopasowanie krzywych (P-521 vs P-384) i błędy uwierzytelniania. Podatność nie pozwala na fałszowanie tokenów ani naruszenie poufności danych.
- CVE-2026-63760Wysokie
SurrealDB przed wersją 3.1.0 nie egzekwuje skonfigurowanego limitu głębokości rekurencji w parserze wartości i JSON podczas przetwarzania zagnieżdżonych nawiasów klamrowych, kwadratowych lub okrągłych. Nieuwierzytelnieni atakujący mogą wysyłać głęboko zagnieżdżone ładunki JSON do punktu końcowego WebSocket /rpc, aby wyczerpać pamięć serwera i spowodować awarię procesu.
- CVE-2026-63759Średnie
SurrealDB przed wersją 3.1.0 nie egzekwuje limitów głębokości rekurencji w parserze typów. Uwierzytelnieni atakujący mogą wysyłać zapytania z głęboko zagnieżdżonymi adnotacjami typów, co prowadzi do wyczerpania pamięci serwera i awarii.
- CVE-2026-63758Średnie
SurrealDB w wersjach przed 3.1.0 zawiera podatność na obejście autoryzacji w instrukcji KILL, która pozwala uwierzytelnionym użytkownikom bazy danych na kończenie subskrypcji LIVE SELECT innych użytkowników. Atakujący mogą wydawać instrukcje KILL z docelowymi UUID zapytań na żywo, zakłócając subskrypcje danych w czasie rzeczywistym bez weryfikacji własności.
- CVE-2026-63757Wysokie
Podatność w SurrealDB przed wersją 3.1.0. Metoda /rpc sessions HTTP zwraca identyfikatory UUID sesji bez uwierzytelniania i akceptuje dowolne pola sesji bez weryfikacji własności. Nieuwierzytelnieni atakujący mogą wyliczyć UUID sesji i podszyć się pod uwierzytelnione sesje, aby czytać, zapisywać, usuwać dane oraz eskalować uprawnienia.
- CVE-2026-63756Wysokie
Podatność typu time-of-check/time-of-use w SurrealDB przed wersją 3.1.0 w endpointcie HTTP /rpc. Nieuwierzytelnione żądania mogą dziedziczyć stan sesji uwierzytelnionego użytkownika, umożliwiając przejęcie uprawnień.
- CVE-2026-63755Średnie
SurrealDB przed wersją 3.1.0 ocenia klauzule WHERE dostarczone przez użytkownika przed wymuszeniem ograniczeń PERMISSIONS FOR SELECT WHERE. Uwierzytelniony użytkownik może odczytać pełną zawartość dowolnej tabeli w bazie danych, omijając sprawdzanie uprawnień na poziomie tabeli. Podatność ogranicza się do bieżącej bazy danych.
- CVE-2026-63754Średnie
W SurrealDB przed wersją 3.1.0 występuje podatność DoS, gdzie złośliwe zapytania LIVE z klauzulami WHERE powodującymi błędy powodują, że wszystkie operacje CREATE, UPDATE i DELETE na obserwowanej tabeli kończą się niepowodzeniem. Uwierzytelniony użytkownik z uprawnieniami tylko do odczytu może zablokować zapis na tabeli dla każdego użytkownika, w tym roota.
Oryginalny opis (angielski, źródło NVD)
SurrealDB before 1.0.1 sets default table permissions to FULL instead of NONE, allowing SELECT, CREATE, UPDATE, and DELETE operations on tables without explicit permissions. Attackers with database access or unauthenticated users on publicly exposed instances can perform unrestricted operations on unprotected tables within their authorization scope.

