
Co znajdziesz w tym artykule?
Wprowadzenie do problemu / definicja
W świecie narzędzi opartych na sztucznej inteligencji rośnie liczba incydentów wynikających nie tylko z klasycznych błędów programistycznych, ale również z niebezpiecznych założeń projektowych. Taki charakter ma podatność CVE-2026-40933 w platformie Flowise, popularnym rozwiązaniu open source do budowy przepływów LLM i agentów AI.
Problem dotyczy zdalnego wykonania kodu (RCE) i może zostać wykorzystany poprzez import spreparowanego pliku chatflow. Publiczne udostępnienie kodu proof-of-concept dodatkowo zwiększa ryzyko, ponieważ ułatwia odtworzenie scenariusza ataku także mniej zaawansowanym technicznie napastnikom.
W skrócie
Podatność oznaczona jako CVE-2026-40933 otrzymała ocenę krytyczną i dotyczy mechanizmu integracji MCP w Flowise. Luka pozwala na uruchomienie dowolnych poleceń systemowych na serwerze po zaimportowaniu złośliwego chatflow zawierającego odpowiednio przygotowaną konfigurację.
- Zagrożone są przede wszystkim instancje self-hosted.
- Atak może zostać uruchomiony poprzez import złośliwego pliku JSON.
- Wektor wykorzystuje obsługę MCP w trybie stdio.
- Publiczny kod exploitacji zwiększa prawdopodobieństwo masowych prób nadużyć.
- Według dostępnych informacji Flowise Cloud nie jest objęte tym samym scenariuszem ataku.
Kontekst / historia
Luka została ujawniona w szerszym kontekście problemów bezpieczeństwa związanych z ekosystemami AI korzystającymi z protokołu MCP. Flowise znalazł się w grupie produktów narażonych na tę klasę błędów ze względu na sposób obsługi niestandardowych narzędzi oraz serializacji poleceń wykonywanych przez adapter stdio.
Rosnąca popularność Flowise jako platformy do wizualnego budowania przepływów dla modeli językowych sprawia, że produkt staje się atrakcyjnym celem dla cyberprzestępców. Dodatkowym czynnikiem ryzyka jest publiczna dostępność technicznych szczegółów oraz kodu PoC, co skraca czas potrzebny na przygotowanie skutecznej kampanii ofensywnej.
Analiza techniczna
Istota podatności sprowadza się do niebezpiecznej obsługi konfiguracji MCP w trybie stdio. W podatnych wersjach Flowise wcześniejszych niż 3.1.0 możliwe było dodanie komponentu MCP i zdefiniowanie polecenia systemowego, które następnie mogło zostać wykonane przez host obsługujący aplikację.
Scenariusz ataku wykorzystuje legalną funkcjonalność programu. Napastnik przygotowuje złośliwy chatflow z osadzonym niestandardowym narzędziem MCP, eksportuje go do formatu JSON i przekazuje ofierze. Po imporcie backend podejmuje próbę enumeracji dostępnych akcji narzędzia. Jeżeli wykorzystywany jest transport stdio, ten etap może doprowadzić do uruchomienia wcześniej zdefiniowanej komendy systemowej.
To oznacza, że wykonanie złośliwego kodu nie musi następować dopiero po ręcznym uruchomieniu przepływu. W praktyce zagrożenie może materializować się już podczas importu lub otwarcia konfiguracji, co znacząco zwiększa skuteczność ataku i utrudnia użytkownikowi rozpoznanie momentu kompromitacji.
Publicznie dostępny kod PoC pokazuje możliwość uzyskania powłoki systemowej. W środowiskach kontenerowych skutki mogą być szczególnie dotkliwe, zwłaszcza gdy proces Flowise działa z szerokimi uprawnieniami lub jako root wewnątrz kontenera.
Konsekwencje / ryzyko
Najpoważniejszą konsekwencją jest możliwość wykonania dowolnego kodu z uprawnieniami procesu Flowise. To z kolei może prowadzić do pełnego przejęcia aplikacji, odczytu sekretów, kradzieży tokenów API, dostępu do baz danych oraz wykorzystania integracji z usługami chmurowymi i systemami biznesowymi.
Skala ryzyka jest wysoka, ponieważ atak może zostać ukryty w pozornie legalnym pliku importu i wykorzystuje natywne funkcje aplikacji. Dla zespołów bezpieczeństwa oznacza to większą trudność w detekcji oraz konieczność analizy zdarzeń, które na pierwszy rzut oka mogą wyglądać jak normalna aktywność administracyjna.
- możliwość przejęcia serwera aplikacyjnego,
- ekspozycja kluczy API i danych uwierzytelniających,
- dostęp do połączonych baz danych i usług zewnętrznych,
- ryzyko ruchu bocznego w infrastrukturze organizacji,
- zwiększone prawdopodobieństwo automatyzacji ataków po publikacji PoC.
W wielu środowiskach produkcyjnych Flowise pełni rolę warstwy orkiestracyjnej pomiędzy modelami AI, źródłami danych, API i zasobami chmurowymi. Z tego względu skuteczna eksploatacja może wywołać konsekwencje wykraczające daleko poza samą aplikację.
Rekomendacje
Organizacje korzystające z Flowise w modelu self-hosted powinny potraktować tę podatność jako priorytet krytyczny. Najważniejszym krokiem jest niezwłoczne usunięcie podatnych wersji oraz ograniczenie powierzchni ataku związanej z mechanizmem MCP.
- zaktualizować Flowise do wersji 3.1.0 lub nowszej,
- wyłączyć albo ograniczyć obsługę stdio MCP tam, gdzie nie jest niezbędna,
- zablokować import chatflow z niezweryfikowanych źródeł,
- ograniczyć liczbę użytkowników mogących tworzyć i edytować przepływy,
- stosować zasadę najmniejszych uprawnień dla procesu Flowise,
- unikać uruchamiania aplikacji z uprawnieniami root,
- odseparować aplikację od wrażliwych zasobów poprzez segmentację sieci,
- monitorować logi pod kątem nietypowych importów i uruchomień procesów potomnych,
- przeprowadzić rotację sekretów i poświadczeń w razie podejrzenia kompromitacji,
- wdrożyć dodatkowe zabezpieczenia kontenerowe, takie jak seccomp, AppArmor, SELinux oraz ograniczenia capabilities.
Z perspektywy detekcji warto korelować zdarzenia importu konfiguracji z pojawieniem się nowych procesów systemowych, nietypowymi połączeniami sieciowymi oraz zmianami w konfiguracji narzędzi MCP. W zespołach SOC zasadna jest również budowa reguł wykrywających procesy uruchamiane z kontekstu Flowise.
Podsumowanie
CVE-2026-40933 pokazuje, że w narzędziach AI szczególnie niebezpieczne mogą być błędy wynikające z połączenia legalnej funkcjonalności z niekontrolowanym wykonaniem komend systemowych. Publikacja kodu exploitacji znacząco zwiększa prawdopodobieństwo realnych ataków na instancje self-hosted.
Dla organizacji korzystających z Flowise oznacza to konieczność natychmiastowej weryfikacji wersji oprogramowania, ograniczenia funkcji MCP, przeglądu uprawnień oraz analizy ewentualnych śladów wcześniejszej kompromitacji. Im większy dostęp aplikacji do danych, modeli i usług produkcyjnych, tym poważniejsze mogą być skutki udanego ataku.
Źródła
- SecurityWeek – Exploit Code Published for Critical Flowise RCE Vulnerability — https://www.securityweek.com/exploit-code-published-for-critical-flowise-rce-vulnerability/
- NVD – CVE-2026-40933 — https://nvd.nist.gov/vuln/detail/CVE-2026-40933
- Flowise – GitHub Repository — https://github.com/FlowiseAI/Flowise
- Obsidian Security – Technical analysis of Flowise MCP exploitation — https://www.obsidiansecurity.com/