CVE-2025-71392
WysokieCVSS 8.0Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 16 - wyżej niż 16% wszystkich znanych CVE
Streszczenie
Podatność w SurrealDB przed wersjami 2.0.5, 2.1.5 i 2.2.2 pozwala na wstrzyknięcie SurrealQL poprzez nieprawidłowe escapowanie nazw tabel i pól w eksporcie CLI. Uwierzytelniony użytkownik systemowy z rolą OWNER lub EDITOR może utworzyć tabelę lub pole o złośliwej nazwie, która po zaimportowaniu kopii zapasowej przez uprzywilejowanego użytkownika wykonuje wstrzyknięty kod, prowadząc do eskalacji uprawnień i przejęcia instancji SurrealDB.
Ocena ryzyka
Organizacja narażona jest na eskalację uprawnień i całkowite przejęcie instancji SurrealDB przez atakującego z rolą OWNER lub EDITOR. Aplikacje pozwalające użytkownikom na definiowanie własnych tabel lub pól są dodatkowo podatne na uniwersalne wstrzyknięcie SurrealQL drugiego rzędu, nawet przy sanityzacji parametrów zapytań.
Rekomendacja
Niezwłocznie zaktualizuj SurrealDB do wersji 2.0.5, 2.1.5 lub 2.2.2 w zależności od używanej gałęzi. Ogranicz przyznawanie ról OWNER i EDITOR oraz unikaj umożliwiania użytkownikom definiowania własnych nazw tabel i pól.
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 2.0.5, 2.1.x before 2.1.5, and 2.2.x before 2.2.2 fails to properly escape table and field names in the command-line export command. An authenticated System User with OWNER or EDITOR roles can create tables or fields with malicious names containing SurrealQL. When a higher-privileged user subsequently imports the exported backup, the injected SurrealQL executes, enabling privilege escalation and root-level takeover of the SurrealDB instance. Applications that let users define custom tables or fields are also exposed to a universal second-order SurrealQL injection even when query parameters are sanitized.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

