A Google biztonsági blogja 2025 júniusában konkrét technikai megoldásokat tett közzé arra, hogyan védekezhetnek a fejlesztők és rendszergazdák a mesterséges intelligenciát célzó prompt injection típusú támadások ellen. Az ajánlások célja nem a riadalomkeltés, hanem egy gyakorlati védelmi keretrendszer bemutatása: egy többrétegű védelem, amely architekturális szinten is gátat vethet a manipulált utasítások beépülésének az AI-rendszerek működésébe.
Prompt injection – a támadás lényege
A prompt injection (szó szerinti fordításban: „utasítás-befecskendezés") lényege, hogy a mesterséges intelligenciát irányító rendszerbe olyan külső szöveg kerül, amely megkerüli az eredeti utasításokat, és manipulálja a válaszokat. Ez a támadási forma különösen veszélyes a LLM-alapú rendszerekben (pl. ChatGPT, Gemini, Claude), amelyek szöveges input alapján hoznak döntéseket vagy generálnak válaszokat.
A prompt injection lehet:
- Indirekt (pl. felhasználói tartalommal rejtett parancsok)
- Direkt (pl. a rendszer kérésére adott direkt félrevezető utasítás)
- Játékos vagy szimulált – amikor tesztelési céllal próbálják kijátszani a modellt
A következmények súlyosak lehetnek: az AI eltérhet a szándékolt működéstől, kiadhat bizalmas információt, vagy akár félrevezető, káros válaszokat is adhat.
A Google javasolt védelmi keretrendszere
A Google 2025. júniusi biztonsági ajánlásai egy többrétegű, biztonságcentrikus szemléletre épülnek. Nem csupán egyes funkciókat, hanem az egész architektúrát tekintik védendőnek.
A főbb javaslatok:
1. Kód és adat szigorú szétválasztása
Az LLM-ek ne kapjanak közvetlen hozzáférést sem adatbázishoz, sem külső API-hoz. A modellt csak egy közbenső réteg szabadon strukturált válaszai alapján szabad engedni dönteni.
2. LLM-sandboxolás
Az LLM kimenete ne kerüljön egyből végrehajtásra. Ehelyett egy sandbox-környezetben, limitált hozzáféréssel történjen a futtatás vagy válaszértelmezés. Ez csökkenti a támadó által becsempészett logika esélyét.
3. Input-ellenőrzés (input sanitation)
A felhasználótól vagy harmadik féltől származó szövegeket még az LLM inputba illesztés előtt tisztítani kell. Például HTML-tag-ek vagy gyanús karakterminták kiszűrésével.
4. Többszintű prompt összeállítás
Ne egyetlen rétegből épüljön fel az LLM prompt. Érdemes különválasztani a rendszerpromptot (alap viselkedés), a felhasználói szándékot, és az LLM-nek átadott inputot.
5. Biztonsági tesztelés és red teaming
Szimulált támadásokkal (prompt injection tesztekkel) rendszeresen vizsgálni kell a rendszer sérülékenységét. A "red team" hozzáállás célja: saját rendszereink kijátszásával megelőzni a valós támadásokat.
6. Auditálhatóság és naplózás
Minden LLM-interakció naplózása, visszakereshetősége kulcsfontosságú, ha gyanús viselkedést kell rekonstruálni. A prompt injection nem mindig látványos – a nyomozás csak audit-logokkal lehetséges.
7. Részleges autonómia
Az LLM ne kapjon globális hozzáférést például a teljes e-mail vagy fájlrendszerhez. A hozzáférések mindig legyenek kontextusfüggők és szűk körűek.
A jövő AI-rendszerei nem lehetnek védtelenek
A prompt injection egy új típusú, de egyre gyakoribb támadási forma, amely a mesterséges intelligenciák „logikai vakságát" használja ki. A Google szerint az LLM-ek nem tekinthetők „megbízható komponensnek" ugyanúgy, ahogy egy külső beszállító sem az, akinek kódját nem auditáltuk.
Ez az álláspont sok fejlesztőt kijózaníthat: az LLM-ekre épített rendszerek nem működhetnek hagyományos input–output logikával. Ehelyett elengedhetetlen egy újfajta, architekturális szintű biztonsági szemlélet, amely az LLM-et inkább kreatív segédeszköznek, mint döntéshozónak kezeli.