CVE-2026-54076
WysokieCVSS 8.1Streszczenie
W ArcadeDB przed wersją 26.6.1 poprawka CVE-2026-44221 dodała sprawdzenie uprawnień UPDATE_SCHEMA tylko do metody LocalDocumentType.createProperty, pozostawiając pozostałe publiczne mutatory schematu w LocalDocumentType.java i LocalProperty.java bez kontroli. Uwierzytelniona tożsamość, w tym token API tylko do odczytu bez uprawnienia UPDATE_SCHEMA, może przez punkty końcowe HTTP użyć DROP PROPERTY, ALTER TYPE lub ALTER PROPERTY, aby zmieniać nazwy typów, dziedziczenie, aliasy, koszyki, usuwać właściwości i zmieniać ograniczenia właściwości.
Ocena ryzyka
Nieuprawniona modyfikacja schematu może zniekształcić znaczenie przechowywanych rekordów i naruszyć udokumentowany model uprawnień. Podatność nie ujawnia ani nie zapisuje bezpośrednio danych rekordów.
Rekomendacja
Zaktualizuj ArcadeDB do wersji 26.6.1. Ogranicz dostęp do poleceń modyfikujących schemat wyłącznie do zaufanych kont administracyjnych.
Inne podatności w ArcadeDB
Zobacz wszystkie- CVE-2026-65831Wysokie
ArcadeDB przed wersją 26.7.1 pozwala użytkownikowi z rolą czytelnika na wysłanie POST /api/v1/command/{database} z language: js, ponieważ PolyglotQueryEngine.command, analyze i registerFunctions nie egzekwują autoryzacji administratora bazy danych. GraalPolyglotEngine pozwala również obejść whitelistę allowedPackages poprzez odbicie z obiektu bazy danych do dowolnych klas hosta.
- CVE-2026-54077Wysokie
W ArcadeDB przed wersją 26.6.1 instrukcja IMPORT DATABASE nie wymagała uprawnień administracyjnych i przekazywała źródło do modułu importu bez walidacji. Uwierzytelniony użytkownik z dostępem do poleceń SQL przez /api/v1/command lub /api/v1/query może podać adresy HTTP/HTTPS, aby wykonać żądania do usług wewnętrznych, lub ścieżki file://, aby odczytać pliki dostępne dla procesu serwera i zaimportować je jako rekordy. Importer XML umożliwia też przetwarzanie DTD i encji zewnętrznych.
- 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.
- CVE-2026-76225Wysokie
ArcadeDB przed wersją 26.8.1 zawiera podatność na podrabianie żądań po stronie serwera (SSRF) w implementacji OpenCypher LOAD CSV, która nie waliduje adresów URL HTTP/HTTPS. Uwierzytelnieni atakujący mogą tworzyć zapytania LOAD CSV wskazujące na wewnętrzne adresy sieciowe lub punkty końcowe metadanych chmury, aby zmusić serwer ArcadeDB do pobrania i zwrócenia wrażliwych danych z ograniczonych usług.
Oryginalny opis (angielski, źródło NVD)
ArcadeDB is a Multi-Model DBMS. Prior to 26.6.1, the fix for CVE-2026-44221 added an UPDATE_SCHEMA authorization check only to LocalDocumentType.createProperty, while the remaining public schema mutators in engine/src/main/java/com/arcadedb/schema/LocalDocumentType.java and engine/src/main/java/com/arcadedb/schema/LocalProperty.java remained unchecked. An authenticated identity, including a read-only API token without UPDATE_SCHEMA permission, can use DROP PROPERTY, ALTER TYPE, or ALTER PROPERTY through the database command/query HTTP endpoints to rename types, change inheritance, alter aliases or buckets, drop properties, and change property constraints. The issue does not directly disclose or write record data, but unauthorized schema mutation can corrupt the meaning of stored records and breach the documented permission model. This issue is fixed in version 26.6.1.

