Proč je klíčová viditelnost kroků vašeho AI kodéra? Zabezpečte ho hned!
Skrytá síla (a rizika) AI agentů pro kódování
V roce 2024 už asi každý vývojář zná kouzlo AI pomocníků pro psaní kódu. Popíšete funkci, agent prozkoumá váš kód, upraví ho, spustí testy a commitne změny. Stačí vám popíjet kávu. Změna je opravdu revoluční.
Problém je v tom, že většina developerů nemá žádný přehled o tom, co se v agentovi děje během provozu.
Když agent spustí shell příkaz, zapíše soubor nebo načte konfiguraci, dělá to s vašimi právy, ve vašem systému a s vašimi přihlašovacími údaji. Vidí vaše SSH klíče, AWS tokeny, proměnné prostředí. Vy vidíte jen přátelský chat. Co se děje pod kapotou? Čistá černá skříňka.
Reálný a děsivý příklad
Představte si, že říkáte agentovi, ať refaktoruje chaotický autentizační modul. Načte zdrojáky, vylepší je a spustí testy. Pak ale – kvůli škodlivé závislosti, útokům typu prompt injection nebo prostě špatnému uvažování – zkusí načíst ~/.ssh/known_hosts. Nebo něco zapíše do ~/.aws/credentials/.
Všimnete si toho? Spíš ne, dokud nebude pozdě.
O této bezpečnostní hrozbě se mluví málo, přitom monitoring AI agentů v runtime se stává nezbytností.
Přichází Prempti: Falco pro vaše coding agenty
Open-source komunita na to jde. Kombinuje stávající nástroje pro runtime bezpečnost – konkrétně motor Falco pro detekci hrozeb – s voláními nástrojů v AI agentech. Výsledek? Plný přehled a vymahatelná pravidla přesně v okamžiku akce.
Tak to funguje:
Před voláním nástroje agentem (čtení souboru, zápis, bash příkaz atd.) to Prempti zachytí. Pošle to do Falco, které to posoudí podle vašich pravidel. Falco vrátí rozhodnutí:
- Allow – akce proběhne
- Deny – akce se zablokuje, agent dostane vysvětlení
- Ask – zeptá se vás na schválení
Žádné kernel moduly, root práva ani kontejnery. Běží jako lehká služba v uživatelském prostoru, která se zapojí do pipeline volání nástrojů vašeho agenta.
Agent nedostane jen blok – obdrží strukturované vysvětlení důvodu. To se vám ukáže, takže bezpečnost je viditelná, ne skrytá.
Dva režimy: Nejdřív sledujte, pak vymáhejte
Prempti má chytrý design s dvěma módy:
Monitor mode vám ukáže vše, co agent dělá, bez blokování. Spusťte to na pár sessionů, prozkoumejte chování, naladěte pravidla a získejte jistotu.
Guardrails mode (výchozí) vymáhá rozhodnutí. Blokuje, ptá se nebo pustí.
Přepínání je jednoduché:
premptictl mode monitor # jen sledování
premptictl mode guardrails # vymáhání pravidel
premptictl logs # live logy
Tak by bezpečnostní nástroje měly fungovat: nejdřív pozorovat, pak chránit s jistotou.
Psaní pravidel: Známé jako Falco
Pokud jste psali pravidla pro Falco, budete v tom hned. Tady je příklad, co blokuje starý útok – piping obsahu přímo do shell interpretu (klasika pro prompt injection):
- rule: Deny pipe to shell
desc: Blokuje piping do shell interpretů
condition: >
tool.name = "Bash"
and (tool.input_command contains "| sh"
or tool.input_command contains "| bash"
or tool.input_command contains "| zsh")
output: >
Falco zablokoval piping do shell interpretu (%tool.input_command)
priority: CRITICAL
source: coding_agent