dotsagent.io
Język:Polski
Bezpieczeństwo · przewodnik

Bezpieczeństwo agentów

Agenci odczytują teksty napisane przez nieznane osoby, a potem działają z użyciem Twoich poświadczeń. Ta strona przedstawia podstawową zasadę, obie listy OWASP z 2026 r., dotychczasowe incydenty i zabezpieczenia, które mogłyby im zapobiec.

Śmiertelna triada

  1. Dostęp do prywatnych danychPoczta e-mail, repozytoria, bazy danych, pliki i wszystko inne, do czego można uzyskać dostęp za pomocą Twoich poświadczeń.
  2. Kontakt z niezaufanymi treściamiStrony internetowe, zgłoszenia, tickety pomocy technicznej, przychodzące wiadomości e-mail i opisy narzędzi — każdy tekst, który może napisać atakujący.
  3. Możliwość komunikacji zewnętrznejWysyłanie wiadomości e-mail, otwieranie pull requestów, pobieranie adresów URL lub wyświetlanie zdalnych obrazów. Simon Willison opisał tę kombinację trzech elementów w czerwcu 2025 r.

Jeśli jeden agent ma wszystkie trzy możliwości, załóż, że prompt injection może skłonić go do przekazania Twoich danych atakującemu. Nie licz na to, że model odmówi — odbierz przynajmniej jeden z tych elementów każdemu agentowi i każdej sesji.

Najnowsze incydenty

OWASP Top 10 dla aplikacji agentowych 2026

OWASP GenAI Security Project opublikował tę listę 9 grudnia 2025. Obejmuje ona zagrożenia, które pojawiają się, gdy model planuje, zachowuje pamięć, wywołuje narzędzia i współpracuje z innymi agentami.

  1. ASI01
    Przejęcie celu agenta

    Atakujący zmienia cel agenta, zwykle za pomocą instrukcji ukrytych w odczytywanych przez niego treściach. Agent realizuje wtedy cel atakującego, korzystając z narzędzi i uprawnień użytkownika.

  2. ASI02
    Nadużywanie i wykorzystywanie narzędzi

    Agent używa legalnych narzędzi w szkodliwy sposób — na przykład usuwa rekordy, wysyła wiadomości lub łączy wywołania — ponieważ został zmanipulowany albo ma dostęp do narzędzi o szerszych uprawnieniach, niż wymaga zadanie.

  3. ASI03
    Nadużywanie tożsamości i uprawnień

    Agenci działają za pomocą poświadczeń, przekazanych tokenów i odziedziczonych uprawnień. Atakujący wykorzystują te tożsamości lub luki między nimi, aby eskalować uprawnienia albo działać w imieniu innej osoby.

  4. ASI04
    Luki w łańcuchu dostaw systemów agentowych

    Narzędzia, serwery MCP, umiejętności, wtyczki, modele i prompty wczytywane podczas kompilacji lub działania programu mogą być złośliwe albo przejęte. Ponieważ agenci wczytują wiele z nich dynamicznie, jeden wadliwy komponent zagraża każdej korzystającej z niego sesji.

  5. ASI05
    Nieoczekiwane wykonanie kodu (RCE)

    Agenci, którzy piszą i uruchamiają kod albo przekazują dane wyjściowe modelu do powłok i interpreterów, mogą zostać nakłonieni do uruchomienia na hoście poleceń wybranych przez atakującego.

  6. ASI06
    Zatrucie pamięci i kontekstu

    Atakujący umieszcza fałszywe informacje lub instrukcje w pamięci agenta, pobieranych dokumentach albo zapisanym kontekście. Zatrute dane pozostają tam i wpływają na kolejne sesje długo po usunięciu pierwotnych danych wejściowych.

  7. ASI07
    Niezabezpieczona komunikacja między agentami

    Wiadomości między agentami są przesyłane bez odpowiedniego uwierzytelniania, kontroli integralności lub walidacji, przez co można je podszyć, odtworzyć lub zmodyfikować, aby wprowadzić w błąd agenta, który je otrzymuje.

  8. ASI08
    Awarie kaskadowe

    Jeden błąd, taki jak zatrute dane wejściowe, błędny wynik narzędzia lub przejęty agent, może rozprzestrzenić się między połączonymi agentami i zautomatyzowanymi krokami szybciej, niż ludzie zdążą zareagować.

  9. ASI09
    Wykorzystywanie zaufania człowieka do agenta

    Agenci brzmią pewnie i pomocnie, dlatego ludzie często zatwierdzają proponowane przez nich działania. Atakujący wykorzystują to zaufanie, by nakłonić człowieka do potwierdzenia szkodliwego działania lub ujawnienia informacji.

  10. ASI10
    Agenci działający samowolnie

    Przejęty agent lub agent, który odszedł od zamierzonego sposobu działania, nadal działa samodzielnie, poza zakresem i nadzorem, które mu wyznaczono.

OWASP Top 10 dla aplikacji LLM 2026

To wydanie opublikowano 4 sierpnia 2026; zastępuje ono listę z 2025 r. Nadmierna sprawczość awansowała z szóstego na trzecie miejsce, a Wyciek systemowego promptu przemianowano na Ujawnienie ukrytego kontekstu.

  1. LLM01
    Prompt injection

    Dane wejściowe zmieniają zachowanie modelu w sposób niezamierzony przez programistę. Mogą pochodzić bezpośrednio od użytkownika lub pośrednio z dokumentów, stron internetowych i wyników narzędzi, które model odczytuje.

  2. LLM02
    Ujawnienie poufnych informacji

    Model lub aplikacja ujawnia w odpowiedzi dane osobowe, dane uwierzytelniające, tajemnice biznesowe lub inne poufne informacje pochodzące z danych treningowych, kontekstu albo połączonych systemów.

  3. LLM03
    Nadmierna autonomia

    Aplikacja przyznaje modelowi więcej funkcji, uprawnień lub autonomii, niż wymaga tego zadanie, przez co zmanipulowany lub błędny wynik może spowodować realne szkody. Ta kategoria awansowała z szóstego miejsca w 2025 roku na trzecie w 2026 roku.

  4. LLM04
    Łańcuch dostaw

    Modele, zbiory danych, adaptery, pakiety i wtyczki innych firm mogą zostać zmodyfikowane lub zawierać podatności, przenosząc związane z nimi ryzyko do aplikacji.

  5. LLM05
    Zatruwanie danych i modeli

    Atakujący manipulują danymi do pretrenowania, fine-tuningu lub embeddingami, by zaszyć backdoory, uprzedzenia albo błędne zachowania, które ujawniają się dopiero później, w środowisku produkcyjnym.

  6. LLM06
    Nieograniczone zużycie zasobów

    Bez limitów liczby żądań, rozmiaru danych wejściowych lub użycia mocy obliczeniowej atakujący mogą znacząco zwiększyć rachunki, wyczerpać zasoby lub skopiować model, wysyłając dużą liczbę zapytań.

  7. LLM07
    Dezinformacja

    Model generuje fałszywe lub wprowadzające w błąd treści, które brzmią wiarygodnie, a użytkownicy lub systemy przetwarzające te treści podejmują na ich podstawie działania bez weryfikacji.

  8. LLM08
    Ujawnienie ukrytego kontekstu

    Wcześniej: wyciek promptu systemowego. Można wyodrębnić prompty systemowe, ukryte instrukcje i inny kontekst, który nie powinien być widoczny dla użytkownika, ujawniając umieszczone w nich reguły, logikę lub sekrety.

  9. LLM09
    Słabości wektorów i embeddingów

    Błędy w generowaniu, przechowywaniu i pobieraniu embeddingów umożliwiają atakującym wstrzykiwanie treści, wyciek danych między tenantami lub odtwarzanie tekstu źródłowego. Najbardziej narażone są systemy RAG.

  10. LLM10
    Nieprawidłowa obsługa wyników

    Wynik modelu trafia do przeglądarek, powłok, baz danych lub innych komponentów bez walidacji ani kodowania, co umożliwia ataki XSS, SQL injection, wykonywanie kodu i eksfiltrację danych.

Zabezpieczenia

Piętnaście udokumentowanych zabezpieczeń, każde z odnośnikiem do źródła. Stosuj kilka warstw, ponieważ żadne z nich nie powstrzyma samodzielnie każdego ataku.

Przerwij zabójczą triadę

Zasada Simona Willisona: agent, który może odczytywać prywatne dane, widzi niezaufane treści i może wysyłać dane na zewnątrz, może zostać wykorzystany przeciwko tobie za pomocą dowolnego tekstu, który odczyta. Odbierz każdemu agentowi lub sesji co najmniej jedną z tych trzech możliwości. Na przykład agent sortujący publiczne zgłoszenia nie powinien mieć dostępu do sekretów, a agent mający dostęp do sekretów nie powinien mieć kanału do wysyłania danych na zewnątrz.

simonwillison.net

Ogranicz możliwości agenta po otrzymaniu niezaufanych danych

Badania nad wzorcami projektowymi zapewniającymi bezpieczeństwo agentów wskazują jedną zasadę: gdy agent przetworzy niezaufane dane wejściowe, nie mogą one wywoływać działań o istotnych konsekwencjach. Wśród wzorców są action-selector, plan-then-execute, dual LLM i minimalizacja kontekstu. Wybierz jeden wzorzec dla każdego workflow, na przykład ustal plan, zanim agent odczyta jakiekolwiek niezaufane dane.

arxiv.org

Śledź przepływ danych za pomocą CaMeL

CaMeL dzieli agenta na dwie części: uprzywilejowany planner tworzy kod na podstawie prośby użytkownika, a odizolowany model obsługuje niezaufane dane. Wartości pochodzące z odizolowanej części otrzymują tagi uprawnień, a zasady sprawdzają te tagi przed uruchomieniem dowolnego narzędzia. W artykule system rozwiązał 77% zadań AgentDojo z formalnie gwarantowanym bezpieczeństwem, podczas gdy agent bez zabezpieczeń rozwiązał 84%.

arxiv.org

Stosuj zasadę minimalnych uprawnień

Domyślnie przyznawaj agentom dostęp tylko do odczytu, ograniczony do konkretnego projektu. Nigdy nie używaj klucza administratora ani service_role, który w Supabase omija zabezpieczenia na poziomie wierszy. Ograniczaj tokeny CI i repozytoriów do pojedynczego zadania, do którego służą. Źródłem incydentu z Amazon Q Developer był token GitHub o zbyt szerokich uprawnieniach w CodeBuild.

supabase.comaws.amazon.com

Wymagaj akceptacji działań o istotnych konsekwencjach

Wymagaj od człowieka potwierdzenia wywołań narzędzi, które zapisują, usuwają, wysyłają lub wydają środki. Jeśli nikt nie odpowie, domyślnie odmawiaj. Supabase zaleca ręczne zatwierdzanie wywołań narzędzi MCP. W OpenClaw ustaw tools.exec.ask na always, a askFallback pozostaw jako deny. Pokaż pełne argumenty, aby osoba zatwierdzająca widziała, co zostanie faktycznie uruchomione.

supabase.comdocs.openclaw.ai

Uruchamiaj kod i narzędzia w sandboxie

Uruchamiaj polecenia powłoki i wygenerowany kod w kontenerze lub maszynie wirtualnej bez poświadczeń, z dostępem wyłącznie do workspace. OpenClaw domyślnie wyłącza sandboxing, a na hostach gateway ustawia tools.exec.security na full. Włącz więc sandboxing, ustaw zabezpieczenia exec na deny lub allowlist, ustaw fs.workspaceOnly na true i pozostaw tryb podwyższonych uprawnień wyłączony. Sprawdź wynik poleceniem openclaw sandbox explain.

docs.openclaw.aidocs.openclaw.ai

Ogranicz ruch wychodzący

Domyślnie blokuj ruch wychodzący agentów i serwerów MCP, a następnie zezwalaj wyłącznie na hosty potrzebne każdemu z nich. Nigdy nie zatwierdzaj automatycznie żądań do hostów współdzielonych przez wielu użytkowników, na których każdy może coś opublikować — w ten sposób CVE-2026-54316 zmieniło huggingface.co w kanał eksfiltracji danych. Serwer poczty powinien mieć dostęp do swojego API pocztowego i żadnych innych hostów, jak pokazał przypadek postmark-mcp.

nvd.nist.govkoi.ai

Nie wystawiaj płaszczyzn kontroli do internetu

Powiąż gatewaye agentów, dashboardy i proxy debugowania z loopback i wymagaj tokenu o długości co najmniej 24 znaków, na przykład wygenerowanego poleceniem openssl rand -hex 32. Uzyskuj do nich zdalny dostęp przez tunel SSH lub Tailscale Serve, a Tailscale Funnel stosuj wyłącznie z uwierzytelnianiem hasłem. Regularnie uruchamiaj openclaw security audit --deep.

docs.openclaw.aidocs.openclaw.aidocs.openclaw.ai

Weryfikuj odbiorcę tokenu MCP

Specyfikacja autoryzacji MCP wymaga, by serwer odrzucał tokeny dostępu, które nie zostały dla niego wydane, i zabrania przekazywania tokenu klienta do nadrzędnego API. Klienci wysyłają wskaźniki zasobu RFC 8707, dzięki czemu każdy token jest powiązany z jednym serwerem. Serwer proxy musi uzyskać zgodę każdego klienta, inaczej może stać się podatny na problem confused deputy.

modelcontextprotocol.iomodelcontextprotocol.io

Izoluj sesje i dzierżawców MCP

Utwórz osobną instancję serwera i transportu dla każdej sesji, zamiast współdzielić jedną między klientami. Powiąż każdą sesję i każde zadanie z uwierzytelnioną tożsamością, która je utworzyła, i sprawdzaj to powiązanie przy każdym żądaniu. Oba ostrzeżenia dotyczące MCP SDK z 2026 r. wynikały ze współdzielonego lub niepowiązanego stanu.

github.comgithub.com

Weryfikuj skills, pluginy i serwery MCP

Przypinaj dokładne wersje, przed każdą aktualizacją przeglądaj diff i sprawdzaj wyniki skanerów, takich jak VirusTotal, oraz status audytu bezpieczeństwa ClawHub. Zapisuj hash opisów narzędzi po zatwierdzeniu serwera i wysyłaj alerty, gdy opisy się zmienią — pozwala to wykrywać rug pull. OpenClaw nie blokuje instalacji wbudowanymi mechanizmami, więc samodzielnie ustaw security.installPolicy.

openclaw.aidocs.openclaw.aiinvariantlabs.aidocs.openclaw.ai

Kontroluj, kto może pisać do agenta

Ogranicz dostęp przez DM do parowania lub listy dozwolonych. Wymagaj wzmianki, zanim agent zareaguje na czacie grupowym, i ustaw session.dmScope na per-channel-peer, aby nadawcy nigdy nie współdzielili kontekstu. Każda osoba, która może napisać do agenta, może próbować wydawać mu instrukcje, więc lista nadawców jest częścią powierzchni ataku.

docs.openclaw.aidocs.openclaw.ai

Nie udostępniaj sekretów w niezaufanych uruchomieniach CI

Nie uruchamiaj agenta z sekretami repozytorium w workflow, które osoby z zewnątrz mogą wywołać pull requestem, issue lub komentarzem. Traktuj tytuły, opisy i komentarze pochodzące z tych zdarzeń jako wrogie dane. Jeśli jakiś krok rzeczywiście wymaga sekretów, uruchamiaj go dopiero po zatwierdzeniu przebiegu przez maintenera.

oddguan.com

Traktuj wynik modelu jako niezaufany

Koduj lub oczyszczaj wynik modelu przed wyświetleniem i nigdy nie przekazuj go bez sprawdzenia do powłoki, zapytania SQL ani przeglądarki. Zablokuj automatyczne wczytywanie obrazów Markdown i linków do zewnętrznych domen oraz ustaw rygorystyczną Content Security Policy. EchoLeak wyprowadzał dane za pomocą URL-i, które ładowały się automatycznie.

genai.owasp.orgnvd.nist.gov

Weryfikuj podpisy agentów, a potem autoryzuj

Aby ustalić, który agent łączy się z Twoją witryną lub API, zweryfikuj jego podpis Web Bot Auth przy użyciu kluczy publikowanych przez operatora w /.well-known/http-message-signatures-directory. Agent ChatGPT podpisuje się jako Signature-Agent https://chatgpt.com. Prawidłowy podpis wskazuje, kto obsługuje agenta, ale nie określa, który użytkownik wysłał żądanie ani do czego jest uprawniony. Dlatego każde żądanie autoryzuj osobno.

datatracker.ietf.orghelp.openai.com

Pytania o bezpieczeństwo agentów

Czym jest prompt injection w agentach AI?

Prompt injection to tekst, który model traktuje jak instrukcje, mimo że został przekazany jako dane, na przykład na stronie internetowej, w e-mailu lub opisie narzędzia. W agencie takie instrukcje mogą wywołać narzędzia działające z użyciem Twoich poświadczeń. OWASP klasyfikuje to jako LLM01:2026, a Agent Goal Hijack (ASI01) obejmuje tę formę ataku w systemach agentowych.

Czym jest zabójcza triada agentów AI?

To określenie Simona Willisona opisujące agenta, który ma dostęp do prywatnych danych, przetwarza niezaufane treści i może komunikować się ze światem zewnętrznym. Gdy występują wszystkie trzy elementy, prompt injection może odczytać Twoje dane i je wysłać. Wyciek tokenów Supabase MCP z 2025 roku to podręcznikowy przykład.

Jak zabezpieczyć serwer MCP?

Odrzucaj tokeny dostępu, które nie zostały wydane dla Twojego serwera, i nigdy nie przekazuj tokenu klienta do nadrzędnego API. Twórz osobną instancję serwera i transportu dla każdej sesji, a sesje i zadania przypisuj do uwierzytelnionego użytkownika. Używaj TypeScript SDK w wersji 1.26.0 lub nowszej oraz Python SDK w wersji 1.27.2 lub nowszej — te wersje usuwają błąd ujawniania odpowiedzi między klientami i przejmowania sesji.

Czy lepszy prompt systemowy może zatrzymać prompt injection?

Nie polegaj na tym. Badania nad wzorcami projektowymi dla agentów wskazują, że po przetworzeniu niezaufanych danych wejściowych agent musi zostać ograniczony tak, aby te dane nie mogły wywołać działań o istotnych konsekwencjach. CaMeL, który egzekwuje to za pomocą śledzenia uprawnień, rozwiązał 77% zadań AgentDojo z możliwym do udowodnienia bezpieczeństwem, w porównaniu z 84% w przypadku agenta bez zabezpieczeń.

Czym różnią się OWASP LLM Top 10 i Agentic Top 10?

OWASP Top 10 for LLM Applications, którego edycja 2026 ukazała się 4 August 2026, obejmuje zagrożenia dotyczące dowolnych aplikacji opartych na modelu językowym. OWASP Top 10 for Agentic Applications, opublikowany 9 December 2025, opisuje zagrożenia wynikające z tego, że model planuje, używa narzędzi, zachowuje pamięć i komunikuje się z innymi agentami. Większość twórców agentów powinna zapoznać się z oboma zestawieniami.

Czy wystawienie bramy OpenClaw do internetu jest bezpieczne?

Nie. Pozostaw gateway.bind z domyślną wartością loopback, a gdy potrzebujesz zdalnego dostępu, użyj tunelu SSH lub Tailscale Serve. OpenA2A odnotowało 192,492 wystawionych bram 1 September 2026, a CVE-2026-25253 pokazało, że nawet instalacje dostępne wyłącznie przez loopback wymagają szybkiego instalowania poprawek.

Źródła

  1. genai.owasp.org/resource/owasp-top-10-for-agentic-applications-for-2026/
  2. genai.owasp.org/download/52117
  3. genai.owasp.org/resource/owasp-genai-llm-top-10-2026/
  4. github.com/GenAI-Security-Project/GenAI-LLM-Top10

Niezależne źródło informacji dla osób tworzących agentów AI. Nie jesteśmy powiązani z żadnym wymienionym tu dostawcą.

© 2026 DotsAgent · Dane sprawdzone 1 października 2026