
Wprowadzenie do problemu / definicja
Model Context Protocol (MCP) to otwarty standard, który pozwala agentom AI komunikować się z narzędziami, interfejsami API, bazami danych oraz systemami plików. Dzięki temu modele nie ograniczają się wyłącznie do generowania odpowiedzi, ale mogą wykonywać konkretne działania w środowisku organizacji.
W centrum tej architektury znajduje się serwer MCP, pełniący rolę pośrednika między agentem a systemem docelowym. To właśnie on bardzo często obsługuje tokeny, klucze API, konta serwisowe i inne wrażliwe dane, przez co staje się nowym, atrakcyjnym celem dla atakujących.
W skrócie
Rosnąca popularność agentów AI w firmach tworzy nową klasę zagrożeń związanych z bezpieczeństwem sekretów i tożsamości technicznych. Serwery MCP mogą ujawniać poświadczenia przez ich jawne przechowywanie, nadmierne uprawnienia, brak centralnego zarządzania oraz podatność na prompt injection.
- Poświadczenia bywają zapisywane w plikach konfiguracyjnych lub zmiennych środowiskowych.
- Te same sekrety często są kopiowane między środowiskami i narzędziami.
- Agent AI może zostać nakłoniony do nieautoryzowanych działań przez złośliwe instrukcje.
- Kompromitacja jednego serwera MCP może otworzyć drogę do kolejnych systemów.
Kontekst / historia
Tradycyjnie aplikacje korzystały z kluczy API i kont serwisowych w stosunkowo przewidywalnych scenariuszach. W modelu MCP agent AI działa jednak bardziej dynamicznie: wybiera narzędzia, wykonuje polecenia i uzyskuje dostęp do różnych zasobów w zależności od kontekstu zadania.
Ta zmiana znacząco zwiększa rolę tzw. non-human identities, czyli tożsamości niepowiązanych bezpośrednio z użytkownikiem. W praktyce wiele wdrożeń powstaje szybko, bez dojrzałych polityk bezpieczeństwa. Efektem są ręcznie dodawane tokeny, szerokie zakresy uprawnień oraz brak pełnej widoczności nad tym, gdzie i jak wykorzystywane są sekrety.
Analiza techniczna
Najczęstszy problem dotyczy przechowywania poświadczeń w postaci jawnej. Jeśli serwer MCP wymaga wklejenia tokenu do lokalnego pliku konfiguracyjnego, taki sekret może zostać łatwo przejęty po uzyskaniu dostępu do hosta, kopii zapasowej albo repozytorium kodu.
Drugim problemem jest rozproszenie sekretów. W organizacjach bez centralnego systemu zarządzania poświadczeniami te same klucze trafiają do wielu miejsc: plików, środowisk deweloperskich, instancji testowych oraz produkcyjnych. To utrudnia inwentaryzację, rotację i szybkie cofnięcie dostępu po incydencie.
Istotnym wektorem ataku pozostaje także prompt injection. Agent AI może potraktować ukryte polecenia z dokumentu, strony internetowej lub zgłoszenia serwisowego jako wiążące instrukcje. Jeśli serwer MCP zapewnia mu dostęp do narzędzi o wysokich uprawnieniach, skutkiem może być ujawnienie danych, pobranie sekretów lub wykonanie nieautoryzowanych akcji.
Kolejnym błędem są nadmierne uprawnienia. Deweloperzy często przyznają serwerowi MCP zbyt szeroki dostęp, aby uprościć integrację i uniknąć problemów z autoryzacją. Gdy takie ustawienia trafiają do produkcji, pojedyncza kompromitacja może objąć znacznie większy obszar infrastruktury, niż wymaga to rzeczywista funkcja agenta.
Nie można też ignorować ryzyka łańcucha dostaw. Publicznie dostępne serwery MCP, wtyczki oraz komponenty pośredniczące mogą zawierać błędy bezpieczeństwa albo złośliwe funkcje. W praktyce oznacza to możliwość przejęcia sesji, wykonania kodu czy kradzieży poświadczeń z systemu klienta lub hosta pośredniczącego.
Konsekwencje / ryzyko
Najpoważniejszym skutkiem nie jest sam wyciek sekretu, lecz możliwość wykorzystania go do aktywnego działania w środowisku przedsiębiorstwa. Przejęty token może umożliwić odczyt i modyfikację danych, uruchamianie operacji administracyjnych, a także dalszą eskalację uprawnień.
- naruszenie poufności danych firmowych i klientów,
- przejęcie kont serwisowych oraz kluczy API,
- lateral movement między systemami połączonymi przez MCP,
- utrata kontroli nad agentami AI wykonującymi działania autonomicznie,
- problemy audytowe i zgodnościowe,
- rozwój zjawiska shadow AI poza formalnym nadzorem bezpieczeństwa.
W środowiskach produkcyjnych serwer MCP staje się punktem koncentracji ryzyka, ponieważ łączy w jednym miejscu zarówno logikę dostępu, jak i poświadczenia potrzebne do wykonywania operacji.
Rekomendacje
Podstawową praktyką powinno być usunięcie sekretów z kodu źródłowego, lokalnych plików konfiguracyjnych i zmiennych środowiskowych wszędzie tam, gdzie to możliwe. Zamiast tego organizacje powinny stosować scentralizowane zarządzanie sekretami oraz dynamiczne pobieranie poświadczeń w czasie wykonania.
Ważne jest również wdrożenie krótkotrwałych poświadczeń i automatycznej rotacji. Nawet jeśli sekret zostanie ujawniony, ograniczony czas jego ważności zmniejsza potencjalny wpływ incydentu. Równolegle należy konsekwentnie stosować zasadę najmniejszych uprawnień wobec agentów AI i serwerów MCP.
Dla operacji wysokiego ryzyka warto utrzymać model human-in-the-loop. Odczyt sekretów, usuwanie danych, zmiana konfiguracji produkcyjnej czy dostęp do systemów krytycznych powinny wymagać dodatkowego zatwierdzenia przez człowieka.
- prowadzenie pełnego inwentarza serwerów MCP,
- rejestrowanie i audyt wszystkich działań agentów,
- segmentacja dostępu między środowiskami dev, test i prod,
- szyfrowanie sekretów end-to-end,
- ocena zaufania do komponentów i dostawców,
- monitorowanie nietypowych zachowań tożsamości nieosobowych.
Podsumowanie
Serwery MCP stają się nową warstwą ryzyka w architekturach AI dla przedsiębiorstw. Łączą agentów z rzeczywistymi systemami i jednocześnie obsługują poświadczenia o wysokiej wartości, co czyni je kluczowym elementem z punktu widzenia bezpieczeństwa.
Jawne przechowywanie sekretów, brak centralnego zarządzania, zbyt szerokie uprawnienia oraz podatność na prompt injection mogą prowadzić do poważnych incydentów. Organizacje wdrażające agentów AI powinny traktować warstwę MCP tak samo krytycznie jak systemy produkcyjne, uprzywilejowane konta i mechanizmy dostępu do danych.