Podatności SurrealDB
57 znanych podatności CVE w SurrealDB, przetłumaczonych i ocenionych.
- 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.
- CVE-2026-63753Średnie
Podatność w SurrealDB przed wersją 3.1.0. Nie odświeżanie stanu uwierzytelnienia w subskrypcjach LIVE SELECT po zmianie sesji. Atakujący mogą nadal otrzymywać powiadomienia w czasie rzeczywistym po wygaśnięciu lub odwołaniu sesji.
- CVE-2026-63752Średnie
SurrealDB przed wersją 3.1.0 zawiera podatność na obejście autoryzacji w instrukcji RELATE. Uwierzytelnieni użytkownicy z uprawnieniem CREATE mogą nadpisywać istniejące rekordy krawędzi bez wymaganego uprawnienia UPDATE, używając klauzuli SET id wskazującej na istniejący identyfikator krawędzi.
- CVE-2026-63751Średnie
SurrealDB przed wersją 3.1.0 zawiera podatność na obejście uprawnień na poziomie pól w operacjach JSON Patch. Uwierzytelnieni użytkownicy mogą odczytywać chronione pola, używając UPDATE PATCH z pustym wskaźnikiem from w operacjach kopiowania lub przenoszenia, co powoduje zduplikowanie wszystkich pól rekordu, w tym tych chronionych przez uprawnienia SELECT na poziomie pól.
- CVE-2026-63750Średnie
W SurrealDB przed wersją 3.1.0 limit SURREAL_WEBSOCKET_MAX_MESSAGE_SIZE nie jest stosowany do anonimowych połączeń WebSocket /sql. Atakujący mogą przesyłać ramki większe niż skonfigurowany limit przez wiele równoczesnych połączeń, co prowadzi do nadmiernego zużycia pamięci i degradacji dostępności /sql.
- CVE-2026-63749Średnie
SurrealDB przed wersją 3.1.0 zawiera podatność umożliwiającą ominięcie uwierzytelnienia w subskrypcjach LIVE SELECT. Wyrażenia uprawnień odnoszące się do $value, $before, $after lub $event są oceniane względem powiązań kontrolowanych przez atakującego, a nie rzeczywistych dokumentów. Uwierzytelnieni subskrybenci mogą rejestrować zapytania LIVE SELECT, aby otrzymywać powiadomienia o rekordach, które powinny być ukryte.
- CVE-2026-63748Średnie
SurrealDB przed wersją 3.1.0 ujawnia wartości pól ukrytych przez uprawnienia SELECT na poziomie pola poprzez komunikaty błędów. Atakujący z dostępem UPDATE mogą wywołać operacje arytmetyczne na ukrytych polach, co powoduje wyciek wartości w odpowiedziach błędów.
- CVE-2026-63747Wysokie
Podatność na odmowę usługi w SurrealDB przed wersją 3.1.0, występująca w handlerze RPC, który panikuje, gdy baza danych jest ustawiona bez przestrzeni nazw. Nieuwierzytelnieni atakujący mogą wysłać zniekształconą wiadomość WebSocket do punktu końcowego /rpc, powodując crash serwera.
- CVE-2026-63746Średnie
SurrealDB w wersjach przed 3.1.0 nie egzekwuje uprawnień SELECT na tabelach podczas nawigowania po krawędziach grafu lub referencjach zwrotnych. Uwierzytelnieni użytkownicy mogą odczytywać rekordy z dowolnej tabeli osiągalnej przez krawędzie grafu, niezależnie od klauzuli PERMISSIONS FOR select w tabeli docelowej.
- CVE-2026-63745Średnie
SurrealDB przed wersją 3.1.0 zawiera podatność na obejście autoryzacji, umożliwiającą uwierzytelnionym użytkownikom fałszowanie wartości pól identyfikatora rekordu poprzez zapis do edytowalnych pól treści. Atakujący mogą ominąć reguły dostępu oparte na składnikach identyfikatora, takich jak izolacja dzierżawcy, ustawiając pola o tej samej nazwie na sfałszowane wartości, które kontrole uprawnień błędnie odczytują zamiast niezmiennego klucza identyfikatora.
- CVE-2026-63744Średnie
SurrealDB przed wersją 3.1.5 zawiera podatność na fałszowanie żądań po stronie serwera (SSRF) w mechanizmie pobierania JWKS. Mechanizm ten podąża za przekierowaniami HTTP bez ponownej weryfikacji docelowego adresu względem dozwolonych sieci. Atakujący z rolą Owner może skonfigurować adres URL JWKS wskazujący na dozwolony host, który przekierowuje do zablokowanych adresów wewnętrznych, omijając kontrolę dostępu do sieci.
- CVE-2026-63743Średnie
SurrealDB przed wersją 3.1.0 zawiera podatność na obejście ograniczeń w obsłudze przekierowań HTTP, umożliwiającą uwierzytelnionym użytkownikom ominięcie reguł --deny-net ograniczonych do portów. Atakujący mogą połączyć przekierowanie HTTP z dozwolonej nazwy hosta na zabronioną kombinację host:port, a przekierowanie jest realizowane, ponieważ informacje o porcie są pomijane podczas oceny polityki przekierowań.
- CVE-2026-63742Średnie
SurrealDB przed wersją 3.1.0 zawiera podatność umożliwiającą ominięcie ograniczeń SELECT na poziomie pola w szybkich ścieżkach COUNT dla indeksowanych pól. Atakujący mogą wykonywać zapytania COUNT na indeksowanych polach z ograniczeniami SELECT na poziomie pola, aby potwierdzić lub odzyskać wartości ograniczonych pól poprzez wielokrotne zgadywanie.
- CVE-2026-63741Średnie
Podatność w SurrealDB przed wersją 3.1.0. System nie weryfikuje uprawnień DEFINE NAMESPACE ani DEFINE DATABASE podczas przetwarzania instrukcji USE NS i USE DB. Nieuwierzytelnieni atakujący mogą tworzyć dowolne przestrzenie nazw i bazy danych, omijając kontrole autoryzacji.
- CVE-2026-63740Średnie
SurrealDB przed wersją 3.1.4 nie egzekwuje poprawnie uprawnień SELECT na elementach tablicy (field.*) dla użytkowników rekordów. Atakujący z dostępem do zakresu rekordu może odczytać elementy tablicy, które powinny być ukryte na poziomie uprawnień.
- CVE-2026-63739Wysokie
Podatność w SurrealDB przed wersją 3.1.5, w filtrze DEFINE ANALYZER mapper, umożliwia odczyt dowolnych plików. Użytkownicy z rolami EDITOR lub OWNER mogą odczytać pliki dostępne dla procesu SurrealDB, podając ścieżki w filtrze i uzyskując treść plików w komunikatach błędów, gdy SURREAL_FILE_ALLOWLIST jest pusty lub nieskonfigurowany.
- CVE-2026-63738Średnie
SurrealDB w wersjach od 3.1.0 do 3.1.5 nie egzekwuje uprawnień SELECT na poziomie pola przy dostępie przez nawigację po krawędziach grafu. Atakujący z dostępem SELECT na poziomie tabeli mogą odczytać ukryte pola poprzez materializację rekordów przez nawigację grafową.
- CVE-2026-63737Średnie
Podatność w SurrealDB przed wersją 3.1.5 umożliwia uwierzytelnionym użytkownikom przeprowadzenie ataku typu odmowa usługi (DoS) poprzez wysłanie zapytań z długimi łańcuchami operatorów. Powoduje to przepełnienie stosu podczas przetwarzania zapytania i awarię serwera.
- CVE-2026-63736Średnie
SurrealDB przed wersją 3.2.0 zawiera podatność na fałszowanie żądań po stronie serwera (SSRF) w mechanizmie pobierania JWKS. Walidacja sprawdza tylko nazwę hosta w URL, a nie rozpoznane adresy IP, co pozwala atakującemu z rolą Owner na kierowanie żądań do adresów wewnętrznych.
- CVE-2026-63735Wysokie
Podatność w SurrealDB przed wersją 3.2.0 pozwala uwierzytelnionym użytkownikom na dostęp do niestandardowych endpointów API w innych przestrzeniach nazw/bazach danych, co może prowadzić do odczytu wrażliwych danych lub nieautoryzowanych operacji.
- CVE-2026-63734Średnie
Podatność DoS w SurrealDB przed wersją 3.2.0. Parser nagłówków SurrealML nie sprawdza poprawności danych wejściowych, co pozwala uwierzytelnionym użytkownikom z rolą Owner na przesłanie złośliwego pliku .surml do endpointu /ml/import. Nieprawidłowe wartości (np. nienumeryczne input-dimensions) powodują panic i zatrzymanie całego serwera.
- CVE-2026-63733Średnie
SurrealDB przed wersją 3.2.0 zawiera podatność na obejście uprawnień, gdzie instrukcje modyfikujące dane w klauzulach PERMISSIONS są wykonywane bez wymuszania kontroli dostępu. Atakujący z uprawnieniami do wykonania chronionej operacji może zapisywać do tabel, do których nie ma uprawnień, osadzając instrukcje CREATE, UPDATE, DELETE lub UPSERT w klauzuli PERMISSIONS, co prowadzi do niezamierzonych zapisów i uszkodzenia danych.
- CVE-2025-71398Wysokie
SurrealDB przed wersją 2.2.2 nie waliduje przekierowań HTTP w funkcjach http, co pozwala uwierzytelnionym użytkownikom ominąć ograniczenia deny-net poprzez przekierowanie na zablokowane adresy IP. Atakujący może hostować publiczny serwer przekierowujący do wewnętrznych zasobów.
- CVE-2025-71397Średnie
Podatność w SurrealDB przed wersjami 2.0.5, 2.1.5 i 2.2.2. Uwierzytelnieni użytkownicy z uprawnieniami OWNER lub EDITOR mogą zdefiniować funkcje bazy danych z zagnieżdżonymi pętlami FOR, co może doprowadzić do wyczerpania CPU i unieruchomienia serwera.
- CVE-2025-71396Średnie
SurrealDB przed wersją 2.0.5, 2.1.x przed 2.1.5 i 2.2.x przed 2.2.2 nie wymusza domyślnego limitu czasu wykonania dla osadzonych funkcji JavaScript, gdy skryptowanie jest jawnie włączone. Uwierzytelniony atakujący może wysyłać długotrwałe funkcje JavaScript, wyczerpując zasoby serwera i powodując odmowę usługi. Skryptowanie jest domyślnie wyłączone.
- CVE-2025-71395Średnie
Podatność wyczerpania pamięci w SurrealDB przed wersją 2.2.2 w funkcji string::replace, która nie ogranicza długości wynikowego ciągu przy użyciu wzorców regex. Uwierzytelniony atakujący może wysłać złośliwe zapytanie, powodując wyczerpanie pamięci serwera i odmowę usługi.
- CVE-2025-71394Średnie
Podatność w SurrealDB przed wersją 2.2.2 w instrukcji DEFINE ANALYZER umożliwia uwierzytelnionym użytkownikom odczyt dowolnych plików lokalnych. Atakujący z uprawnieniami root, namespace lub database mogą wskazać analizatory na dowolne ścieżki plików i wyodrębnić zawartość plików dwukolumnowych z separatorem tabulacji.
- CVE-2025-71393Średnie
SurrealDB przed wersją 2.2.2 z włączonym skryptowaniem nieprawidłowo egzekwuje limity rekurencji, gdy funkcje natywne zawierają osadzony JavaScript wykonujący nowe zapytania. Uwierzytelnieni atakujący mogą ominąć limit rekurencji poprzez łączenie wywołań funkcji natywnych i JavaScript, wywołując nieskończoną rekurencję i wyczerpując pamięć serwera.
- CVE-2025-71392Wysokie
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.
- CVE-2025-71391Średnie
SurrealDB przed wersją 2.2.2 zawiera podatność na nieobsłużony wyjątek w module sieciowym, która pozwala uwierzytelnionym użytkownikom na awarię bazy danych. Atakujący mogą wysyłać spreparowane zapytania HTTP zawierające bajty null do punktu końcowego /sql, powodując nieobsłużony wyjątek, który crashuje instancję SurrealDB i wszystkie zależne aplikacje.
- CVE-2025-71390Wysokie
SurrealDB przed wersjami 2.2.6, 2.3.6, 2.1.8 oraz 3.0.0-alpha.7 nie waliduje nazw hostów rozpoznanych przez DNS względem ograniczeń deny-net w funkcjach http::*. Uwierzytelniony użytkownik może użyć nazwy hosta, która rozwiązuje się na zablokowany adres IP, omijając kontrolę dostępu.
- CVE-2024-58370Średnie
SurrealDB przed wersją 1.1.0 nie egzekwuje limitów głębokości rekurencji podczas parsowania zagnieżdżonych instrukcji SurrealQL, takich jak IF, RELATE i wyrażenia dostępu do atrybutów. Autoryzowany atakujący może wysłać zapytanie z nadmierną głębokością zagnieżdżenia, powodując przepełnienie stosu i awarię serwera.
- CVE-2024-58369Średnie
SurrealDB przed wersją 1.1.1 nieprawidłowo waliduje wywołania niestandardowych parametrów i funkcji na poziomie głównym lub przestrzeni nazw, powodując panikę serwera. Autoryzowani klienci mogą wywoływać te encje na nieobsługiwanych poziomach, aby doprowadzić do awarii serwera SurrealDB, skutkującej odmową usługi.
- CVE-2024-58368Wysokie
Podatność w SurrealDB przed wersją 1.1.0. Nieprawidłowe parsowanie nagłówków ID, DB i NS w żądaniach HTTP REST API zawierających znaki specjalne. Nieuwierzytelniony atakujący może wysłać spreparowane żądanie HTTP z nieprawidłowymi wartościami nagłówków, powodując nieobsłużony wyjątek i crash serwera.
- CVE-2024-58367Średnie
Podatność w SurrealDB przed wersją 2.0.4. Uprawnienia do pól nie są egzekwowane podczas operacji SELECT, UPDATE i DELETE. Uwierzytelniony użytkownik może uzyskać dostęp do wartości pól, do których nie ma uprawnień, używając technik takich jak SELECT VALUE, aliasowanie pól, funkcje, klauzula WHERE, RETURN BEFORE i SET.
- CVE-2024-58366Wysokie
SurrealDB przed wersją 1.1.1 zawiera podatność na atak format string w funkcji Exception::throw_type biblioteki rquickjs, gdy skrypty są włączone. Atakujący z uprawnieniami do skryptów może dostarczyć sekwencje format string w danych wejściowych błędów.
- CVE-2024-58365Średnie
SurrealDB przed wersją 1.2.0 zawiera podatność na nieobsłużony wyjątek w executorze zapytań podczas przetwarzania wywołań nieistniejących wbudowanych funkcji. Autoryzowani klienci mogą przygotować wstępnie sparsowane zapytania wywołujące nieistniejące funkcje, aby wywołać panikę i doprowadzić do awarii serwera.
- CVE-2024-58364Średnie
SurrealDB przed wersją 1.2.1 zawiera podatność na nieobsłużony wyjątek w renderowaniu zakresów (span rendering) podczas parsowania zapytań z błędami na znakach końca linii. Autoryzowani klienci mogą wysłać nieprawidłowe zapytanie, które powoduje panikę i awarię serwera.
- CVE-2024-58363Średnie
SurrealDB przed wersją 1.5.4 nieprawidłowo weryfikuje uwierzytelnianie, gdy użytkownik zakresu przełącza bazy danych za pomocą klauzuli USE lub metody use. Atakujący z uwierzytelnioną sesją mogą podszyć się pod niezwiązanego użytkownika w innej bazie danych, jeśli istnieje rekord użytkownika z identycznym identyfikatorem, co umożliwia nieautoryzowane działania, jeśli uprawnienia polegają wyłącznie na parametrze $auth.
- CVE-2024-58362Wysokie
Podatność w SurrealDB przed wersją 1.5.5 (oraz 2.0.0-beta przed 2.0.0-beta.3) w API RPC. Nieuwierzytelniony atakujący może dostarczyć binarny obiekt z podzapytaniem w miejsce danych uwierzytelniających, co prowadzi do wykonania podzapytania w kontekście właściciela bazy danych z rolą edytora.
- CVE-2024-58361Średnie
SurrealDB przed wersją 2.0.4 zawiera podatność na nieobsłużony wyjątek w kodzie renderowania błędów parsera podczas przetwarzania pustych ciągów znaków. Autoryzowani klienci mogą wykonać nieprawidłowo sformułowane zapytania z konwersją pustych ciągów na typy record, duration lub datetime, co powoduje panikę w renderowaniu błędów i awarię serwera.

