CVE-2026-54349
KrytyczneCVSS 9.8Streszczenie
Chartbrew przed wersją 5.2.1 niebezpiecznie używał kontrolowanych przez atakującego ciągów zamiany JavaScript w podstawianiu zmiennych dashboardu SQL oraz nie escapował backslashy w kontekstach cytowanych dla MySQL i MariaDB. Nieuwierzytelniony użytkownik wysyłający spreparowane wartości filtrów URL do publicznego lub osadzonego wykresu opartego na zapisanym zapytaniu SQL może wstrzyknąć SQL i odczytać, zmodyfikować lub usunąć dane dostępne dla konta bazy danych.
Ocena ryzyka
Wstrzyknięcie SQL może doprowadzić do wycieku, modyfikacji lub usunięcia danych w bazie, do której ma dostęp skonfigurowane konto.
Rekomendacja
Zaktualizuj Chartbrew do wersji 5.2.1 lub nowszej oraz ogranicz publiczny dostęp do wykresów korzystających ze zmiennych URL w zapytaniach SQL.
Inne podatności w Chartbrew
Zobacz wszystkie- CVE-2026-69128Średnie
W Chartbrew 5.2.2 blocklista AI SQL pomijała pokrewne funkcje systemu plików PostgreSQL i nie dopasowywała form identyfikatorów w podwójnych cudzysłowach dla zablokowanych funkcji. Owner lub Admin zespołu używający połączenia PostgreSQL z włączonym AI może spowodować, że wygenerowany SQL użyje nieujętej funkcji lub funkcji w cudzysłowach, omijając denylistę. Wymaga to włączonych funkcji AI i podwyższonych uprawnień w Chartbrew.
- CVE-2026-68933Wysokie
Chartbrew przed wersją 5.2.3 przechowuje hasła publicznych dashboardów w postaci jawnej, przyjmuje je przez parametr zapytania URL i weryfikuje bez skutecznego ograniczania liczby prób. Nieuwierzytelniony atakujący może wielokrotnie zgadywać hasła lub pozyskać je z logów serwera bądź proxy. Podatność dotyczy publicznych dashboardów z włączoną ochroną hasłem.
- CVE-2026-85736Wysokie
Chartbrew przed wersją 5.2.3 przy tworzeniu lub aktualizacji połączenia przechowywał wybrane przez atakującego bezwzględne ścieżki plików SSL i SSH, a następnie przy usuwaniu połączenia przekazywał je do fs.unlink bez ograniczenia ścieżki. Użytkownik z uprawnieniami createOwn i deleteOwn na własnym zespole może zapisać docelową ścieżkę w połączeniu i usunąć połączenie, aby wywołać usunięcie dowolnego pliku, np. /code/.env lub kodu źródłowego.
- CVE-2026-85726Wysokie
Chartbrew przed wersją 5.2.3 wstawiał zmienną MongoDB typu data umieszczoną w cytowanym miejscu zapytania jako nieescapowany ciąg, w przeciwieństwie do bezpiecznie escapowanych gałęzi tekstowej, liczbowej i logicznej. Nieuwierzytelniony użytkownik może wysłać spreparowany filtr URL do publicznego, udostępnialnego lub osadzonego wykresu MongoDB, przerwać cytowany literał i zmienić logikę zapytania, wykorzystując liczbę zwróconych wierszy jako wyrocznię boolowską do wyodrębnienia dowolnego pola z kolekcji.
- CVE-2026-85712Wysokie
Chartbrew przed wersją 5.2.3 w sprawdzaniu uprawnień do współdzielonego projektu ufał kontrolowanemu przez wywołującego team_id i pozwalał gałęzi teamOwner/teamAdmin kontynuować bez potwierdzenia, że docelowy projekt należy do tego zespołu. Uwierzytelniony właściciel lub administrator własnego zespołu może przesłać identyfikator projektu ofiary wraz z własnym team_id, a ścieżka aktualizacji masowo przypisuje pola bez listy dozwolonych, co pozwala przepiąć projekt ofiary do własnego zespołu i uzyskać pełny dostęp.
- CVE-2026-85708Wysokie
W Chartbrew w wersjach przed 5.2.3 tokeny udostępniania i osadzania wykresów były podpisywane kluczem CB_SECRET, który w domyślnych instalacjach Docker Compose mógł mieć znaną wartość. Atakujący znający ten sekret może sfałszować token dla prywatnego wykresu i bez logowania odczytać jego dane, w tym chartData, enumerując kolejne identyfikatory liczbowe.
- CVE-2026-54589Wysokie
W Chartbrew przed 5.2.1 mechanizm kontroli wychodzących adresów URL nie rozpoznawał adresów IPv4 osadzonych w prefiksach NAT64. Uwierzytelniony użytkownik z uprawnieniami do zarządzania połączeniami API mógł podać nazwę hosta lub przekierowanie wskazujące adres NAT64 osadzający prywatny lub link-local adres IPv4, co po translacji przez bramę NAT64 pozwalało na dostęp do wewnętrznych zasobów, w tym metadanych chmury 169.254.169.254.
- CVE-2026-40904Wysokie
W wersji 4.9.0 aplikacji Chartbrew występuje luka, która pozwala atakującym z niskimi uprawnieniami na dostęp do danych z innych projektów w tym samym zespole. Luka ta umożliwia odczyt, wykonanie, tworzenie, aktualizację oraz usuwanie zestawów danych i żądań danych, do których atakujący nie powinien mieć dostępu.
- CVE-2026-40601Wysokie
W wersji 4.9.0 aplikacji Chartbrew występuje luka, która pozwala na dostęp do punktu końcowego POST /api/chart/:chart_id/query bez uwierzytelnienia. Atakujący, znając identyfikator wykresu, może odświeżyć dane i uzyskać dostęp do prywatnych wykresów.
- CVE-2026-40600Wysokie
W wersji 4.9.0 aplikacji Chartbrew, uwierzytelnieni użytkownicy mający dostęp do jednego projektu mogą aktualizować lub usuwać rekord SharePolicy należący do innego projektu. Problem wynika z braku weryfikacji, czy policy_id należy do danego projektu.
Oryginalny opis (angielski, źródło NVD)
Chartbrew is an open-source web application that can connect directly to databases and APIs and use the data to create charts. Prior to 5.2.1, SQL dashboard-variable substitution used attacker-controlled JavaScript replacement strings unsafely across SQL connectors and separately failed to escape backslashes for MySQL and MariaDB quoted contexts. The vulnerable surface is public and embedded dashboard/chart requests that call applyMysqlOrPostgresVariables. An unauthenticated user sends crafted URL filter values to a public or embedded chart backed by a stored SQL query. Replacement-string dollar sequences can alter SQL independently of the database engine, while MySQL and MariaDB backslash handling provides a second quoted-string escape path. The target must expose a public or embedded chart using URL-controlled variables in a SQL query; only the backslash branch is specific to MySQL and MariaDB. Injected SQL can read, modify, or delete data available to the configured database account. This issue is fixed in version 5.2.1.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

