𝗟𝗟𝗠 𝗣𝗿𝗼𝗺𝗽𝘁 𝗜𝗻𝗷𝗲𝗰𝘁𝗶𝗼𝗻 𝗲𝗻 𝗚𝘂𝗮𝗿𝗱𝗿𝗮𝗶𝗹 𝗦𝗲𝗰𝘂𝗿𝗶𝘁𝘆
LLM's hebben geen harde grens tussen instructies en data. Alles in het contextvenster is één stroom van tokens. Prompt injection vindt plaats wanneer data van een aanvaller fungeert als instructies. Je kunt niet alleen door te filteren veiligheid bereiken. Je moet het beheren met defense-in-depth.
Het falen van gangbare verdedigingsmechanismen:
- Keyword Blocklists: Aanvallers gebruiken synoniemen, spelfouten of verschillende talen om deze te omzeilen. Het filteren van strings filtert geen intentie.
- Output Redaction: Aanvallers kunnen geheimen fragmenteren of coderen, waardoor een letterlijke string-match mislukt.
- LLM Judges: Een apart model kan via social engineering worden misleid om te geloven dat een geheim onschadelijk is.
- Human Review: Mensen zien gerenderde tekst, geen ruwe bytes. Ze kunnen de verborgen karakters die worden gebruikt bij ASCII smuggling niet zien.
ASCII Smuggling is een grote bedreiging. Het maakt gebruik van onzichtbare karakters zoals Unicode Tags of zero-width spaces om instructies te verbergen. Het model leest ze, maar de mens ziet niets. Dit maakt identity spoofing en data-exfiltratie via e-mail of agenda's mogelijk.
Hoe je jouw applicatie kunt verdedigen:
- Sanitize raw payloads: Verwijder control characters en zero-width karakters voordat ze het model bereiken.
- Gebruik allowlists: Definieer de specifieke Unicode-categorieën die je nodig hebt, in plaats van te jagen op de slechte.
- Normaliseer data: Gebruik NFKC-normalisatie op alle inputs.
- Minimaliseer geheimen: Plaats geen gevoelige data in het contextvenster als het model dit niet nodig heeft.
- Behandel RAG als onbetrouwbaar: Ga ervan uit dat elk document dat je voor een model ophaalt een potentieel injectievector is.
- Let op anomalieën: Markeer inputs waarbij de zichtbare lengte verschilt van het aantal ruwe code-points.
Beveiliging is een fout in de pipeline, niet alleen een fout in het model. De oplossing ligt in je applicatiecode.
Bron: https://dev.to/geekaara/llm-prompt-injection-guardrail-security-glm
Optionele leercommunity: https://t.me/GyaanSetuAi