CVE-2026-55411
ŚrednieCVSS 6.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 3 — wyżej niż 3% wszystkich znanych CVE
Streszczenie
W ToolJet przed wersją 3.20.1780-lts, uwierzytelniony endpoint POST /api/data-sources/decrypt zwraca odszyfrowany tekst jawny dla dowolnego poświadczenia, którego identyfikator credential_id został podany w treści żądania. W przeciwieństwie do innych endpointów danych, ten handler nie jest chroniony przez ValidateDataSourceGuard, nie odbiera wywołującego @User(), a podstawowa usługa CredentialsService.getValue() wyszukuje poświadczenie wyłącznie po identyfikatorze, bez ograniczenia do organizacji.
Ocena ryzyka
Każdy uwierzytelniony użytkownik dowolnej organizacji może odszyfrować sekrety źródeł danych innej organizacji, podając jej credential_id, co prowadzi do naruszenia poufności między dzierżawcami.
Rekomendacja
Należy niezwłocznie zaktualizować ToolJet do wersji 3.20.1780-lts lub nowszej, która zawiera poprawkę usuwającą tę podatność.
Oryginalny opis (angielski, źródło NVD)
ToolJet is the open-source foundation am AI-native platform for building and deploying internal tools, workflows and AI agents. Prior to 3.20.1780-lts, the authenticated endpoint POST /api/data-sources/decrypt returns the decrypted plaintext for any credential whose credential_id is supplied in the request body. Unlike every neighbouring data-source route, this handler is not protected by ValidateDataSourceGuard, does not receive the calling @User(), and the underlying CredentialsService.getValue() looks the credential up by id only, with no organization scoping. As a result, any authenticated user of any organization can decrypt the data-source secrets of any other organization by supplying that organization's credential_id — a cross-tenant confidentiality breach. This vulnerability is fixed in 3.20.1780-lts.

