CVE-2026-105697
KrytyczneCVSS 9.9Streszczenie
Langflow przed wersją 1.10.3 uruchamia dowolne polecenia/argumenty podane przez użytkownika w konfiguracji serwera MCP, bez listy dozwolonych i (przed 1.10.3) owinięte w bash -c "exec {command} ...". Każdy użytkownik mający dostęp do ustawień MCP lub budujący przepływ z komponentem MCP Tools może dodać "serwer" z dowolnym poleceniem OS. Polecenie wykonuje się na hoście Langflow jako proces użytkownika Langflow przy próbie połączenia z serwerem. Przy domyślnym LANGFLOW_AUTO_LOGIN=true, GET /api/v1/auto_login wydaje token bez poświadczeń, więc na wystawionej instancji z domyślną konfiguracją jest to osiągalne bez konta. Z wyłączonym AUTO_LOGIN, każdy uwierzytelniony (nie-admin) użytkownik może to wykorzystać.
Ocena ryzyka
Atakujący może wykonać dowolne polecenia na serwerze, co prowadzi do pełnej kompromitacji systemu, kradzieży danych i przejęcia infrastruktury. Nawet bez konta, jeśli instancja jest wystawiona z domyślną konfiguracją.
Rekomendacja
Należy natychmiast zaktualizować Langflow do wersji 1.10.3 lub nowszej oraz wyłączyć LANGFLOW_AUTO_LOGIN w środowiskach produkcyjnych.
Inne podatności w Langflow
Zobacz wszystkie- CVE-2026-105741Wysokie
Langflow to narzędzie do budowania i wdrażania agentów i przepływów AI. Od wersji 1.5.0 do 1.10.3 podatność na fałszowanie adresu IP w punkcie końcowym instalacji konfiguracji Model Context Protocol (MCP) (POST /api/v1/mcp/project/{project_id}/install) pozwalała uwierzytelnionym zdalnym atakującym obejść ograniczenie dostępu „tylko lokalnie”. Poprzez wysłanie sfałszowanego nagłówka X-Forwarded-For: 127.0.0.1 atakujący mógł sprawić, że serwer potraktuje żądanie jako pochodzące z localhost, umożliwiając zapis lub nadpisanie pliku konfiguracyjnego klienta MCP w systemie plików serwera.
- CVE-2026-105699Wysokie
Langflow to narzędzie do budowania i wdrażania agentów i przepływów AI. Od wersji 1.6.8 do 1.9.1 Langflow uwierzytelniał dostęp do identyfikatora projektu w połączeniu MCP o zasięgu projektu, ale nie autoryzował URI zasobu przekazanego do resources/read. Funkcja read_resource przekazywała kontrolowany przez atakującego URI do handle_read_resource, który parsował flow_id i nazwę pliku oraz wywoływał storage_service.get_file bez weryfikacji, czy przepływ należy do uwierzytelnionego użytkownika lub bieżącego projektu. Użytkownik z dostępem do dowolnego punktu końcowego MCP o zasięgu projektu mógł zatem zażądać pliku innego użytkownika powiązanego z przepływem, a globalne funkcje handle_list_resources i handle_list_tools mogły ujawniać identyfikatory przepływów i plików, co ułatwiało atak.
- CVE-2026-105698Średnie
Langflow to narzędzie do budowania i wdrażania agentów i przepływów pracy opartych na AI. Od wersji 1.0.0 do 1.10.1, Langflow nie weryfikował własności przepływu w przestarzałych procedurach obsługi POST /api/v1/build/{flow_id}/vertices i POST /api/v1/build/{flow_id}/vertices/{vertex_id}. Do wersji 1.7.1 nieuwierzytelniony wywołujący, który znał UUID przepływu innego użytkownika, mógł dotrzeć do tych procedur; od wersji 1.7.2 do 1.10.0 wywołujący musieli się uwierzytelnić, ale nie potrzebowali podwyższonych uprawnień. Taki wywołujący mógł spowodować, że retrieve_vertices_order załaduje i zapisze w pamięci podręcznej prywatny graf, wyliczy jego identyfikatory wierzchołków i użyje build_vertex do wykonania wybranych wierzchołków i otrzymania ich wyników. build_graph_from_db_no_cache wykonywał wyszukiwanie klucza podstawowego bez filtra właściciela. Mogło to ujawnić prywatną strukturę przepływu, skonfigurowane wartości i wybrane wyniki oraz wywołać skutki uboczne skonfigurowane przez ofiarę i rekordy historii budowania, chociaż nie ujawniało poświadczeń magazynu zmiennych ofiary ani nie pozwalało na modyfikację zapisanego przepływu. Problem został naprawiony w Langflow 1.10.1 i langflow-base 0.10.1.
- CVE-2026-34046Wysokie
Langflow przed wersją 1.5.1 miał lukę w zabezpieczeniach, która pozwalała uwierzytelnionym użytkownikom na dostęp do przepływów innych użytkowników bez sprawdzania ich własności. Problem wynikał z braku odpowiedniego filtrowania zapytań w zależności od ustawienia `AUTO_LOGIN`.
- CVE-2026-105740Krytyczne
Langflow przed wersją 1.9.0 pozwala każdemu uwierzytelnionemu użytkownikowi na zdalne wykonanie kodu (RCE) na serwerze poprzez dodanie serwera MCP z transportem "Stdio". Pole komendy jest przekazywane bezpośrednio do bash -c "exec {command}" bez walidacji, listy dozwolonych komend ani sandboxa. Komenda wykonuje się natychmiast po pobraniu listy serwerów. Dodatkowo pole env pozwala na wstrzyknięcie dowolnych zmiennych środowiskowych (np. LD_PRELOAD, PATH).
- CVE-2026-55450Krytyczne
Langflow to narzędzie do budowania i wdrażania agentów oraz przepływów pracy opartych na AI. W wersjach przed 1.9.1, nieautoryzowani użytkownicy mogą przesyłać nieograniczoną ilość danych na serwer, co prowadzi do wyczerpania przestrzeni dyskowej. Dodatkowo, odpowiedź serwera ujawnia absolutną ścieżkę przesłanego pliku, co stanowi wyciek informacji.
- CVE-2026-55255WysokieAktywnie exploitowane
W Langflow przed wersją 1.9.1 wykryto podatność IDOR w punkcie końcowym /api/v1/responses. Uwierzytelniony atakujący może uruchomić dowolny przepływ należący do innego użytkownika, podając jego identyfikator w żądaniu.
- CVE-2026-42048Krytyczne
Langflow, narzędzie do budowania i wdrażania agentów AI, przed wersją 1.9.0 jest podatne na atak typu Path Traversal w API Baz Wiedzy (DELETE /api/v1/knowledge_bases). Atakujący może wykorzystać tę lukę do usunięcia dowolnych katalogów na serwerze.
- CVE-2026-33017KrytyczneAktywnie exploitowane
Langflow to narzędzie do budowania i wdrażania agentów oraz przepływów opartych na AI. W wersjach przed 1.9.0, punkt końcowy POST /api/v1/build_public_tmp/{flow_id}/flow pozwalał na budowanie publicznych przepływów bez wymogu uwierzytelnienia, co prowadziło do możliwości zdalnego wykonania kodu przez nieautoryzowanych użytkowników.
- CVE-2026-0770KrytyczneAktywnie exploitowane
Podatność w Langflow umożliwia zdalne wykonanie kodu poprzez parametr exec_globals w endpoint validate. Atakujący bez uwierzytelnienia może wstrzyknąć złośliwy kod z niezaufanego źródła.
Oryginalny opis (angielski, źródło NVD)
Langflow is a tool for building and deploying AI-powered agents and workflows. Before Langflow 1.10.3, the MCP stdio transport launched whatever command / args a user put in an MCP server configuration, with no allowlist and (before 1.10.3) wrapped in bash -c "exec {command} ...". Any user able to reach the MCP server settings ("Settings → MCP Servers → Add MCP Server", POST/PATCH /api/v2/mcp/servers/{server_name}) or to build a flow with the MCP Tools component could add a "server" whose command is an arbitrary OS command (touch, rm -rf, a reverse shell, ...). The command runs on the Langflow host as the Langflow process user as soon as Langflow tries to connect to the server (listing servers, loading tools, running the flow) — even when the UI then reports that the stdio server failed to start. With the default LANGFLOW_AUTO_LOGIN=true, GET /api/v1/auto_login hands out a token without credentials, so on an exposed instance running the default configuration this is reachable without an account. AUTO_LOGIN is documented as a development-only setting; with it disabled, any authenticated (non-admin) user can exploit it. This issue is fixed in Langflow 1.10.3, langflow-base 0.10.3, and lfx 1.10.3.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

