
Co znajdziesz w tym artykule?
Wprowadzenie do problemu / definicja
Flowise to otwartoźródłowa platforma służąca do budowy przepływów AI, agentów oraz integracji z modelami językowymi i usługami zewnętrznymi. W centrum najnowszych ostrzeżeń bezpieczeństwa znalazła się podatność CVE-2025-59528, oceniona na 10.0 w skali CVSS, która umożliwia zdalne wykonanie kodu na serwerze aplikacji.
W praktyce oznacza to, że atakujący może przejąć kontrolę nad podatną instancją, uruchamiać polecenia systemowe, uzyskać dostęp do danych i sekretów, a także wykorzystać serwer jako punkt wyjścia do dalszej kompromitacji środowiska.
W skrócie
- Podatność dotyczy platformy Flowise i została oznaczona jako CVE-2025-59528.
- Luka prowadzi do zdalnego wykonania kodu w wyniku niebezpiecznej obsługi danych wejściowych.
- Problem został usunięty w wersji 3.0.6 i nowszych.
- Wektorem ataku jest komponent CustomMCP.
- Do skutecznej eksploatacji wystarcza token API.
- Odnotowano aktywne skanowanie i próby wykorzystania podatności.
- Skala ekspozycji obejmuje ponad 12 tysięcy publicznie dostępnych instancji.
Kontekst / historia
Podatność została publicznie ujawniona we wrześniu 2025 roku wraz z informacją o jej krytycznym charakterze i dostępnej poprawce. W kwietniu 2026 roku pojawiły się jednak sygnały wskazujące, że zagrożenie nie ma już wyłącznie teoretycznego charakteru, lecz jest aktywnie wykorzystywane przeciwko systemom dostępnym z Internetu.
To nie pierwszy poważny problem bezpieczeństwa związany z Flowise. Wcześniej projekt był już łączony z innymi błędami umożliwiającymi m.in. zdalne wykonywanie poleceń systemowych oraz arbitralne przesyłanie plików. Rosnąca liczba incydentów pokazuje, że platformy do orkiestracji AI stają się pełnoprawnym elementem powierzchni ataku i powinny być chronione na poziomie porównywalnym z klasycznymi aplikacjami biznesowymi.
Analiza techniczna
Źródłem problemu jest węzeł CustomMCP, wykorzystywany do konfiguracji połączeń z zewnętrznym serwerem MCP. Mechanizm obsługi parametru mcpServerConfig dopuszczał wykonanie przekazanego wejścia jako kodu JavaScript bez odpowiedniej walidacji i zabezpieczeń.
Łańcuch ataku był stosunkowo prosty. Aplikacja przyjmowała dane przez endpoint API odpowiedzialny za ładowanie węzła CustomMCP, następnie przetwarzała je przez etap podstawiania zmiennych, a finalnie interpretowała ciąg wejściowy w sposób prowadzący do jego wykonania po stronie serwera.
Największym problemem było użycie mechanizmu dynamicznej ewaluacji danych. W rezultacie spreparowana wartość mogła uruchomić dowolny kod JavaScript w kontekście procesu Node.js. To otwierało drogę do wykonania poleceń systemowych, operacji na plikach, odczytu poufnych danych, a nawet utrwalenia obecności napastnika w systemie.
- uruchamianie komend systemowych,
- odczyt i modyfikacja plików,
- eksfiltracja tokenów, kluczy i sekretów aplikacyjnych,
- osadzenie backdoora,
- ruch boczny do innych zasobów infrastruktury.
Szczególnie niebezpieczny jest fakt, że luka była osiągalna zdalnie przez interfejs sieciowy, a do jej wykorzystania wystarczał token API. To oznacza, że pojedynczy przejęty lub niewłaściwie chroniony sekret mógł otworzyć drogę do pełnej kompromitacji środowiska.
Konsekwencje / ryzyko
Ryzyko związane z CVE-2025-59528 należy ocenić jako skrajnie wysokie. Maksymalna nota CVSS znajduje tu pełne uzasadnienie, ponieważ udane wykorzystanie luki może naruszyć poufność, integralność i dostępność systemu jednocześnie.
Dla organizacji korzystających z Flowise w środowiskach produkcyjnych zagrożenie wykracza poza sam serwer aplikacyjny. Platforma często integruje się z bazami danych, usługami SaaS, repozytoriami kodu oraz zewnętrznymi interfejsami API modeli AI. W efekcie atak może prowadzić do wycieku danych klientów, kradzieży poświadczeń, modyfikacji logiki agentów oraz eskalacji incydentu na kolejne systemy.
Dodatkowym czynnikiem zwiększającym ryzyko jest duża liczba publicznie wystawionych instancji. Tak szeroka ekspozycja sprzyja zautomatyzowanemu skanowaniu Internetu i masowym kampaniom opportunistycznym, które uderzają przede wszystkim w słabiej zarządzane wdrożenia.
Rekomendacje
Organizacje używające Flowise powinny potraktować tę podatność priorytetowo i wdrożyć działania naprawcze bez zwłoki. Samo zastosowanie poprawki może jednak nie wystarczyć, jeśli instancja była dostępna publicznie przez dłuższy czas.
- niezwłocznie zaktualizować Flowise do wersji 3.0.6 lub nowszej,
- ograniczyć dostęp do instancji do sieci wewnętrznych, VPN lub zaufanych adresów IP,
- przeprowadzić rotację tokenów API oraz wszystkich sekretów przechowywanych w środowisku,
- przeanalizować logi HTTP, logi aplikacyjne i zdarzenia systemowe pod kątem aktywności związanej z CustomMCP,
- zweryfikować hosty pod kątem nietypowych procesów, zadań harmonogramu, plików tymczasowych i zmian konfiguracyjnych,
- wdrożyć segmentację sieci oraz zasadę najmniejszych uprawnień dla procesu aplikacyjnego,
- monitorować połączenia wychodzące z serwera, zwłaszcza do nieznanych adresów i usług chmurowych,
- objąć Flowise pełnym procesem zarządzania podatnościami i ciągłym monitoringiem bezpieczeństwa.
Z perspektywy operacyjnej warto założyć, że każda publicznie dostępna i niezałatana instancja mogła zostać naruszona. W takim scenariuszu właściwą reakcją powinien być pełny incident response, a nie wyłącznie aktualizacja oprogramowania.
Podsumowanie
CVE-2025-59528 to jeden z najbardziej niebezpiecznych przykładów luki w ekosystemie narzędzi AI, gdzie błąd w obsłudze dynamicznej konfiguracji prowadzi bezpośrednio do zdalnego wykonania kodu. Aktywna eksploatacja oraz tysiące publicznie dostępnych instancji znacząco zwiększają prawdopodobieństwo incydentów.
Dla zespołów bezpieczeństwa priorytetem powinny być szybkie aktualizacje, ograniczenie ekspozycji usług, rotacja sekretów oraz weryfikacja, czy środowisko nie zostało już skompromitowane. Flowise, podobnie jak inne platformy AI, powinno być traktowane jako system wysokiego ryzyka wymagający dojrzałych procesów bezpieczeństwa.