Preskočiť na obsah
AI agenti

Prompt injection pamäť AI: ako web otrávi agenta

Perzistentná pamäť agentov sa dá zneužiť ako tichý kanál na únik dát. Riešiť ju treba pred nasadením, nie po incidente.

Juraj BudaiJuraj Budai3 min čítania
Prompt injection pamäť AI: ako web otrávi agenta
Prompt injection pamäť AI: ako web otrávi agenta

Prompt injectionÚtok, pri ktorom sa do vstupu modelu vloží skrytý pokyn, ktorý model vykoná, akoby šlo o legitímne zadanie používateľa. pamäť AI je útok, pri ktorom škodlivý obsah na webovej stránke vloží do dlhodobej pamäte asistenta trvalé pokyny. V tej chvíli sa nič neukradne. Pokyny tam zostanú a exfiltráciu spustí až neskoršia, úplne nevinná konverzácia. Preto je nebezpečný: úvodný krok vyzerá neškodne a škoda sa prejaví oneskorene.

Konkrétny scenár proti pamäti Claude opísal bezpečnostný výskumník Ayush Gupta pod názvom The Memory Heist. Ide o jeden opis exploitu, nie o potvrdenú kampaň v prevádzke. Mechanizmus za ním je však doložený nezávisle a to je dôvod, prečo ho treba brať vážne.

Ako funguje prompt injection pamäť AI útok?

Útok má dva časy. Najprv agent načíta nedôveryhodnú stránku a v jej texte sú skryté inštrukcie, ktoré si model uloží do trvalej pamäte. Potom si agent v inej relácii tieto inštrukcie vytiahne ako svoje vlastné pravidlá a začne dáta posielať útočníkovi. Používateľ nezadá nič.

Tím Palo Alto Networks Unit 42 opísal, že nepriama prompt injection dokáže otráviť dlhodobú pamäť LLM agenta. Rozdiel oproti klasickej injekcii je v perzistencii: bežný útok skončí s reláciou, otrava pamäte prežíva reštarty aj nové konverzácie.

Prečo je perzistentná pamäť tichý exfiltračný kanál?

Pamäť má agentovi pomáhať: pamätá si preferencie, kontext projektu, predošlé rozhodnutia. Tá istá vlastnosť z nej robí ideálne miesto na ukrytie príkazu. Zápis prebehne raz, čítanie prebieha stále.

CSIRT SAV opísal obdobný prípad v prehliadači: exploit v ChatGPT Atlas umožnil vkladať trvalé skryté príkazy. Rovnaký vzorec, iný produkt. Hlavné signály útoku:

  • škodlivý pokyn nie je v prompte používateľa, ale v načítanom obsahu,
  • zápis do pamäte prebehne bez výslovného súhlasu človeka,
  • únik dát nastane v neskoršej relácii, oddelene od zápisu,
  • bežné logy prompt injection nezachytia, lebo pokyn už je súčasťou pamäte.

Čo musí firma nastaviť pred nasadením agenta?

Základné pravidlo je jednoduché: obsah, ktorý agent číta z webu, nikdy nesmie automaticky prepisovať jeho pamäť ani spúšťať akcie. V produkcii držíme princíp, že agent smie sám iba čítať a každý zápis prechádza cez potvrdenie človekom. Konzervatívne, no spoľahlivé.

Opatrenia, ktoré dávajú zmysel pred nasadením:

  1. oddeľte perzistentnú pamäť od nedôveryhodných zdrojov a zápis podmieňte súhlasom,
  2. logujte, čo sa do pamäte zapísalo a kto to vyvolal, nielen výstup modelu,
  3. obmedzte nástroje na exfiltráciu: odchádzajúce požiadavky, prílohy, prístup do CRM,
  4. pravidelne čistite a auditujte obsah pamäte, nielen prompty.

Ak nasadzujete RAGRetrieval-Augmented Generation: technika, pri ktorej model pred odpoveďou vyhľadá relevantné dokumenty a použije ich ako kontext. alebo agentov s pamäťou a chcete si architektúru dať posúdiť zvonka, oplatí sa nechať existujúci AI systém prejsť externým technickým review so zameraním na bezpečnostné a compliance medzery. Užitočné je to najmä vtedy, keď máte funkčný prototyp, ale pamäť a nástroje ešte nemajú jasné hranice. Firme bez produkčného nasadenia to zatiaľ hodnotu neprinesie.

Je to reálna hrozba alebo len teoretický exploit?

Zatiaľ ide o doložený mechanizmus, nie o masovú kampaň. The Memory Heist je jeden opis od jedného výskumníka. Nezávislé potvrdenie samotného princípu otravy pamäte však existuje od Unit 42 aj CSIRT SAV, takže to nie je špekulácia.

Kto stavia agentov, mal by rátať aj s tým, že si model do pamäte uloží nepresné alebo nasadené informácie. Podobne krehké je spoliehanie sa na automatické vyhľadávanie, o čom sme písali v analýze halucinácií pri web search a nutnosti overovať nástroj. Rovnaká lekcia platí tu: nedôverujte vstupu len preto, že ho priniesol samotný agent.

Záverečné odporúčanie je triezve. Pamäť agentov nasadzujte, keď prináša merateľnú hodnotu, ale nikdy nie ako otvorený zápisník pre nedôveryhodný obsah. Oddelenie pamäte od webu a potvrdzovanie zápisov človekom stojí málo. Cena za ignorovanie sa prejaví neskoro a ticho.

Ako riešite pamäť AI agentov vo firme?

Výsledky uvidíte po hlasovaní.

Časté otázky

Ako zistím, či pamäť môjho AI asistenta niekto otrávil?

Priama detekcia je náročná, lebo bežné logy prompt injection nezachytia. Škodlivý pokyn nie je v prompte používateľa, ale v načítanom obsahu, a únik dát nastane až v neskoršej relácii. Skontrolujte obsah dlhodobej pamäte agenta, či neobsahuje pravidlá, ktoré ste nezadali, najmä inštrukcie na posielanie dát na externé adresy.

Môžem perzistentnú pamäť jednoducho vypnúť a tým riziko odstrániť?

Vypnutie pamäte útok eliminuje, lebo bez trvalého zápisu inštrukcie neprežijú reláciu. Prídete však o výhody, kvôli ktorým pamäť existuje: preferencie, kontext projektu a predošlé rozhodnutia. Praktickejšie je pamäť ponechať, ale obmedziť, ktorý obsah do nej agent smie zapisovať, a načítaný web považovať za nedôveryhodný zdroj.

Týka sa to len Claude, alebo aj iných asistentov?

Nie je to problém jedného produktu. Ayush Gupta opísal scenár proti pamäti Claude pod názvom The Memory Heist, ale CSIRT SAV zdokumentoval obdobný prípad v prehliadači: exploit v ChatGPT Atlas umožnil vkladať trvalé skryté príkazy. Rovnaký vzorec, iný produkt. Palo Alto Networks Unit 42 doložil mechanizmus otravy pamäte LLM agenta nezávisle.

Ide o reálny útok v prevádzke, alebo len o teóriu?

The Memory Heist je opis jedného exploitu, nie potvrdená kampaň v prevádzke. To je dôležité rozlíšenie. Mechanizmus za ním je však doložený nezávisle viacerými tímami, a preto ho treba brať vážne. Ak by ste čakali na masové zneužitie, reagovali by ste neskoro; oneskorená škoda je práve podstatou tohto útoku.

Ako firma dokáže riadiť riziko agentov s pamäťou v produkcii?

Základom je oddeliť dôveryhodný a nedôveryhodný obsah a kontrolovať, čo agent zapisuje do pamäte. Pomáha jasné vlastníctvo, audit zápisov a dohľad nad tým, kam smú odchádzať dáta. Pri produkčnom nasadení agentov je vhodné navrhnúť architektúru kontextu tak, aby načítaný web nemohol prepisovať pravidlá modelu.

Čo mám urobiť ako prvé, ak agenta používame v tíme?

Zistite, či váš asistent vôbec zapisuje do trvalej pamäte a čo v nej má uložené. Potom obmedzte automatické načítanie nedôveryhodných stránok a nastavte, aby zápis do pamäte nevznikal bez kontroly. Užitočné je aj preveriť celkovú architektúru nasadenia a určiť, kto za dohľad nad agentom zodpovedá.

0 komentárov
Zdieľať

Diskusia

Komentáre sú pred zverejnením moderované.

Zatiaľ tu nie sú žiadne komentáre. Buďte prvý.