
Co znajdziesz w tym artykule?
Wprowadzenie do problemu / definicja
Model Context Protocol (MCP) to otwarty standard, który umożliwia modelom AI komunikację z narzędziami, usługami i zewnętrznymi źródłami danych. Dzięki temu agenci AI mogą wykonywać zadania wykraczające poza samo generowanie tekstu, w tym uruchamiać procesy, pobierać kontekst i integrować się z systemami firmowymi.
Najnowsze ustalenia badaczy pokazują jednak, że jeden z mechanizmów projektowych MCP może prowadzić do bardzo poważnych konsekwencji bezpieczeństwa. Problem dotyczy sposobu obsługi lokalnych procesów przez interfejs STDIO i może otworzyć drogę do wykonywania nieautoryzowanych poleceń systemowych, a w praktyce do przejęcia hosta lub nadużyć w całym łańcuchu dostaw AI.
W skrócie
- Badacze opisali krytyczną, systemową słabość w ekosystemie MCP.
- Problem dotyczy obsługi interfejsu STDIO w oficjalnych bibliotekach SDK.
- Ryzyko może obejmować ponad 200 projektów open source, około 150 mln pobrań oraz tysiące publicznie dostępnych serwerów AI.
- Skutki potencjalnego ataku obejmują wykonanie poleceń systemowych, kradzież sekretów, dostęp do baz danych i kompromitację środowisk deweloperskich oraz produkcyjnych.
Kontekst / historia
MCP w krótkim czasie stał się ważnym elementem nowoczesnych architektur agentowych. Standard ten jest wykorzystywany jako warstwa pośrednia między modelami językowymi a narzędziami zewnętrznymi, co czyni go atrakcyjnym rozwiązaniem dla platform automatyzacji, środowisk programistycznych i systemów integracyjnych.
W opisywanym przypadku nie chodzi jednak o klasyczny błąd pamięci czy pojedynczą lukę w jednym produkcie. Istota problemu tkwi w decyzji architektonicznej obecnej w oficjalnych implementacjach SDK dla różnych języków programowania. To sprawia, że zagrożenie może być dziedziczone przez wiele zależnych projektów, nawet jeśli same aplikacje nie zawierają oczywistych błędów.
Warto też zauważyć, że temat wpisuje się w szerszy trend badań nad bezpieczeństwem agentów AI. Coraz częściej wskazuje się, że podatności w takich środowiskach nie wynikają wyłącznie z prompt injection, lecz również z nadmiernych uprawnień, braku izolacji oraz niebezpiecznego zaufania między komponentami wykonawczymi.
Analiza techniczna
Źródłem ryzyka jest sposób, w jaki implementacje MCP uruchamiają lokalne procesy przez STDIO. Mechanizm miał służyć do startowania lokalnego serwera MCP i komunikowania się z nim przez standardowe wejście oraz wyjście. Według ustaleń badaczy przekazane polecenie może jednak zostać wykonane nawet wtedy, gdy właściwy serwer MCP nie uruchomi się poprawnie.
Z perspektywy bezpieczeństwa oznacza to powstanie bardzo niebezpiecznego antywzorca. Jeśli dane wejściowe, konfiguracja lub parametry wywołania wpływają na komendę uruchamianego procesu, mogą zostać wykorzystane jako wektor command injection lub pełnego zdalnego wykonania kodu. W praktyce ryzyko rośnie szczególnie wtedy, gdy aplikacja dopuszcza kontrolę nad komendą, argumentami lub ścieżką wykonywalną.
Najbardziej narażone są środowiska, w których agent AI dynamicznie dobiera narzędzia, konfiguracja MCP jest ładowana z repozytorium lub zewnętrznego źródła, a sam proces działa z szerokimi uprawnieniami. Dotyczy to zwłaszcza środowisk deweloperskich, pipeline’ów CI/CD, backendów oraz serwerów mających dostęp do sekretów i systemów wewnętrznych.
- Atakujący wpływa na konfigurację serwera MCP lub parametry uruchomienia.
- Aplikacja przekazuje te dane do warstwy STDIO bez wystarczającej sanitacji.
- System uruchamia polecenie lokalne lub powłokę.
- Napastnik uzyskuje możliwość kradzieży sekretów, modyfikacji plików i dalszego ruchu bocznego.
Kluczowy problem polega na tym, że dla programisty cały proces może wyglądać jak zwykłe uruchomienie pomocniczego serwera lokalnego. W rzeczywistości staje się jednak punktem wejścia do kompromitacji hosta i dalszego ataku na komponenty zależne od ekosystemu MCP.
Konsekwencje / ryzyko
Najgroźniejszym skutkiem opisywanej słabości jest możliwość pełnego przejęcia systemu uruchamiającego podatną implementację. W zależności od modelu wdrożenia atak może prowadzić nie tylko do incydentu lokalnego, ale także do rozprzestrzenienia się kompromitacji na inne środowiska i systemy organizacji.
- wyciek kluczy API, tokenów i sekretów środowiskowych,
- dostęp do historii interakcji z agentami AI,
- przejęcie baz danych, repozytoriów kodu i zasobów wewnętrznych,
- nadużycie uprawnień procesów CI/CD,
- trwała kompromitacja stacji roboczych deweloperów,
- ataki na łańcuch dostaw przez złośliwe konfiguracje i zależności.
Ryzyko jest szczególnie wysokie, ponieważ ma charakter systemowy. Oznacza to, że samo załatanie pojedynczej aplikacji może nie wystarczyć, jeśli nie zostanie zmieniony sam model uruchamiania procesów. Dla organizacji wykorzystujących agentów AI MCP przestaje być neutralnym elementem integracyjnym i powinien być traktowany jak komponent uprzywilejowany.
Rekomendacje
Organizacje korzystające z MCP powinny jak najszybciej przeprowadzić przegląd bezpieczeństwa wszystkich wdrożeń wykorzystujących ten standard, zwłaszcza tam, gdzie stosowany jest interfejs STDIO. W praktyce konieczne jest ograniczenie zaufania do konfiguracji, modelu i zewnętrznych danych wejściowych.
- przeprowadzenie natychmiastowego audytu wdrożeń MCP,
- identyfikacja miejsc, w których użytkownik lub model wpływa na komendy i argumenty procesów,
- wprowadzenie listy dozwolonych poleceń oraz blokady dowolnych ścieżek wykonywalnych,
- eliminacja przekazywania niesanitowanych danych do powłoki systemowej,
- uruchamianie serwerów MCP w kontenerach, maszynach wirtualnych lub piaskownicach,
- ograniczenie uprawnień zgodnie z zasadą najmniejszych uprawnień,
- separacja sekretów od środowiska wykonawczego agenta i rotacja kluczy w razie podejrzenia wycieku,
- monitorowanie procesów podrzędnych, wywołań shell i nietypowego ruchu wychodzącego,
- przegląd zależności w łańcuchu dostaw aplikacji AI,
- rozszerzenie testów bezpieczeństwa o konfiguracje agentów i warstwę integracyjną.
Z perspektywy producentów oprogramowania potrzebne są również zmiany architektoniczne. Obejmują one bezpieczne ustawienia domyślne, silniejszą walidację argumentów, wyraźne oddzielenie konfiguracji od wykonywania procesów oraz jawne oznaczanie trybów niebezpiecznych.
Podsumowanie
Opisana wada MCP pokazuje, że bezpieczeństwo agentów AI nie kończy się na modelu i promptach. Gdy warstwa integracyjna uzyskuje możliwość uruchamiania procesów systemowych, staje się atrakcyjnym celem dla klasycznych ataków RCE i operacji wymierzonych w łańcuch dostaw.
Dla zespołów bezpieczeństwa to wyraźny sygnał, że wdrożenia MCP należy traktować jak element krytyczny infrastruktury. Bez twardej izolacji, ograniczenia uprawnień i kontroli nad wykonywaniem poleceń ryzyko kompromitacji może objąć nie tylko pojedynczą aplikację, ale całe środowisko organizacji.
Źródła
- https://www.infosecurity-magazine.com/news/systemic-flaw-mcp-expose-150/
- https://www.ox.security/blog/the-mother-of-all-ai-supply-chains-technical-deep-dive/
- https://www.securityweek.com/by-design-flaw-in-mcp-could-enable-widespread-ai-supply-chain-attacks/
- https://arxiv.org/abs/2509.06572
- https://arxiv.org/abs/2601.17549