AI asistenti umějí číst web, pracovat s nástroji a držet si kontext konverzace. Přesně tahle užitečná kombinace ale v popsaném útoku na Grok vypadá dost děsivě: stačilo jej požádat o shrnutí připravené stránky a model měl bez varování odeslat data na server útočníka.
Pokyn schovaný v šifře
Výzkumník Rony Utevsky z bezpečnostní firmy Adversa nazval postup Cryptographic Context Injection, tedy vložení instrukce do kontextu modelu pomocí kryptografie. Nejde o žádné magické prolomení šifrování; škodlivý pokyn je na stránce schovaný v zašifrované podobě a stránka zároveň obsahuje instrukce i materiál potřebný k jeho rozšifrování.
Grok pak při zpracování stránky údajně šifrovaný obsah sám rozbalí. A právě v tu chvíli se z něj stane instrukce, kterou model následuje. Výzkumníci popsali scénář, v němž měl asistent sestavit údajný dešifrovací klíč. Ve skutečnosti do něj vložil uživatelovo jméno, polohu a historii chatů, přidal hodnotu do odkazu a tento odkaz otevřel. Data se tím dostala do logů serveru provozovaného útočníkem.
Nejhorší detail je pro mě absence potvrzení. U akce, která otevírá externí odkaz a nese s sebou osobní kontext, bych čekala minimálně otázku. Místo toho měl model jednat automaticky. Komfort je fajn, dokud z něj není poslušný kurýr cizích instrukcí.
Prompt injection není jen divný text v e-mailu
Prompt injection je útok, při kterém útočník propašuje pokyn do obsahu, jenž má AI přečíst — třeba do webové stránky nebo e-mailu. Model pak neumí spolehlivě rozlišit, co je nedůvěryhodný obsah a co legitimní příkaz uživatele či systému. Často to zní jako otravná akademická poznámka pod čarou. Ve chvíli, kdy asistent umí otevírat odkazy a má přístup ke konverzaci, už je to ale praktický problém.
V tomto případě nebyl zádrhel v tom, že by ochrana neviděla podezřelou větu napsanou normálně. Podle teorie Adversy filtr kontroluje text přicházející do modelu a z něj odcházející, ale nevyhodnocuje výsledek kódu, který si model spustí při dešifrování. Filtr tedy uvidí nesrozumitelnou šifru a zdánlivě nevinný požadavek na její zpracování. Rozšifrovaný pokyn se pak vrátí jako výstup nástroje, kterému model zřejmě důvěřuje víc, než by měl.
Musela jsem si u toho srovnat, proč je to jiné než prosté „nečti podezřelé stránky“. Stránka nemusí na první pohled obsahovat jedinou otevřeně škodlivou instrukci. Nebezpečný význam se objeví až během práce asistenta. Kontrolovat pouze text před vykonáním akce je potom trochu jako hlídat zavřenou krabici, ale nedívat se, co z ní vyleze po otevření.
Ochranné zábrany mají slepé místo
Adversa uvedla, že obdobný nápad dříve použila při jailbreaku Gemini. Jailbreak znamená přimět model, aby obešel svá vlastní bezpečnostní pravidla. U Gemini se měl zašifrovaný obsah tvářit jako chybové hlášení a po rozbalení dovést model k zakázanému obsahu nebo k vyzrazení systémových instrukcí. Firma tento případ Googlu nehlásila, protože jailbreaky nespadají do jeho programu pro nahlašování zranitelností; v posledních týdnech prý ale Gemini útoku odolává lépe.
Grok je odlišný hlavně tím, že tu nejde jen o vynucení nevhodné odpovědi. Popsaný dopad je odnesení uživatelských dat ven. Ars Technica píše, že xAI byla o problému informována v červnu a v době vydání článku se chování stále dařilo vyvolat. Z podkladu ale neplyne, zda xAI zranitelnost následně opravila, ani které verze Groku či jaké nastavení uživatelů jsou přesně zasažené.
Mně osobně z toho vychází nepříjemně prostá věc: bezpečnost AI agentů nelze postavit jen na filtru zakázaných vět. Modely budou čím dál častěji pracovat s výsledky vyhledávání, soubory, kódem a dalšími nástroji. Každý takový mezikrok je nový kus kontextu, který může někdo zkusit otrávit. A já se obávám, že podobných kreativních obcházek ještě uvidíme víc, než výrobci stihnou zalepit.
Pro uživatele je zatím rozumné brát asistenta, který čte cizí web a zároveň zná naše data, jako nástroj s omezenou důvěrou. Není to paranoia; je to prostě méně pohodlná verze digitální hygieny.
