CVE-2026-52888
ŚrednieCVSS 6.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 19 - wyżej niż 19% wszystkich znanych CVE
Streszczenie
W NocoBase w wersji 2.0.59 i wcześniejszych, funkcja checkSQL() w pluginie collection-sql nie blokuje dostępu do systemowych tabel katalogowych PostgreSQL, takich jak pg_shadow, pg_roles i pg_stat_activity. Użytkownik z rolą administratora może odczytać hashe haseł i metadane bazy danych poprzez funkcję SQL Collection.
Ocena ryzyka
Ryzyko polega na możliwości wycieku wrażliwych danych uwierzytelniających (hashy haseł) oraz szczegółów konfiguracji bazy danych, co może prowadzić do eskalacji uprawnień lub dalszych ataków na system.
Rekomendacja
Należy niezwłocznie zaktualizować NocoBase do wersji 2.1.0-alpha.46 lub nowszej, która zawiera poprawkę blokującą dostęp do niebezpiecznych tabel systemowych PostgreSQL.
Inne podatności w NocoBase
Zobacz wszystkie- CVE-2026-41641Wysokie
W NocoBase przed wersją 2.0.39 funkcja walidacji checkSQL() nie była stosowana na końcówce sqlCollection:update, co umożliwiało atakującym z uprawnieniami do zarządzania kolekcjami wstrzykiwanie dowolnego SQL i wykradanie danych.
- CVE-2026-52887Krytyczne
Wtyczka @nocobase/plugin-notification-in-app-message w NocoBase przed wersją 2.0.61 zawiera podatność na wstrzykiwanie SQL przez endpoint GET /api/myInAppChannels:list. Parametr filter[latestMsgReceiveTimestamp][$lt] jest bezpośrednio wstawiany do szablonu Sequelize.literal() bez odpowiedniego oczyszczania, co umożliwia uwierzytelnionemu użytkownikowi wykonanie złośliwych zapytań PostgreSQL, w tym potencjalnie poleceń systemowych przez COPY ... TO PROGRAM.
- CVE-2026-34156Krytyczne
NocoBase przed wersją 2.0.28 zawiera podatność w węźle skryptowym Workflow, która pozwala uwierzytelnionemu atakującemu na ucieczkę z piaskownicy Node.js i zdalne wykonanie kodu jako root. Atak wykorzystuje dostęp do obiektu console._stdout i console._stderr w piaskownicy oraz prototypowanie.
- CVE-2026-55410Średnie
Podatność w NocoBase przed wersją 2.1.19 pozwalała na wstrzyknięcie poleceń systemowych podczas przywracania kopii zapasowej PostgreSQL. Atakujący z uprawnieniami do zarządzania kopiami zapasowymi mógł umieścić złośliwą wartość w polu database.schema w pliku _metadata.json, która była następnie interpolowana do polecenia powłoki wykonywanego przez child_process.exec().
- CVE-2026-58468Średnie
NocoBase do wersji 2.1.20 zawiera podatność na fałszowanie żądań po stronie serwera (SSRF) w wrapperze serverRequest. Umożliwia ona uwierzytelnionym administratorom wysyłanie dowolnych wychodzących żądań HTTP poprzez dostarczenie złośliwych adresów URL do węzłów żądań przepływu pracy, przycisków akcji niestandardowych żądań lub wtyczki AI.
- CVE-2026-34825Średnie
NocoBase przed wersją 2.0.30 zawiera podatność we wtyczce plugin-workflow-sql, która podstawia zmienne szablonu bezpośrednio do surowych stringów SQL przez getParsedValue() bez parametryzacji lub escapowania. Każdy użytkownik, który uruchomi workflow zawierający węzeł SQL ze zmiennymi szablonu z danych kontrolowanych przez użytkownika, może wstrzyknąć dowolny SQL.
Oryginalny opis (angielski, źródło NVD)
NocoBase is an AI-powered no-code/low-code platform for building business applications and enterprise solutions. In 2.0.59 and earlier, NocoBase @nocobase/plugin-collection-sql used the checkSQL() function in packages/plugins/@nocobase/plugin-collection-sql/src/server/utils.ts with an incomplete keyword blacklist that did not restrict PostgreSQL system catalog tables such as pg_shadow, pg_roles, and pg_stat_activity, allowing an admin-role user to read password hashes and database metadata through the SQL Collection feature. This vulnerability is fixed in 2.1.0-alpha.46.

