CVE-2026-75839
ŚrednieCVSS 4.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 22 - wyżej niż 22% wszystkich znanych CVE
Streszczenie
ArcadeDB (com.arcadedb:arcadedb-server) w wersjach do 26.7.3 zawiera podatność IDOR w punktach końcowych Raft cluster-info (GetClusterHandler i PostBootstrapStateHandler), które uwierzytelniają, ale nie autoryzują dostępu. W klastrze HA ArcadeDB (dostępnym tylko przy włączonym arcadedb.ha.enabled i załadowanym module ha-raft), każdy uwierzytelniony użytkownik — nawet z dostępem tylko do jednej bazy lub żadnej — może wyliczyć pełny rejestr baz serwera i uzyskać metadane per-baza, takie jak nazwy baz, ostatnie ID transakcji, odciski palców bootstrap i topologię klastra peer/leader, co prowadzi do ujawnienia informacji między bazami. Naprawiono w wersji 26.8.1.
Ocena ryzyka
Ryzyko polega na nieautoryzowanym dostępie do metadanych wszystkich baz danych w klastrze HA, co może ujawnić wrażliwe informacje o strukturze i stanie systemu. Atakujący z minimalnymi uprawnieniami może zbierać dane o bazach i topologii, co może ułatwić dalsze ataki.
Rekomendacja
Zaleca się natychmiastową aktualizację ArcadeDB do wersji 26.8.1 lub nowszej, która zawiera poprawkę. Dodatkowo należy ograniczyć dostęp do punktów końcowych cluster-info tylko do zaufanych użytkowników i sieci.
Inne podatności w ArcadeDB
Zobacz wszystkie- CVE-2026-119576Średnie
ArcadeDB od wersji 21.12.1 przed 26.10.2 zawiera podatność obejścia autoryzacji, która pozwala użytkownikom posiadającym jedynie readRecord zastąpić współdzielony schemat GraphQL poprzez punkt końcowy zapytań tylko do odczytu. Atakujący może wysłać definicję typu GraphQL z spreparowaną dyrektywą @sql do /api/v1/query/{database}, zmieniając wyniki zapytań zwracane innym użytkownikom, w tym administratorom.
- CVE-2026-119575Średnie
ArcadeDB od wersji 26.8.1 przed 26.10.2 zawiera podatność server-side request forgery, która pozwala uwierzytelnionym użytkownikom z uprawnieniem updateDatabaseSettings wyłączyć listę blokowanych adresów IP dla LOAD CSV poprzez ALTER DATABASE. Atakujący może ustawić arcadedb.opencypher.loadCsv.blockedIpRanges na pusty ciąg, a następnie wysyłać żądania LOAD CSV w celu odczytu metadanych chmury oraz wewnętrznych usług loopback lub prywatnych.
- CVE-2026-93594Wysokie
ArcadeDB (com.arcadedb:arcadedb-engine) do 26.8.1 egzekwuje reguły kontroli dostępu per typ/rekord tylko w LocalBucket, opierając się na identyfikatorze pliku. Ścieżki wykonywania zapytań, które docierają do danych przez pliki indeksu LSM lub silnik TimeSeries, nie wywołują tego sprawdzenia, więc uwierzytelniony użytkownik bez uprawnień readRecord/deleteRecord może odczytać wartości kluczy indeksu, identyfikatory rekordów, wartości MAX/MIN, próbki TimeSeries, poznać liczbę rekordów i usuwać wpisy indeksu, co desynchronizuje indeks z danymi. Nazwy indeksów i typów są odkrywalne przez SELECT FROM schema:indexes. Problem dotyczy wdrożeń embedded i serwerowych oraz wszystkich transportów. Naprawiono w 26.9.1.
- CVE-2026-75854Krytyczne
ArcadeDB przed wersją 26.8.1 zawiera podatność braku uwierzytelnienia w pluginie Redis wire-protocol, co pozwala nieuwierzytelnionym atakującym na odczyt, zapis i usuwanie danych. Atakujący mogą łączyć się z portem Redis i wykonywać dowolne polecenia na dowolnej bazie danych bez podawania poświadczeń.
- CVE-2026-75852Krytyczne
ArcadeDB przed wersją 26.8.1 nie egzekwuje uwierzytelniania SASL dla poleceń danych w pluginie MongoDB wire-protocol. Nieuwierzytelnieni atakujący mogą wydawać polecenia insert, find, update, delete i create na dowolnej bazie danych, łącząc się z portem 27017 bez poświadczeń.
- CVE-2026-75851Krytyczne
Serwer ArcadeDB (com.arcadedb:arcadedb-server) w wersjach 26.7.3 i wcześniejszych nie propaguje uwierzytelnionego podmiotu do asynchronicznych wątków roboczych poleceń. Gdy polecenie HTTP jest wysyłane z awaitResponse:false, wykonuje się na asynchronicznym workerze, którego DatabaseContext nie ma powiązanego użytkownika, co powoduje, że brama autoryzacji skryptów staje się nieaktywna. Użytkownik z dostępem tylko do odczytu do jednej bazy danych może wysłać asynchroniczne polecenie JavaScript (language=js) przez endpoint /api/v1/command, aby uruchomić kod z nieograniczonym dostępem do hosta (np. database.getSecurity().createUser) i utworzyć administratora całego serwera, eskalując do pełnej kontroli administracyjnej. Naprawione w wersji 26.8.1.
- CVE-2026-75843Krytyczne
ArcadeDB przed wersją 26.8.1 nie wiąże uwierzytelnionego podmiotu z wątkiem wykonawcy transakcji gRPC w beginTransaction, co pozwala uwierzytelnionym użytkownikom z prawami odczytu na wykonywanie poleceń JavaScript bez kontroli autoryzacji skryptów. Atakujący mogą wykonać executeCommand z identyfikatorem transakcji, aby uruchomić nieograniczony JavaScript tworzący konta administratora całego serwera.
- CVE-2026-67342Krytyczne
ArcadeDB przed wersją 26.7.2 zawiera podatność na ominięcie autoryzacji w handlerach HTTP dla endpointów szeregów czasowych, batch, Prometheus i Grafana. Atakujący może uzyskać dostęp do baz danych i modyfikować je bez odpowiednich uprawnień, wywołując bezpośrednio podatne endpointy z dowolnymi parametrami bazy danych.
- CVE-2026-67341Krytyczne
ArcadeDB przed wersją 26.7.2 nie egzekwuje kontroli autoryzacji skryptów dla instrukcji SQL DEFINE FUNCTION z językiem js. Atakujący z dostępem do bazy danych może wykonać dowolny kod JavaScript, przesyłając instrukcje DEFINE FUNCTION, omijając zabezpieczenia ograniczające skryptowanie do administratorów.
- CVE-2026-44221Krytyczne
ArcadeDB w wersjach od 21.10.1 do 26.4.1 zawiera dwie wady: (1) funkcja ServerSecurityUser.getDatabaseUser() zwraca użytkownika bazy z niezainicjalizowaną mapą dostępu do plików, co powoduje zezwolenie na wszystko; (2) metoda ArcadeDBServer.createDatabase() pomija ustawienie factory.setSecurity(...), przez co nowo utworzona baza danych ma wyłączoną autoryzację na poziomie rekordów. Uwierzytelniony użytkownik lub token API może odczytywać, zapisywać i modyfikować schemat w dowolnej bazie na tym samym serwerze.
Oryginalny opis (angielski, źródło NVD)
ArcadeDB (com.arcadedb:arcadedb-server) versions <= 26.7.3 contain an insecure direct object reference (IDOR) vulnerability in the Raft cluster-info endpoints (GetClusterHandler and PostBootstrapStateHandler), which authenticate but do not authorize access. On an ArcadeDB HA cluster (only reachable when arcadedb.ha.enabled is set and the ha-raft module is loaded), any authenticated user — including one granted access to only one database or none — can enumerate the full server database registry and retrieve per-database metadata such as database names, last transaction IDs, bootstrap fingerprints, and peer/leader cluster topology, resulting in cross-database information disclosure. Fixed in 26.8.1.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

