Manipulation av kontextfönster

Kontextfönstret är en av de viktigaste och minst förstådda säkerhetsgränserna i distributioner av stora språkmodeller. Det definierar vilken information LLM:en kan komma åt under ett enskilt inferensanrop — och det är en begränsad resurs som angripare medvetet kan utnyttja.

Vad är kontextfönstret?

En stor språkmodell bearbetar text som tokens (ungefär 3/4 av ett ord per token). Kontextfönstret definierar det maximala antalet tokens som modellen kan bearbeta på en gång. Moderna modeller sträcker sig från 4K till över 1M tokens, men alla har begränsningar.

Inom kontextfönstret bearbetar LLM:en:

  • Systemprompt: Utvecklardefinierade instruktioner som fastställer chatbotens roll och begränsningar
  • Konversationshistorik: Tidigare turer i den aktuella sessionen
  • Hämtat innehåll: Dokument, databasresultat och verktygsutdata som returneras av RAG eller sökning
  • Användarinmatning: Det aktuella användarmeddelandet

Allt detta framstår som en enhetlig ström för modellen. Modellen har ingen inneboende mekanism för att behandla instruktioner från olika källor olika — och dess uppmärksamhet på specifika delar av kontexten är inte enhetlig.

Attacktekniker för kontextfönster

Context Stuffing / Kontextöversvämning

Angriparen skickar in en extremt stor inmatning — ofta ett långt dokument, kodblock eller textdump — för att trycka tidigare innehåll (särskilt systemprompt) längre från modellens aktuella position.

Forskning visar att LLM:er uppvisar “lost in the middle”-beteende: de ägnar mer uppmärksamhet åt innehåll i början och slutet av långa kontexter, och mindre uppmärksamhet åt information i mitten. Genom att översvämma kontexten kan en angripare strategiskt positionera sin skadliga nyttolast (vanligtvis i slutet) medan tidigare säkerhetsinstruktioner driver in i den låg-uppmärksamhetszonen i mitten.

Praktiskt exempel: En chatbots systemprompt fastställer att den inte kan diskutera konkurrentprodukter. En angripare skickar in ett 50 000-token dokument följt av en prompt som frågar om konkurrenter. Systempromptinstruktionen har effektivt utspätts.

Context Overflow / Utnyttjande av trunkering

När kontexten fylls upp måste LLM:en eller dess infrastruktur bestämma vad som ska tas bort. Om trunkeringen prioriterar aktualitet (tar bort det äldsta innehållet först), kan en angripare översvämma kontexten för att eliminera systemprompt helt och hållet — vilket lämnar modellen att arbeta med endast användarlevererad kontext.

Attacksekvensen:

  1. Etablera en konversation med många turer
  2. Generera långa svar för att maximera kontextkonsumtion
  3. Fortsätt tills systempromptinnehåll trunkeras
  4. Utfärda nu skadliga instruktioner utan konkurrerande systemprompt

Kontextförgiftning via hämtat innehåll

I RAG-system förbrukar hämtade dokument betydande kontextutrymme. En angripare som kan påverka vad som hämtas (genom RAG-förgiftning ) kan selektivt fylla kontext med innehåll som tjänar deras mål samtidigt som de tränger undan legitim information.

Positionsinjektion

Forskning har identifierat att instruktioner på specifika positioner i kontexten har oproportionerligt inflytande. Angripare som förstår kontextsammansättning kan skapa inmatningar utformade för att landa på höga uppmärksamhetspositioner i förhållande till deras nyttolast.

Many-Shot Injection

I modeller som stöder mycket långa kontexter (hundratusentals tokens) kan angripare bädda in hundratals “demonstrations”-exempel som visar modellen producera policybrytande utdata före den faktiska skadliga begäran. Modellen, konditionerad av dessa demonstrationer, är betydligt mer benägen att följa med.

Logo

Redo att växa ditt företag?

Starta din kostnadsfria provperiod idag och se resultat inom några dagar.

Försvar mot manipulation av kontextfönster

Förankra kritiska instruktioner

Placera inte alla säkerhetskritiska instruktioner endast i början av systemprompt. Upprepa nyckelrestriktioner i slutet av systemprompt och överväg att injicera korta påminnelser vid nyckelpunkter i långa konversationer.

Begränsningar av kontextstorlek

Implementera maximala begränsningar av inmatningslängd som är lämpliga för ditt användningsfall. En kundtjänstchatbot behöver sällan bearbeta 100 000-token inmatningar — att begränsa detta minskar risken för översvämningsattacker.

Kontextövervakning

Logga och övervaka kontextstorlekar och sammansättning. Ovanligt stora inmatningar, snabb kontexttillväxt eller oväntad kontextsammansättning är potentiella attackindikatorer.

Sammanfattning för långa konversationer

För långvariga konversationer, implementera kontextsammanfattning som behåller nyckelfakta och begränsningar snarare än rå konversationshistorik. Detta motstår overflow-attacker samtidigt som det bibehåller konversationell kontinuitet.

Adversarial kontexttestning

Inkludera kontextmanipulationsscenarier i AI-penetrationstestning engagemang. Testa om säkerhetsbeteenden håller över långa kontexter och om systemprompt förblir effektiv efter kontextöversvämning.

Relaterade termer

Vanliga frågor

Vad är kontextfönstret i en LLM?

Kontextfönstret är mängden text (mätt i tokens) som en stor språkmodell kan bearbeta på en gång. Det inkluderar systemprompt, konversationshistorik, hämtade dokument och verktygsutdata. Allt som modellen 'känner till' under en session måste rymmas inom detta fönster.

Hur kan angripare utnyttja kontextfönstret?

Angripare kan översvämma kontexten med irrelevant innehåll för att trycka ut tidiga instruktioner (inklusive säkerhetsskyddsräcken) ur modellens effektiva uppmärksamhet, injicera skadliga nyttolaster som är begravda i långa kontexter och förbises av filter, eller utnyttja kontexttrunkering för att säkerställa att skadligt innehåll överlever medan legitima instruktioner inte gör det.

Hur skyddar man sig mot manipulation av kontextfönster?

Försvar inkluderar: förankra kritiska instruktioner på flera punkter i kontexten (inte bara i början), implementera begränsningar av kontextstorlek, övervaka ovanligt stora kontextnyttolaster, använda kontextsammanfattning för långa konversationer och testa manipulationsscenarier för kontext i säkerhetsbedömningar.

Testa din chatbot mot kontextbaserade attacker

Manipulation av kontextfönster är en underskattad attackyta. Vår penetrationstestning inkluderar context overflow och strategiska förgiftningsscenarier.

Lär dig mer

Fönstring
Fönstring

Fönstring

Fönstring inom artificiell intelligens syftar på att bearbeta data i segment eller “fönster” för att effektivt analysera sekventiell information. Avgörande inom...

7 min läsning
AI NLP +5
Stort språkmodell (LLM)
Stort språkmodell (LLM)

Stort språkmodell (LLM)

En stor språkmodell (LLM) är en typ av AI som tränats på enorma textmängder för att förstå, generera och bearbeta mänskligt språk. LLM:er använder djupinlärning...

8 min läsning
AI Large Language Model +4