
Co znajdziesz w tym artykule?
- 1 Wprowadzenie do problemu / definicja luki
- 2 W skrócie
- 3 Kontekst / historia / powiązania
- 4 Analiza techniczna / szczegóły luki
- 5 Praktyczne konsekwencje / ryzyko
- 6 Rekomendacje operacyjne / co zrobić teraz
- 7 Różnice / porównania z innymi przypadkami
- 8 Podsumowanie / kluczowe wnioski
- 9 Źródła / bibliografia
Wprowadzenie do problemu / definicja luki
ZombieAgent to pokazowy łańcuch ataków typu indirect prompt injection (pośrednia iniekcja promptów), który – według badań Radware – pozwalał przejąć sterowanie nad zachowaniem ChatGPT w scenariuszach „agentowych”: gdy model ma dostęp do narzędzi (np. przeglądania WWW), integracji/konektorów (np. poczta, dysk, repozytoria) i/lub mechanizmów pamięci długoterminowej. Efekt: wyciek danych z usług podłączonych do ChatGPT, możliwość propagacji (rozsyłania ładunku dalej) oraz utrwalenia (persistence) przez manipulację zasadami zapisywanymi w pamięci.
Kluczowe jest to, że w pośredniej iniekcji promptów „polecenia” atakującego nie przychodzą wprost od użytkownika, tylko są ukryte w treści, którą agent ma przetworzyć (e-mail, dokument, plik). Jeśli agent potraktuje tę treść jak instrukcję, zaczyna działać „dla atakującego”.
W skrócie
- Atak bazuje na złośliwych e-mailach i/lub plikach, które zawierają instrukcje dla AI ukryte w treści.
- Celem jest eksfiltracja danych (np. z inboxa i książki adresowej) oraz obejście wcześniejszych ograniczeń (m.in. zakazu modyfikowania URL).
- W wariancie „persistence” atakujący dąży do zapisania reguł w pamięci długoterminowej, by agent wykonywał złośliwe działania w kolejnych rozmowach.
- Radware raportował podatności wcześniej (ShadowLeak), a ZombieAgent pokazał „drugą rundę”: obejście poprawek; według doniesień luka była zgłoszona 26 września 2025 i załatana 16 grudnia 2025.
Kontekst / historia / powiązania
ZombieAgent jest rozwinięciem szerszego problemu: agentic AI zwiększa powierzchnię ataku, bo model nie tylko „pisze tekst”, ale czyta dane z systemów i wykonuje akcje. Radware wcześniej opisywał technikę ShadowLeak, w której model wyciekał dane przez dopisywanie ich do parametrów URL — co OpenAI miało ograniczyć m.in. przez blokadę modyfikowania linków.
ZombieAgent pokazuje, że nawet po wprowadzeniu takich guardrails można zbudować obejście, jeśli atakujący zmieni sposób „kodowania” danych i kanał wycieku.
Analiza techniczna / szczegóły luki
Radware opisał kilka scenariuszy, które łączy wspólny mianownik: agent dostaje do przetworzenia treść kontrolowaną przez atakującego i wykonuje ukryte instrukcje.
1) Eksfiltracja przez „pre-zbudowane” URL (obejście blokady modyfikacji linków)
Wg opisu, wcześniejsza obrona polegała na tym, że ChatGPT „nie może modyfikować dostarczonych URL” (np. dopisując wykradane dane jako parametry). ZombieAgent omija to, podając z góry przygotowaną listę URL-i odpowiadających literom/cyfrom/spacjom. Agent ma:
- odnaleźć w skrzynce ofiary wrażliwy fragment (np. token, adres, dane kontaktowe),
- „znormalizować” go,
- a potem „wyciekać” znak po znaku, wywołując odpowiedni URL dla kolejnych znaków.
Ponieważ agent nie „modyfikuje” linku (tylko wybiera z listy), ograniczenie przestaje pomagać.
2) Złośliwy plik + kanały wycieku (serwer + renderowanie Markdown)
Drugi wektor to złośliwe instrukcje w pliku udostępnionym ChatGPT, które skłaniają agenta do eksfiltracji danych zarówno „po stronie usługi”, jak i przez mechanizmy renderowania (np. elementy w treści rozmowy).
3) Propagacja: atak „robi się sam” w ekosystemie e-mail
W wariancie propagacji agent najpierw pozyskuje z inboxa ostatnie adresy e-mail, a następnie atakujący rozsyła payload do kolejnych osób, zwiększając zasięg kampanii. To klasyczny „worm-like” efekt, tylko że paliwem są: konektory + automatyzacja pracy agenta.
4) Persistence przez pamięć długoterminową (Memory)
Najbardziej niepokojący element to „utrwalenie”: złośliwy plik ma instruować agenta, by dodał do pamięci trwałe reguły (np. priorytetyzowanie określonych kroków przed odpowiedzią). W opisie SecurityWeek: normalnie konektory i pamięć nie powinny działać razem w tym samym czacie, ale poprzez wstrzyknięte „reguły pamięci” agent może zawsze najpierw wykonać kroki atakującego (np. odczyt/wyciek), a dopiero potem rozmawiać z użytkownikiem.
Praktyczne konsekwencje / ryzyko
Najważniejsze ryzyka dla firm i użytkowników, jeśli podobne klasy błędów występują w agentach:
- Wyciek danych z aplikacji podłączonych konektorami: poczta, dyski, narzędzia dev/PM (repozytoria, tickety), komunikatory — wszystko, co agent potrafi odczytać.
- „Cloud-side exfiltration” i ślepe plamki detekcji: jeśli operacje dzieją się po stronie dostawcy usługi AI, tradycyjne zabezpieczenia perymetryczne/EDR/SWG mogą nie widzieć pełnego obrazu (w praktyce zależy od architektury integracji i logowania).
- Utrwalony „insider”: pamięć długoterminowa jako mechanizm persistence to jakościowa zmiana — atak nie musi być jednorazowy, tylko może „żyć” w kolejnych sesjach.
- Ryzyko łańcuchowe: propagacja przez e-mail i automatyzację może szybko przenosić problem na kolejne skrzynki/zespoły.
Rekomendacje operacyjne / co zrobić teraz
Poniżej praktyczny zestaw działań, które mają sens niezależnie od tego konkretnego PoC (bo celują w całą klasę indirect prompt injection dla agentów):
Szybkie „hardening” (dni)
- Ogranicz konektory do minimum: odłącz e-mail i dyski od agentów tam, gdzie nie są krytyczne; stosuj zasadę najmniejszych uprawnień (tylko odczyt, tylko wybrane foldery/projekty).
- Wyłącz lub ściśle kontroluj Memory w środowiskach firmowych (szczególnie dla kont uprzywilejowanych i zespołów obsługujących dane wrażliwe).
- Wprowadź regułę: agent nie wykonuje akcji na podstawie treści z e-maili/plików bez walidacji (human-in-the-loop dla akcji i eksportów danych).
- Allowlist dla otwierania linków / egress control: jeżeli agent ma narzędzie „open URL”, ogranicz domeny i blokuj nietypowe wzorce (np. masowe „odpytywanie” setek linków). (To dokładnie uderza w styl eksfiltracji „znak po znaku”).
Ochrona procesowa i monitorowanie (tygodnie)
- Logowanie i audyt narzędzi agenta (co otworzył, co pobrał, jakie akcje wykonał w konektorach) + korelacja z DLP.
- Segmentacja agentów: osobne tożsamości/instancje do zadań o różnym ryzyku (np. osobny agent do „czytania maili”, bez dostępu do repozytoriów i bez pamięci).
- Testy bezpieczeństwa agentów: stałe „red teaming” prompt injection na realnych workflow (mail → podsumuj → wykonaj akcję). Radware podkreśla, że klasyczne guardrails bywają niewystarczające przeciw trwałym, pośrednim iniekcjom.
Wymagania wobec dostawcy (vendor / procurement)
- Pytaj o separację „instrukcji” od „danych”, filtrowanie IPI, polityki pamięci, granice narzędzi oraz telemetrię (co klient może monitorować).
- Weryfikuj timeline poprawek i komunikację podatności: w tym przypadku media opisywały zgłoszenie 26.09.2025 i łatę 16.12.2025.
Różnice / porównania z innymi przypadkami
- ShadowLeak vs ZombieAgent: ShadowLeak (wg opisu mediów i Radware) eksfiltrował dane przez dopisywanie ich do URL (parametry). ZombieAgent omija to przez „słownik” predefiniowanych URL-i, czyli nie prosi modelu o modyfikację linku — tylko o wybór linku odpowiadającego znakowi.
- Jednorazowy wyciek vs persistence: nowością w ZombieAgent jest mocny nacisk na utrwalenie przez pamięć i „reguły”, które wpływają na przyszłe zachowanie agenta.
Podsumowanie / kluczowe wnioski
ZombieAgent to ważny sygnał ostrzegawczy: im bardziej ChatGPT (i inne LLM) stają się agentami z narzędziami, tym mniej wystarcza klasyczne „prompt hardening”. Pośrednia iniekcja promptów w e-mailach i dokumentach jest szczególnie groźna, bo:
- wygląda jak zwykła treść biznesowa,
- może uruchamiać się w ramach normalnej pracy („podsumuj skrzynkę / przejrzyj plik”),
- a w najgorszym wariancie może zostawić trwały ślad w pamięci agenta.
Jeśli w organizacji używacie konektorów i pamięci w narzędziach typu ChatGPT, potraktujcie ten temat jak nową klasę ryzyka operacyjnego (AI supply chain + data governance), a nie „ciekawostkę o jailbreakach”.
Źródła / bibliografia
- SecurityWeek — opis scenariuszy eksfiltracji, propagacji i persistence (ZombieAgent).
- Radware (blog Threat Intelligence) — streszczenie podatności, eksfiltracja z konektorów, pamięć, propagacja.
- Radware (Threat Advisory/Report) — kontekst „agentic economy”, indirect prompt injection, blind spots i persistence.
- SC Media/SCWorld — obejście guardrails z URL i wzmocnienia po stronie OpenAI.
- The Register — timeline zgłoszenia i łat (26.09.2025 → 16.12.2025) oraz odniesienie do ShadowLeak.