CVE-2026-69253
WysokieCVSS 8.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 48 - wyżej niż 48% wszystkich znanych CVE
Streszczenie
Flowise przed wersją 3.1.3 zawiera podatność na wstrzykiwanie kodu w komponentach AgentAsTool, ChatflowTool i ExecuteFlow, które uruchamiają kod w sandboxie vm2. Wartość baseURL kontrolowana przez użytkownika jest wstawiana bezpośrednio do kodu JavaScript, a jedyną walidacją jest isValidURL, która nie zapobiega przełamaniu ciągu znaków. Uwierzytelniony użytkownik może wstrzyknąć własny kod JavaScript, który może uciec z sandboxa i wykonać dowolny kod na serwerze Flowise.
Ocena ryzyka
Uwierzytelniony użytkownik może wykonać dowolny kod na serwerze Flowise, co może prowadzić do naruszenia poufności, integralności i dostępności systemu.
Rekomendacja
Zaktualizuj Flowise do wersji 3.1.3 lub nowszej, która przekazuje URL jako dane zamiast wstawiać go do kodu i dodaje ściślejszą walidację URL.
Inne podatności w Flowise
Zobacz wszystkie- CVE-2026-52098Krytyczne
Podatność w Flowise 3.1.2 pozwala zdalnemu atakującemu na wykonanie dowolnego kodu poprzez endpoint /api/v1/prediction/<flowId>. Nie podano dodatkowych szczegółów.
- CVE-2026-73602Krytyczne
Flowise przed wersją 3.1.3 zawiera podatność ucieczki z piaskownicy vm2, która pozwala uwierzytelnionym użytkownikom na wykonanie dowolnego kodu poprzez obejście walidacji locale moment.js i załadowanie złośliwych plików JavaScript z magazynu dokumentów.
- CVE-2026-73487Krytyczne
Flowise przed wersją 3.1.3 zawiera podatność obejścia walidatora kodu Python opartego na regex w węzłach CSV i Airtable Agent, która pozwala nieuwierzytelnionym atakującym na wstrzyknięcie złośliwego kodu przez prompt injection.
- CVE-2026-67622Krytyczne
Podatność w Flowise (do wersji 3.1.4) w integracji OpenAI Assistants pozwala uwierzytelnionym atakującym na dostęp do danych uwierzytelniających innych obszarów roboczych poprzez podanie dowolnego UUID poświadczeń bez weryfikacji własności obszaru roboczego.
- CVE-2026-70478Krytyczne
Flowise przed wersją 3.1.3 zawiera podatność w punkcie końcowym POST /api/v1/oauth2-credential/refresh/:credentialId, który jest na liście dozwolonych i nie wymaga uwierzytelnienia. Atakujący ze znajomością ID poświadczenia może odświeżyć token OAuth i uzyskać dostęp do połączonej usługi ofiary oraz wyczerpać limit odświeżania tokenów.
- CVE-2026-70477Krytyczne
Flowise przed wersją 3.1.3 zawiera podatność na wstrzyknięcie promptu w węźle CSV Agent, co pozwala na wykonanie złośliwego skryptu Pythona w środowisku Pyodide bez sandboxa. Atakujący może wykorzystać to do wykonania dowolnego kodu w kontekście konta usługi.
- CVE-2026-70470Krytyczne
Flowise przed wersją 3.1.3 zawiera podatność w walidatorze kodu Python, która pozwala na ominięcie zabezpieczeń za pomocą homoglifów Unicode, umożliwiając wykonanie dowolnego kodu Python w Pyodide oraz pełne wykonanie poleceń systemowych na hoście Flowise.
- CVE-2026-69264Krytyczne
Flowise przed wersją 3.1.3 zawiera podatność w CSVAgent, która pozwala atakującemu na wstrzyknięcie kodu do szablonu Pythona wykonywanego przez Pyodide, co umożliwia wykonanie dowolnych poleceń systemowych na hoście Flowise. Nieuwierzytelnione żądanie do API może wywołać zdalne wykonanie kodu.
- CVE-2026-69263Krytyczne
Flowise to interfejs typu 'przeciągnij i upuść' do budowania spersonalizowanych przepływów dużych modeli językowych. Przed wersją 3.1.3, obejście dla CVE-2025-8943 blokowało flagi -y i --yes w npx, ale plik packages/components/nodes/tools/MCP/core.ts odrzucał tylko PATH, LD_LIBRARY_PATH, DYLD_LIBRARY_PATH i NODE_OPTIONS według dokładnej nazwy zmiennej środowiskowej. Ponieważ npm czyta konfigurację ze zmiennych npm_config_*, ustawienie npm_config_yes=true odtwarzało zachowanie --yes bez użycia zablokowanej flagi, powodując automatyczną instalację i wykonanie nazwanego pakietu przez npx podczas uruchamiania niestandardowego serwera MCP. Ten problem został naprawiony w wersji 3.1.3.
- CVE-2026-69258Krytyczne
Flowise to interfejs typu 'przeciągnij i upuść' do budowania spersonalizowanych przepływów dużych modeli językowych. Przed wersją 3.1.3, nieuwierzytelniony endpoint POST /api/v1/prediction/:id akceptował obiekt overrideConfig i bezwarunkowo rozprzestrzeniał go do wewnętrznych obiektów flowConfig i flowData w plikach packages/server/src/utils/buildChatflow.ts i packages/server/src/utils/index.ts bez sprawdzania apiOverrideStatus. To pozwalało nieuwierzytelnionym atakującym na wstrzykiwanie dowolnych właściwości do kontekstu wykonania przepływu dowolnego publicznego chatflow, nadpisywanie wartości takich jak chatId, sessionId i chatHistory oraz kontrolowanie wartości rozwiązywanych przez zmienne szablonu $flow.* używane przez węzły przepływu. Ten problem został naprawiony w wersji 3.1.3.
Oryginalny opis (angielski, źródło NVD)
Flowise is a drag-and-drop user interface for building customized large language model (LLM) flows. Prior to version 3.1.3, several custom-tool components — AgentAsTool, ChatflowTool, and ExecuteFlow — ran code in the in-process vm2 sandbox. To build that code, they inserted a user-controlled baseURL value straight into the JavaScript source, for example const url = "${baseURL}/..."; . The only check on baseURL was isValidURL , but a valid-looking URL can still contain characters that break out of a code string. An authenticated user could craft a baseURL that passed this check, closed the surrounding string, and injected their own JavaScript into the sandboxed script (code injection, CWE-94). The vm2 sandbox runs in the same Node.js process as Flowise and exposes risky dependencies. As a result, the injected code could escape the sandbox and run arbitrary code on the Flowise server as the Flowise process user. Exploitation only requires an authenticated session. The issue is fixed in version 3.1.3, which passes the URL to the sandbox as data instead of inserting it into code and adds stricter URL validation.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

