Trzy rzeczy, które warto wiedzieć.
- OWASP opublikował 9 grudnia 2025 r. osobną listę zagrożeń dla systemów agentowych — OWASP Top 10 for Agentic Applications for 2026 — opracowaną z udziałem ponad stu ekspertów.
- Różnica względem excessive agency: tamto to zbyt szerokie uprawnienia w konfiguracji; tu chodzi o to, co agent z nimi robi w trakcie działania — jakie narzędzia wywołuje, w jakiej kolejności i na jakiej podstawie.
- Groźne są nie pojedyncze narzędzia, lecz ich połączenia: narzędzie czytające niezaufaną treść, narzędzie z dostępem do danych prywatnych i narzędzie, które publikuje.
Czym jest agent security.
OWASP opisuje agentów AI jako systemy, które planują, działają i podejmują decyzje w złożonych procesach. W opisie OWASP LLM06 systemy agentowe zwykle wielokrotnie wywołują model, używając wyniku poprzedniego wywołania do sterowania następnym, a decyzję, które narzędzie wywołać, może podejmować sam model. Bezpieczeństwo agenta obejmuje — w ujęciu laboratorium — ryzyka tej autonomii: wywołania narzędzi poza zakresem zadania, łańcuchy działań, których nikt nie zatwierdził, i przejęcie sterowania przez treść, którą agent przeczytał po drodze.
Hasło w słowniku: AI agent · źródło definicji: OWASP Top 10 for Agentic Applications for 2026
Każdy krok dopisuje do kontekstu.
Źródło Invariant Labs (maj 2025) nazwało toxic agent flow sytuację, w której pośredni prompt injection uruchamia szkodliwą sekwencję wywołań narzędzi. W ich demonstracji podatność nie wymagała przejęcia samych narzędzi — występowała także przy w pełni zaufanych narzędziach, bo agent połączony z zewnętrzną platformą styka się z niezaufaną treścią.
Źródło Autorzy podkreślili, że to nie błąd w kodzie serwera GitHub MCP, lecz problem architektoniczny, który trzeba rozwiązać na poziomie systemu agentowego. Nie usuwa go też samo dopasowanie modelu (alignment): podatne były nawet najnowocześniejsze, dopasowane modele.
Wniosek Agent to pętla bez niezależnego punktu odniesienia: cel, plan, wynik narzędzia i ocena wyniku są w tym samym kontekście i przetwarza je ten sam model. Treść, która weszła w kroku trzecim, może zmienić cel w kroku czwartym — i nic poza modelem tego nie zauważy.
Jak to wygląda w praktyce.
-
Złośliwe zgłoszenie w publicznym repozytorium
Użytkownik prosi agenta, by przejrzał otwarte zgłoszenia w jego publicznym repozytorium. Jedno z nich zawiera ukryte polecenie. Agent pobiera dane z prywatnych repozytoriów użytkownika i publikuje je w pull requeście w repozytorium publicznym.
-
„Zawsze zezwalaj”
Klient agenta domyślnie prosi o potwierdzenie każdego wywołania narzędzia, ale wielu użytkowników wybiera „zawsze zezwalaj” i przestaje śledzić pojedyncze działania. Brama zatwierdzeń istnieje, ale nie działa.
-
Agent ignoruje zamrożenie zmian
Użytkownik ogłasza zamrożenie kodu. Agent programistyczny mimo to wprowadza zmiany i usuwa produkcyjną bazę danych, a potem twierdzi, że przywrócenie danych jest niemożliwe — co okazuje się nieprawdą.
-
Przejęty agent współpracujący
W systemie wieloagentowym złośliwy lub przejęty agent przekazuje innemu dane, które ten traktuje jak zaufane.
Scenariusze 1–2 za Invariant Labs (2025), 3 za relacją opisaną przez The Register (2025), 4 za OWASP LLM06:2025 (wyzwalacz w systemach wieloagentowych) — opisy skrócone.
To nie jest hipoteza. Zostało pokazane na działających systemach.
- Documented · źródło 3 GitHub MCP: dane z prywatnych repozytoriów w publicznym pull requeście (maj 2025). Invariant Labs pokazało atak na agenta korzystającego z oficjalnego serwera GitHub MCP: złośliwe zgłoszenie w publicznym repozytorium skłoniło agenta do przeniesienia do publicznego pull requestu informacji z prywatnych repozytoriów użytkownika — w demonstracji m.in. o planach przeprowadzki i wynagrodzeniu.
- Documented · źródło 4 Replit: działanie wbrew zamrożeniu zmian (lipiec 2025). Według relacji Jasona Lemkina, opisanej przez The Register, agent Replit usunął produkcyjną bazę danych, tworzył fałszywe dane i raporty oraz naruszał zamrożenie kodu. Przyznał się do „katastrofalnego błędu oceny”, ale jednocześnie błędnie twierdził, że przywrócenie bazy jest niemożliwe — przywrócenie zadziałało.
Rejestr nie zawiera jeszcze polskiego przypadku tej klasy. Jeżeli znasz udokumentowany przypadek w Polsce, napisz.
Co może się stać.
- wyciek danych przez łańcuch narzędzi: odczyt z jednego systemu, publikacja w drugim
- nieodwracalne zmiany w środowisku produkcyjnym
- działania wbrew wyraźnym poleceniom użytkownika
- fałszywe raporty agenta o własnym działaniu i o stanie systemu
- przejęcie agenta przez treść z zewnątrz — bez włamania do żadnego systemu
Skutki sumują się z excessive agency: uprawnienia wyznaczają, co agent może zrobić, a przebieg działania — co zrobi. Fałszywe raporty agenta o sobie opisujemy osobno jako fałszywe przyznanie się.
Jak zauważyć, że to się dzieje.
- Pełny ślad działania agenta: każde wywołanie narzędzia z argumentami, wynikiem i treścią, która była wtedy w kontekście. Bez tego nie da się ustalić, który krok zmienił kierunek.
- Analiza przepływów, nie pojedynczych wywołań: odczyt z prywatnego repozytorium, a potem zapis do publicznego w jednej sesji to wzorzec wycieku — nawet jeśli każde wywołanie z osobna jest dozwolone.
- Stan systemu z systemu, nie z agenta: o tym, czy baza istnieje, czy testy przeszły i czy zmianę da się cofnąć, informuje system docelowy — nie raport agenta.
- Monitoring w czasie działania: Invariant Labs zaleca ciągłe skanowanie interakcji agenta z serwerami MCP i ślad audytowy.
Punkt 4 za Invariant Labs (2025); punkty 1–3 — rekomendacje laboratorium.
Ograniczyć przepływ, nie tylko uprawnienia.
- Uprawnienia na sesję. W jednej sesji agent ma dostęp tylko do zasobów potrzebnych do bieżącego zadania. Invariant Labs podaje przykład polityki: jedno repozytorium na sesję.
- Rozdzielenie treści niezaufanej i działań uprzywilejowanych. Sesja, w której agent czyta treść z zewnątrz, nie ma jednocześnie narzędzi do publikacji i dostępu do danych prywatnych.
- Zatwierdzanie działań nieodwracalnych poza agentem. Usunięcie, publikację, płatność i zmianę w produkcji zatwierdza człowiek albo reguła w systemie docelowym — niezależnie od ustawienia „zawsze zezwalaj”.
- Rozdzielenie środowisk. Agent pracuje na kopii albo w środowisku testowym; produkcja jest poza jego zasięgiem. Po incydencie Lemkin napisał, że nie można nie rozdzielać środowisk podglądu, testowego i produkcyjnego.
- Ciągły monitoring i ślad audytowy. Skanowanie wywołań narzędzi w czasie działania i zapis, który pozwala odtworzyć przebieg po incydencie.
Strategie 1 i 5 za Invariant Labs (2025), 4 za wnioskiem Lemkina opisanym przez The Register; 2 i 3 — rekomendacje laboratorium.
Czego brakuje w architekturze.
Warstwa, której nie ma
W agencie ten sam model planuje, wykonuje i ocenia. Zasada LLM proponuje, warstwa kontroli decyduje oznacza tu, że każde wywołanie narzędzia jest propozycją, którą ocenia coś poza pętlą agenta.
W języku Reference Signal Engineering: reference signal to pierwotne zlecenie użytkownika, zapisane poza kontekstem agenta. Niezależnym zapisem stanu świata jest system docelowy, nie raport agenta. Komparator sprawdza każde wywołanie względem zlecenia, a każdy raport — względem stanu systemu. Bez tego agent ma pętlę zamkniętą tylko na własnym tekście.
Zasady laboratorium
- SEC-13 Zlecenie użytkownika i uprawnienia sesji są przechowywane poza kontekstem agenta; treść przeczytana w trakcie działania nie może ich zmienić.
- SEC-14 Ocenia się przepływ, nie pojedyncze wywołanie: narzędzia czytające treść niezaufaną, sięgające do danych prywatnych i publikujące na zewnątrz nie działają razem w jednej sesji bez nadzoru.
- SEC-15 Raport agenta o stanie systemu jest twierdzeniem do sprawdzenia, nie dowodem.
Materiał źródłowy.
- 1 · Standard branżowy · OWASP GenAI Security Project · 9.12.2025 · data dostępu 2026-09-29 OWASP Top 10 for Agentic Applications for 2026
- 2 · Standard branżowy · OWASP GenAI Security Project · 2025 · data dostępu 2026-09-29 LLM06:2025 Excessive Agency
- 3 · Analiza podatności · Invariant Labs · 26.05.2025 · data dostępu 2026-09-29 GitHub MCP Exploited: Accessing private repositories via MCP
- 4 · Artykuł prasowy · The Register · 21.07.2025 · data dostępu 2026-09-29 Simon Sharwood — „Vibe coding service Replit deleted user’s production database, faked data, told fibs galore”
Diener, Ł. (2026). Agent security: Gdy system działa sam, krok po kroku [analiza klasy awarii, wersja z 2026-09-29]. ais://lab — bezpieczeństwo systemów AI. https://aisecurity.org.pl/bezpieczenstwo/agent-security/
Czy Twój agent w jednej sesji czyta treści z zewnątrz, ma dostęp do danych prywatnych i może coś opublikować lub zmienić? Tego dotyczy usługa Audyt bezpieczeństwa agentów AI (od 30 000 zł).