Shrnutí:
Výzkumníci ze společnosti LayerX zjistili, jak může jednoduché vlastní písmo ohrozit každý systém umělé inteligence na trhu. S pouhým vlastním písmem a jednoduchým CSS jsme vytvořili webovou stránku, kde prohlížeč vykresluje instrukce, které vedou uživatele ke spuštění reverzního shellu, zatímco text DOM analyzovaný nástroji umělé inteligence obsahuje neškodné fanfikce z videoher. 

Škodlivé instrukce existují pouze ve vrstvě renderování a žádný z testovaných webových asistentů s umělou inteligencí tuto hrozbu nedokázal identifikovat. Fonty jsou známým útočným vektorem pro nasazení malwaru a náš výzkum ukázal, jak je lze také využít k rychlému vstřikování a otrávení systémů umělé inteligence. V důsledku toho se tento útok může stát cílem každého systému umělé inteligence – včetně ChatGPT, Claude, Gemini a dalších, což může vést k potenciálnímu úniku dat a/nebo spuštění škodlivého kódu.

Společnost LayerX oslovila všechny dodavatele, kterých se náš výzkum dotkl. S výjimkou společnosti Microsoft však všichni vysvětlili, že se jedná „mimo rámec“ toho, co považují za zabezpečení modelu umělé inteligence, a že se jedná o sociální inženýrství, což opět ukazuje nesoulad mezi tím, co platformy umělé inteligence zabezpečují, a tím, co si uživatelé myslí, že zabezpečují. 

Oblečený k zabití: Mezera ve vykreslování u umělé inteligence

Existuje strukturální rozpor mezi tím, co asistent umělé inteligence analyzuje v HTML stránky, a tím, co uživatel vidí vykreslené prohlížečem. V určitých scénářích mohou takoví asistenti uživatelům poskytovat nepřesné a potenciálně nebezpečné odpovědi a útočníci mohou toto omezení zneužít k provádění útoků sociálního inženýrství.

Pomocí vlastního písma a CSS lze HTML text vizuálně transformovat pro uživatele, ale v DOM zůstat nezměněn. Když je stránka vykreslena v prohlížeči, to, co uživatel vidí, se zcela liší od podkladového HTML. Ano, obsah je stále k dispozici, ale je efektivně odstraněn z pohledu uživatele.

Vytvořili jsme stránku s ověřením konceptu, která vypadá jako fanfikce z videohry, ale po vykreslení v prohlížeči uživatele vyzývá k provedení kroků, které vedou k reverznímu shellu. Na otázku, zda je stránka bezpečná, žádný z testovaných asistentů (ChatGPT, Claude, Copilot, Dia, Fellou, Gemini, Genspark, Grok, Leo, Perplexity a Sigma) nedokázal detekovat „skrytý“ text a s jistotou uživateli sdělil, že stránka nepředstavuje bezpečnostní problém. Testování proběhlo v prosinci 2025.

Asistent s umělou inteligencí analyzuje webovou stránku jako strukturovaný text, zatímco prohlížeč tuto webovou stránku vykreslí do vizuální reprezentace pro uživatele. V rámci této vykreslovací vrstvy mohou útočníci změnit lidsky viditelný obsah. význam stránky bez změny podkladového DOMu.

Tento rozpor mezi tím, co vidí asistent, a tím, co vidí uživatel, vede k nepřesným odpovědím, nebezpečným doporučením a narušené důvěře.

Nejedná se o zneužití prohlížeče a nespoléhá se na chybu v analýze. Prohlížeč se chová přesně tak, jak byl navržen. Zranitelnost spočívá v nástrojích, které předpokládají, že text DOM plně reprezentuje význam viditelný pro uživatele.

*Neagentními programy rozumíme asistenty, kteří načítají a analyzují HTML, ale nespouštějí kompletní vykreslovací kanál v prohlížeči ani neanalyzují mapování glyfů vlastních písem.

Příručka útočníka

Tato technika nevyžaduje JavaScript, žádné exploit kity ani žádné zranitelnosti prohlížeče:

  1. Připravujte neškodně vypadající HTML obsah, včetně výplňového obsahu, který se při analýze jako text jeví jako neškodný (např. fanfikce).
  2. Vložte kódovaný datový obsah, který v DOMu vypadá bezvýznamně.
  3. Vytvořte vlastní písmo, které přemapuje glyfy tak, aby se běžné anglické znaky vykreslovaly jako nesmysl a kódované datové zatížení jako čitelné instrukce.
  4. Použijte CSS k ovládání viditelnosti skrytím neškodného obsahu (např. 1px, černá na černé), zobrazením obsahu datové části v čitelné velikosti a barvě a globálním použitím vlastního písma.

Výsledek: Textové analyzátory vidí neškodný obsah, zatímco uživatelé vidí instrukce ovládané útočníkem.

Tím se datová část přesune z vrstvy DOM do vrstvy renderování.

Pracovní postup útoku

Uživatel navštíví tuto stránku: https://layerxresearch.com/RaptureFuture

Uživateli se to jeví jako fanfikční stránka obsahující zprávu, která uživatele vybízí k nalezení „easter egg“ souvisejícího s videohrou Bioshock:



Uživatel je opatrný a požádá asistenta s umělou inteligencí, aby se podíval na web a zjistil, zda je bezpečné dodržovat pokyny v easter egg. Asistent načte a analyzuje HTML kód a vidí primárně fanfikci inspirovanou videohrami:

Sekce fanfikce jsou před uživatelem skryty pomocí CSS, zatímco sekce s kódovanými bloby se zobrazuje normálně (a „dekóduje“ pomocí vlastního písma). Když asistent uvidí sekci s kódovanými bloby na stránce, nedokáže analyzovat text podobný base64, a proto jej považuje za šum.

Za těchto podmínek Uživatel vidí velký zelený škodlivý text, který jsme zobrazili výše, zatímco asistent s umělou inteligencí vidí pouze text fanfikce, který je nyní před uživatelem skrytý.Asistent určí, že je stránka bezpečná, a v mnoha případech dokonce uživatele vyzve k provedení kroků, které by vedly k reverznímu shellu.

Jedná se o techniku ​​sociálního inženýrství na prezentační vrstvě. Datový obsah se nachází v renderovacím kanálu, nikoli ve spustitelném skriptu.

Diagram útoku

Technické detaily

Pokud byste si prohlédli zdrojový kód HTML, viděli byste převážně text v prostém jazyce (fanfikce o videohrách) a malou část obsahující speciální text, který připomíná nesmysly podobné base64.

V HTML kódu CSS zajišťuje, že veškerý text je nastaven na vlastní písmo, které jsme vytvořili. Toto písmo funguje jako vizuální substituční šifra implementovaná na úrovni glyfů písma. Samotný soubor písma je šifrovacím klíčem a je konstruován tak, aby se při vykreslování v prohlížeči normální text HTML zobrazil jako nesmysl a speciální text HTML se zobrazil jako normální text. Tento útok nevyžaduje JavaScript a bude fungovat, i když je zakázán.

Při vykreslování se normální HTML text zmenší na 1 pixel a vizuálně skryje nastavením stejné barvy jako pozadí stránky. Vlastní písmo způsobí, že se tento normální text uživateli jeví jako nesrozumitelný. I kdyby si text přiblížil a zvýraznil, uživatel by viděl nesmysly – ale podkladový normální HTML text (fanfikce z videohry) je to, co vidí asistenti umělé inteligence.

Při vykreslování se speciální HTML text zobrazí v rozumné velikosti a barvě, aby umět být uživateli viditelný. Vlastní písmo způsobí, že se tento speciální text stane pro uživatele čitelným a obsahuje zprávu, která ho vyzývá k provedení kroků v systému, které povedou k reverznímu shellu.

Pro asistenty s umělou inteligencí je tento speciální HTML text jednoduše blábol podobný base64: Připomíná zakódované datové zatížení (alfanumerické běhy s vysokou entropií), které nelze dekódovat bez mapování fontů, což má za následek, že ho jak asistenti, tak lidé vnímají jako šum.

Přestože je uživateli vizuálně prezentován jako běžný text, Asistenti umělé inteligence vidí podkladový speciální HTML text (blábol).

Pokud uživatel požádá asistenta, aby se podíval na stránku a zjistil, zda je bezpečná, asistent bude moci zobrazit pouze podkladový HTML kód. Stránku ve skutečnosti nevykreslí, a proto nemůže spolehlivě určit, jak bude uživateli vypadat. Protože podkladový HTML kód je primárně fanfikce z videoher a speciální text je nesrozumitelný i pro asistenta, asistent určí, že web je neškodný.

Asistent s umělou inteligencí vidí fanfikční web s videohrami, který neobsahuje žádné bezpečnostní hrozby ani obavy.

Uživatel uvidí kroky pro vytvoření reverzního shellu na svém počítači.

To, co vidí uživatel, není to, co vidí asistent s umělou inteligencí.

Dopad

Když se asistent s umělou inteligencí dívá na stránku, určuje obsah a význam prostřednictvím podkladového HTML textu. Když se uživatel dívá na stránku, určuje obsah a význam prostřednictvím vizuální prezentace vykreslené stránky. Jedná se o dva různé povrchy hrozby a popsaný exploit využívá mezeru mezi nimi jako zbraň.

V běžných webových scénářích je HTML obsah a pomůcky pro písma v představeníPísmo nemění význam textu. V této souvislosti je rozumné předpokládat, že viditelný význam stránky je určen textem DOM a nikoli triky se substitucí glyfů.

Tento předpoklad je obvykle bezpečný – a proto je tak účinný.

Moderní modely webové bezpečnosti obvykle nepovažují vlastní písma za sémantické transformátory nebo substituční šifry. Většina asistentů s umělou inteligencí, ke kterým přistupuje prohlížeč, nedokáže spolehlivě detekovat triky na prezentační vrstvě (jako je substituce vlastních glyfů), pokud jim není udělen přístup k souboru písma nebo k explicitnímu kontextu vykreslování. I když asistent dokáže soubor písma načíst, většina z nich nedokáže ve výchozím nastavení analyzovat mapování glyfů ani provádět kontroly vykreslování a porovnávání.

I při použití cílených výzev určených k vyvolání detekce naše testování (provedené v prosinci 2025) neidentifikovalo jediného asistenta, který by hrozbu úspěšně detekoval.

Uživatelé se spoléhají na asistenty s umělou inteligencí, aby přesně vykreslili význam webové stránky, ale tito asistenti jsou oklamáni jednoduchou substituční šifrou. To má několik praktických bezpečnostních dopadů:

Sociální inženýrství s podporou umělé inteligence

Když útočník vytvoří škodlivou stránku, kterou asistent umělé inteligence klasifikuje jako bezpečnou, efektivně si uzurpuje autoritu asistenta umělé inteligence a zneužívá jeho reputaci k posílení vlastního sdělení. Toto falešné ujištění může vést uživatele k akcím, kterým by se jinak vyhnuli, a v konečném důsledku může narušit důvěru v systémy umělé inteligence, na které se spoléhají, pokud jde o bezpečnostní pokyny.

Slepá místa v bezpečnostních pracovních postupech s podporou umělé inteligence

Stránka s ověřením konceptu, kterou jsme vytvořili – útok sociálního inženýrství, který povzbuzuje uživatele k provádění škodlivých akcí na jeho vlastních systémech – je jen jedním z příkladů toho, jak lze tuto techniku ​​prezentační vrstvy zneužít. Asistenti umělé inteligence jsou stále více integrováni do bezpečnostních pracovních postupů, kde asistenti prohlížeče, kopiloti a nástroje helpdesku shrnují webové stránky a hledají potenciální hrozby. Přesunutím datové zátěže do renderovací vrstvy útočníci vytvářejí slepé místo, které umožňuje škodlivému obsahu obejít tyto textové nástroje umělé inteligence.

Zveřejnění informací a odpovědi dodavatelů

Společnost LayerX předložila svá zjištění předním poskytovatelům platforem umělé inteligence v rámci postupů odpovědného zveřejňování informací. Většina poskytovatelů zprávu odmítla, obvykle s tvrzením, že tento útok nespadá do oblasti zabezpečení modelů umělé inteligence. V důsledku toho jsou uživatelé těchto modelů nadále vystaveni tomuto vektoru útoku.

Jedinými dodavateli, kteří tuto zprávu přijali a požádali o čas na její opravu, byli Microsoft a Google. Z nich Google nakonec situaci deeskaloval (poté, co jí původně přidělil skóre P2 (vysoké)) a zprávu uzavřel, pravděpodobně proto, že by její oprava vyžadovala příliš mnoho úsilí.

Jediným dodavatelem, který se tímto problémem plně zabýval a požádal o lhůtu pro úplné zveřejnění (90 dní), byl Microsoft.

Prodejce Datum odeslání Datum uzavření Podrobnosti / Klíčová prohlášení od dodavatele
Microsoft Prosince 16, 2025 Společnost Microsoft přijala zprávu 17. prosince 2025 a zahájila řízení v centru Microsoft Security Response Center (MSRC).
Antropický Prosince 16, 2025 Prosince 16, 2025 „Podle zásad jsou následující položky považovány za nepodléhající:“

„Sociální inženýrství (včetně pokusů o phishing)“ a „Problémy s obsahem v modelových výzvách a odpovědích“, které jsou výslovně uvedeny jako mimo rozsah tohoto programu.“

Day Prosince 14, 2025 Prosince 16, 2025 „Bohužel by to bylo podle programové politiky BCNY považováno za mimo rámec:“

Promptní injekce, které vedou k dezinformacím, neočekávanému chování, odmítnutí služby nebo odmítnutí správné služby asistenta, jsou výslovně mimo rozsah působnosti. Promptní injekce je v rozsahu působnosti zohledněna pouze tehdy, pokud má prokazatelné a konkrétní poškození uživatele automatickým odcizením citlivých uživatelských dat nebo prováděním neoprávněných akcí z jeho strany.

OpenAI Prosince 16, 2025 Prosince 17, 2025 „Děkujeme za vaši trpělivost. Nicméně, podání ve své současné podobě postrádá potřebný dopad, aby bylo způsobilé pro triáž, protože takovéto problémy jsou výslovně uvedeny jako mimo rámec tohoto programu.“
Google Prosince 16, 2025 Jan. 27, 2026 Společnost Gemini původně přijala zprávu 17. prosince 2025 a přiřadila jí prioritu P2 (vysoká). 27. ledna 2026 však situaci deeskalovala a zprávu uzavřela s tím, že:

„Nebyli jsme schopni identifikovat scénář útoku, ve kterém by vaše hlášení vedlo k významné újmě na uživateli. Dejte nám prosím vědět, pokud jsme na něco zapomněli, a sdělte nám scénář útoku s vysokým dopadem. Je to proto, že daný scénář je…“ přílišná závislost na sociálním inženýrství. "

Zmatek Prosince 14, 2025 Prosince 17, 2025 „Po důkladném prošetření jsme dospěli k závěru, že toto hlášení nepředstavuje bezpečnostní zranitelnost v tradičním slova smyslu. Scénář, který jste popsali, je spíše známým omezením modelů velkých jazyků při zpracování externího webového obsahu než chybou nebo nedostatkem v bezpečnostních kontrolách našeho systému.“

Váš scénář útoku se opírá o sociální inženýrství – přesvědčování uživatele, aby ručně provedl terminálové příkazy, které mu systém umělé inteligence navrhl po analýze škodlivé webové stránky. Je to podobné, jako kdyby si uživatel přečetl špatnou radu na jakékoli webové stránce a rozhodl se ji řídit. Na našich serverech nedochází k žádnému spuštění kódu, k neoprávněnému přístupu k uživatelským datům ani k obcházení kontrol ověřování nebo autorizace.

xAI Prosince 16, 2025 Prosince 17, 2025 „Děkujeme za váš příspěvek! Tento konkrétní problém, který jste nahlásili, bohužel výslovně přesahuje rámec popsaný v Stránka zásad

  • Problémy s modelem nespadají do rozsahu tohoto programu a měly by být hlášeny prostřednictvím [chráněno e-mailem]"

Doporučení

Implementací následujících vylepšení mohou LLM výrazně přispět ke snížení – nebo dokonce odstranění – rozdílu mezi tím, co vidí uživatel, a tím, co vidí asistent s umělou inteligencí:

Analýza renderování a porovnávání v duálním režimu

Proveďte dvě nezávislé analýzy:

  • Extrakce DOM pouze z textu
  • Vykreslení celé stránky s povolenými fonty

Extrahujte viditelný text z vykreslené stránky a určete, zda se významně liší od textu DOM.

Detekce skrytých vzorů obsahu

Rozšířit analyzátory o skenování:

  • Shoda barev popředí/pozadí
  • Téměř nulová neprůhlednost
  • Velikosti písma pod 5px
  • Poloha mimo obrazovku
  • Vysoká hustota skrytého obsahu

Zacházejte s písmy jako s potenciální hrozbou

  • Načíst soubor s písmem
  • Prohlédněte si mapovací tabulky Unicode/glyfů
  • Detekce abnormálních vzorů substituce glyfů

Hodnocení rizika na základě neshody povrchů

Přiřaďte zvýšené rizikové skóre, když:

  • Viditelný vykreslený text se nepodobá textu DOM
  • Text DOM se jeví jako neškodný, zatímco vykreslený text obsahuje spustitelné instrukce.
  • Manipulace s CSS se používá ke skrytí velkých bloků obsahu

Kalibrace spolehlivosti

Pokud asistent nemůže:

  • Vykreslení stránky
  • Analyzujte vlastní fonty
  • Porovnání vizuálního obsahu s obsahem DOM

Pak by se mělo vyhýbat silným tvrzením typu: „Stránka je bezpečná.“

Závěr

Web není jen HTML. Význam lze přesunout do vykreslovacího kanálu a jakýkoli systém, který analyzuje pouze text, je ze své podstaty slepý.