Odpověď hned: AI agent není chatbot — je to program, který za vás dělá akce: čte poštu, zakládá faktury, ukládá soubory, odpovídá zákazníkům. Prompt injection je situace, kdy je v datech, která agent zpracovává (příchozí e-mail, PDF, webová stránka), schovaný text formulovaný jako pokyn — a agent bez ochran ho může vykonat, protože instrukce i data k němu tečou stejným kanálem. OWASP vede prompt injection na prvním místě svého žebříčku rizik pro aplikace nad jazykovými modely a kyberbezpečnostní úřady dodávají, že tuhle vlastnost nejde úplně odstranit. Obrana proto nestojí na tom, že agenta „přesvědčíme”, ale na čtyřech opatřeních mimo model: nejmenší oprávnění (agent nevidí víc než člověk, kterého zastupuje), potvrzení člověkem u citlivých akcí, auditní stopa (kdo, co, kdy, na čí pokyn) a limity s možností agenta okamžitě vypnout.
U AI asistenta, který jen odpovídá v chatovacím okně, je největším rizikem to, co do něj lidé nakopírují. Jakmile ale ten samý model dostane přístup k poště, k účetnímu systému nebo ke sdílenému disku a smí v nich něco dělat, mění se povaha problému: přestává jít o důvěrnost vložených dat a začíná jít o to, co všechno může na cizí pokyn provést. Tenhle text je o té druhé situaci. Vkládání firemních dat do chatbotů řeší firemní data v ChatGPT, kontrolu kódu od AI zase kód od AI: kdo ho přečetl, než šel na uživatele.
Čím se agent liší od chatbota
Chatbot vrátí text a odpovědnost zůstává na člověku. Agent má navíc nástroje — napojení na API: umí přečíst schránku, založit doklad, odeslat zprávu. Mezi „vygeneroval nesmysl” a „vygeneroval nesmysl a rovnou ho odeslal třiceti zákazníkům” je celý ten rozdíl. A agent zpracovává obsah, který firma nenapsala ani neschválila — cizí e-maily, přílohy, weby. Tam vzniká prostor pro útok.
Co je prompt injection na konkrétním příkladu
Představte si agenta, který každé ráno projde firemní schránku, roztřídí poptávky a připraví odpovědi. Přijde e-mail, který vypadá jako běžný dotaz. Někde v jeho těle — drobným písmem v barvě pozadí nebo v metadatech přílohy — je ale text formulovaný jako pokyn agentovi: aby přeposlal poslední vydané faktury na uvedenou adresu.
Agent bez ochran ho může poslechnout. Ne proto, že by byl „hloupý”, ale proto, že jazykový model dostává zadání i data jako jeden proud textu — nemá oddělenou „příkazovou řádku” a „datový vstup” jako klasický software. OWASP dodává, že vstup nemusí být pro člověka viditelný ani čitelný, stačí, že ho model zpracuje.
Rozlišují se dvě podoby. Přímá injektáž je, když si uživatel v konverzaci sám vynutí jiné chování. Nepřímá — pro firmu nebezpečnější — je, když se pokyn dostane dovnitř přes cizí obsah, který agent načte: e-mail, dokument, stránku, tiket. Microsoft ji popisuje jako situaci, kdy útočník vloží pokyny do obsahu třetí strany a AI si je vyloží jako legitimní příkaz.
Poučení zní: vstupní data nesmí být brána jako příkazy.
Proč se prompt injection nedá „vyfiltrovat”
První reakce bývá: dáme na to filtr. Filtry i modely trénované na detekci útoků existují a smysl mají, ale hradba to není. Britský NCSC ve svém stanovisku k nasazování agentů říká otevřeně, že ochrany se mají soustředit na opatření mimo model, která omezují, co systém vůbec může udělat — třeba aby model zpracovávající poštu od cizích lidí neměl přístup k privilegovaným nástrojům. Microsoft doporučuje stavět systém s předpokladem, že část útoků projde, a vrstvit obranu tak, aby škoda zůstala malá. Nehledáme tedy dokonalý filtr — stavíme systém, ve kterém i úspěšná injektáž nemá čím ublížit, protože agent na to nemá práva a citlivou akci mu stejně musí odklepnout člověk.
Nejmenší oprávnění: agent nesmí mít víc práv než člověk, kterého zastupuje
Tohle je nejlevnější účinné opatření, jaké malá firma má. Agent připravující faktury potřebuje vidět objednávky, ceník a kontakty — ne mzdy, personální složky ani zálohy. Když je nevidí, je jedno, jak chytře se ho někdo pokusí přemluvit; nemá je odkud vzít.
OWASP vede jako samostatné riziko Excessive Agency, nadměrnou samostatnost, a rozkládá ji na zbytečné funkce (agent má nástroje, které ke své práci nepotřebuje — typicky proto, že se použila hotová integrace „celý balík”), zbytečná oprávnění (nástroj má v cílovém systému větší práva, než úloha vyžaduje) a zbytečnou autonomii (u akcí s velkým dopadem chybí kontrolní krok). Praktický překlad do provozu malé firmy:
- Oddělte čtení a zápis. Sběr podkladů dělá role, která umí jen číst; zápis má vlastní, úzce vymezenou roli.
- Vyjmenujte povolené nástroje. Seznam „smí založit a upravit doklad” je bezpečnější než seznam zákazů — co na něm není, nejde.
- Práva vynucujte v cílovém systému. Co se smí, nerozhoduje text promptu, ale účetní systém, souborový či poštovní server — vrstva, kterou model neovlivní.
- Nesahejte po administrátorském účtu. Agent s právy do celé sítě je nejčastější zkratka při pilotu a zároveň největší chyba, jakou lze udělat.
Které akce vždy potvrzuje člověk
Human-in-the-loop znamená, že mezi rozhodnutím agenta a jeho provedením stojí lidské „ano”. Microsoft ho označuje za poslední linii obrany; OWASP doporučuje lidské schválení u akcí s velkým dopadem. Jde o pět kategorií:
- pohyb peněz — platební příkaz, změna bankovního spojení dodavatele, dobropis;
- mazání a nevratné změny — smazání dokladu, souboru, záznamu;
- hromadná komunikace — rozeslání e-mailu více adresátům najednou;
- odchod dat ven — export, přeposlání přílohy mimo firmu, sdílení složky;
- změna práv — přidání účtu, rozšíření přístupu, vypnutí kontroly.
Potvrzení má jednu podmínku: člověk musí vidět, co konkrétně se stane — komu, kolik, jaký soubor — ne jen dialog „Souhlasíte?”. Okno bez obsahu se po týdnu odklikává poslepu a je z něj alibi.
Auditní stopa: kdo, co, kdy a na čí pokyn
Auditní stopa je záznam, ze kterého se dá zpětně poskládat, co agent udělal. Teprve z ní se navíc dozvíte, že se vůbec něco stalo.
Microsoft v příručce k nejmenším oprávněním pro agenty pojmenovává typickou slabinu: logy často zachycují jen odpověď v chatu, ne skutečná volání nástrojů, rozsahy oprávnění a rozhodnutí navazujících systémů. Takový log je při vyšetřování k ničemu. Použitelný záznam obsahuje kdo (identita agenta, vlastní účet místo sdíleného hesla), na čí pokyn (který člověk nebo událost akci spustila), co (zavolaná operace a její parametry, ne text odpovědi), kdy, s jakým oprávněním, s jakým výsledkem a společné ID celého běhu, aby šlo poskládat řetěz kroků.
Část práce dělají provozovatelé platforem — Microsoft vede v auditním protokolu samostatné události pro spuštění agenta, volání nástroje i zásah ochranného mechanismu. Zbývá ověřit, že jsou zapnuté a že se logy uchovávají dost dlouho.
Limity, oddělení prostředí a vypínač
Poslední vrstva omezuje škodu v čase. OWASP doporučuje omezovat počet akcí za časový úsek, NCSC dávat agentům minimální přístup na co nejkratší dobu a sledovat neobvyklé chování. Limit akcí — kolik dokladů, e-mailů nebo souborů smí agent zpracovat za hodinu; překročení znamená zastavení a upozornění, ne tiché pokračování. Oddělené prostředí — agent běží v účtu a segmentu, odkud se nedostane do zbytku sítě. Časově omezená práva — vyšší oprávnění platí jen po dobu úlohy. Vypínač — ověřená cesta, jak agenta okamžitě zastavit a zneplatnit mu přihlášení. NCSC to formuluje tvrdě: co neumíte pochopit, sledovat a zastavit, není připravené k nasazení.
Pod tím vším leží obyčejná IT hygiena. Agent, který smí do systému zapisovat, je další důvod mít otestované zálohování — obnova je jediná spolehlivá odpověď na hromadnou nesprávnou změnu. Kde data při zpracování jsou, rozebírá AI bez cloudu: které agendy nesmí odejít ze sítě.
Agent patří do evidence přístupů jako zaměstnanec
Užitečný model pro majitele firmy: agent s přístupem k datům je další položka v evidenci přístupů. Má vlastní identitu, jmenovaného vlastníka odpovědného za jeho chování, vymezený rozsah práv a datum revize. Z toho plynou povinnosti, které u lidí děláte automaticky: změní se proces — přehodnotí se přístupy; agent skončí — přístupy se ruší včetně tokenů a klíčů; při roční kontrole se prochází i agenti. A práva se nabalují stejně jako u lidí: co se na pilot rozšířilo „jen dočasně”, zůstane, dokud to někdo nesebere.
Otázky, které položit dodavateli AI agenta
Tabulku si vezměte na jednání. „To řeší náš model” není odpověď.
| Otázka | Proč se ptát | Odpověď, která obstojí |
|---|---|---|
| Jaká oprávnění agent dostane a do kterých systémů? | Rozsah práv určuje strop možné škody. | Jmenný seznam systémů, rolí a rozsahů; oddělené čtení a zápis; žádný administrátorský účet. |
| Co přesně se loguje a kde ten log je? | Bez záznamu volaných akcí se incident nedá vyšetřit. | Identita, pokyn, operace, čas, oprávnění a výsledek; uloženo mimo agenta, s danou dobou uchování. |
| Co se stane, když agent chybuje nebo dostane podvržený pokyn? | Ukáže, jestli dodavatel počítá se selháním. | Meze škody, zastavení při anomálii, upozornění na člověka, cesta k nápravě. |
| Které akce potvrzuje člověk a jak to vypadá? | Bez potvrzování jde chyba rovnou do provozu. | Vyjmenované kategorie (peníze, mazání, hromadná komunikace, export, změna práv) a potvrzení s konkrétním obsahem akce. |
| Kde běží data a kdo k nim má přístup? | Určuje, kam odchází obsah faktur, smluv a pošty. | Lokalita zpracování, jmenovaní zpracovatelé, nakládání s daty pro trénink, smluvní ošetření. |
| Jak agenta okamžitě vypnu? | Vypínač se nesmí hledat až při incidentu. | Vyzkoušený postup zastavení a zneplatnění přihlášení, včetně toho, kdo ho smí spustit. |
Často se ptáte
Jak zavést agenta, aniž se firma zastaví?
Pilotem na jednom procesu s malým dopadem, kde agent nejdřív jen čte a připravuje návrhy ke schválení. Teprve když se na záznamech ukáže, že dávají smysl, uvolní se mu zápis — nejdřív u vratných akcí, u nevratných až nakonec.
Týká se to i malé firmy s pěti lidmi?
Ano, a v něčem víc než velké. Malá firma obvykle nemá oddělené systémy a role, takže jeden účet vidí do všeho — a agent pověšený na takový účet zdědí kompletní přístup. Proto se vyplatí začít oddělením práv, ne technologií.
Když použijeme známou platformu, není to vyřešené za nás?
Část ano — velcí poskytovatelé dodávají filtry, auditní záznamy i identitu pro agenty. Rozsah oprávnění, povolené nástroje, pravidla pro potvrzování a to, kam agent smí sáhnout ve vaší síti, za vás ale nikdo nenastaví.
Poznáme vůbec, že se někdo o injektáž pokusil?
Jen pokud se logují volání nástrojů a sleduje se neobvyklé chování — pokus sáhnout mimo obvyklý rozsah, náhlý nárůst počtu akcí. Z odpovědi v chatu se to nepozná.
ITHOPE staví v Brně a okolí AI automatizace tak, aby se daly provozovat bez slepé důvěry v model: s vymezenými oprávněními, potvrzováním citlivých akcí a auditní stopou, ze které jde zpětně poskládat, co se stalo. Které procesy se hodí pro začátek, rozebírá AI automatizace pro firmy; na správu IT a zálohování i ostatní služby se podíváte v sekci IT pro firmy. Když z rozboru vyjde, že daný proces na agenta zatím nepatří, řekneme to.
Zdroje
- OWASP Top 10 for LLM Applications — prompt injection na prvním místě (LLM01), nadměrná samostatnost agentů jako samostatná položka.
- OWASP: LLM01 Prompt Injection — přímá a nepřímá injektáž, vstup nemusí být pro člověka viditelný, lidské schválení u privilegovaných operací.
- OWASP: Excessive Agency — zbytečné funkce, oprávnění a autonomie; omezení práv na minimum, schvalování akcí s velkým dopadem, logování, limity frekvence.
- NCSC: Thinking carefully before adopting agentic AI — stanovisko britského úřadu z 15. 5. 2026: minimální přístup na nejkratší dobu, dočasné přihlašovací údaje, sledování chování.
- Microsoft: Defend against indirect prompt injection attacks — vrstvená obrana s předpokladem, že část útoků projde; potvrzování rizikových akcí člověkem.
- Microsoft: Least privilege for AI agents — vlastní identita agenta s vlastníkem, role omezené na úlohu, povolené nástroje, obsah auditního záznamu.
- Microsoft Purview: Audit log activities — auditní události pro spuštění agenta, volání nástroje a zásah ochranného mechanismu.