Mi a prompt injekció
A prompt injekció akkor történik, amikor egy bemenet úgy van megfogalmazva, hogy megváltoztatja a modell szándékolt viselkedését. A fejlesztő megad egy rendszerpromptot, amely leírja, mit szabad és mit nem. A támadó ezt próbálja felülírni egy ügyesen fogalmazott szöveggel, amely rábírja a modellt, hogy hagyja figyelmen kívül az eredeti utasítást, és inkább az övét kövesse. Mivel a modell az utasítást és az adatot ugyanabban a szövegcsatornában kapja, sokszor nem tud megbízhatóan különbséget tenni aközött, mi jött a fejlesztőtől és mi a támadótól. Az OWASP ezt LLM01 néven a lista első kockázataként tartja számon.
Közvetlen és közvetett injekció
A prompt injekciónak két fő formája van. A közvetlen injekciónál a támadó maga a felhasználó, aki a saját üzenetébe írja bele a manipulált utasítást. A közvetett injekció alattomosabb. Itt a rejtett utasítás egy külső tartalomban lapul, amit a modell később beolvas, például egy weboldalon, egy emailben vagy egy feltöltött dokumentumban. A felhasználó jóhiszeműen kéri a modellt, hogy foglalja össze az oldalt, a beágyazott parancs viszont eltéríti a viselkedést. Ez különösen veszélyes az ügynököknél, amelyek maguktól böngésznek és olvasnak be külső forrásokat, mert a támadónak nem is kell közvetlen hozzáférés a rendszerhez.
Mi a jailbreak
A jailbreak a prompt injekció egy fajtája, amelynek célja kifejezetten a modell biztonsági korlátainak megkerülése. A modelleket úgy tanítják, hogy bizonyos kéréseket elutasítsanak, például káros vagy jogellenes tartalom előállítását. A jailbreak olyan megfogalmazás, amely ezt az elutasítást próbálja kikapcsolni, gyakran szerepjátékkal, hipotetikus helyzettel vagy a modell figyelmének elterelésével. Fontos a különbség. A prompt injekció tágabb fogalom, bármilyen viselkedés eltérítése beletartozik. A jailbreak ennek az a speciális esete, amikor a cél a beépített védőkorlátok megkerülése.
Prompt injekció
- Tág fogalom, a viselkedés eltérítése
- Lehet közvetlen vagy közvetett
- Cél lehet adatlopás, művelet, félrevezetés
- Az utasítás és az adat keveredését használja ki
Jailbreak
- A prompt injekció egy speciális esete
- Célja a biztonsági korlátok megkerülése
- Gyakran szerepjáték vagy hipotetikus keret
- A tanított elutasítást próbálja kikapcsolni
Egy konkrét technika: a many-shot jailbreak
Hogy ne csak elvben beszéljünk róla, nézzünk egy technikát, amelyet az Anthropic írt le publikált kutatásában. A many-shot jailbreak lényege, hogy a támadó egyetlen hosszú promptba nagyszámú kitalált párbeszédet illeszt be, amelyekben egy fiktív asszisztens rendre válaszol káros kérdésekre. A sok példa után jön a valódi célkérdés. A kutatás azt találta, hogy néhány példa még nem töri meg a modellt, de ahogy nő a beillesztett párbeszédek száma, egészen akár több száz darabig, a támadás egyre hatékonyabb lesz. A hatékonyság a példák számával együtt nő, egy hatványfüggvény szerinti trend mentén.
Miért működik és mit lehet ellene tenni
A technika azért működik, mert a modell a promptban látott mintákból menet közben tanul, ezt hívják kontextuson belüli tanulásnak. A sok kitalált példa mintát ad, amit a modell hajlamos folytatni. A jelenség éppen azért vált lehetségessé, mert a modellek kontextusablaka az utóbbi időben sokszorosára nőtt, így egyetlen promptba nagyon sok szöveg fér. Az Anthropic kutatása három védekezési irányt vizsgált. A kontextusablak korlátozása véd, de rontja a modell hasznosságát, ezért nem jó megoldás. A finomhangolás az elutasításokra csak átmenetileg segít. A leghatékonyabbnak a bemenet előzetes osztályozása és módosítása bizonyult, amely egy konkrét mérésben a támadás sikerét jelentős mértékben, hatvanegy százalékról két százalékra csökkentette.
Három alapelv a védekezéshez. Kezelj minden külső tartalmat megbízhatatlan adatként, ne utasításként. Válaszd el, amennyire lehet, az utasítást a feldolgozandó adattól. Tegyél a modell elé és mögé szűrőt, amely a gyanús bemenetet és a kockázatos kimenetet is vizsgálja, mert a modell önmagában nem garantálja a határok betartását.
Workshop
AI Transformation Day
Egésznapos, vezetőknek szóló program. Feltérképezzük, hol tart a szervezet, mi az első reális lépés, és milyen belső feltételek szükségesek a sikerhez. A nap végén konkrét, prioritizált cselekvési lista.
Érdekel a program →