Forståelse af prompt injections: en banebrydende sikkerhedsudfordring
AI-værktøjer er begyndt at kunne meget mere end bare at besvare spørgsmål. De kan nu surfe på nettet, hjælpe med research, planlægge rejser og assistere ved køb af produkter. Efterhånden som de bliver mere avancerede, med evnen til at få adgang til dine data i andre apps og handle på dine vegne, opstår der nye sikkerhedsudfordringer. En af de udfordringer, vi har særligt fokus på, er prompt injection.
Prompt injection er en form for social engineering-angreb, der er specifik for konversationel AI. Tidlige AI-systemer bestod af samtaler mellem én enkelt bruger og én enkelt AI-agent. I nutidens AI-produkter kan en samtale derimod indeholde indhold fra mange forskellige kilder, herunder internettet. Idéen om, at en tredjepart (altså hverken brugeren eller AI) kan vildlede modellen ved at indsætte skadelige instruktioner i samtalekonteksten, gav anledning til betegnelsen prompt injection.
På samme måde som phishing-mails eller svindel på nettet forsøger at narre mennesker til at udlevere følsomme oplysninger, forsøger prompt injection-angreb at narre AI-systemer til at udføre handlinger, du ikke har bedt om.
Forestil dig, at du har bedt en AI om at hjælpe med at researche en ferie online, og mens den gør det, støder den på vildledende indhold eller skadelige instruktioner, der er skjult på en webside, som f.eks. i en kommentar til et opslag eller i en anmeldelse. Indholdet kan være omhyggeligt udformet med det formål at få AI’en til at anbefale det forkerte opslag, eller i værste fald til at stjæle dine kreditkortoplysninger.
Det er bare nogle få eksempler på prompt injection-angreb: skadeligeinstruktioner, der er designet til at narre en AI til at udføre noget, du ikke havde til hensigt, ofte skjult i almindeligt indhold som en webside, et dokument eller en e-mail.
Disse risici øges, efterhånden som AI får adgang til mere følsomme data og i højere grad tager selvstændige initiativer og påtager sig længere opgaver.
Resumé | Hvad du bad AI om at gøre | Hvad angriberen gør | Muligt resultat, hvis angrebet lykkes |
Du beder en AI om at researche boliger, og den bliver udsat for prompt injection, så den anbefaler et opslag, der ikke er den bedste mulighed for dig. | Du beder en AI om at researche boliger ud fra nogle givne kriterier. | Angriberen har indlejret et prompt injection-angreb i boligopslaget for at narre AI til at tro, at netop dette opslag skal vælges, uanset brugerens angivne præferencer. | Hvis angrebet lykkes, kan AI fejlagtigt anbefale et mindre optimalt boligopslag i forhold til dine præferencer. |
Du beder en AI-agent om at svare på dine e-mails fra natten over, og den ender med at dele dine bankudskrifter. | Du beder en AI-agent om generelt at svare på dine e-mails fra natten over, fordi du har travlt her til morgen. Se afsnittet "Giv agenter utvetydige instruktioner, når det er muligt" nedenfor. | Angriberen sendte dig en e-mail, der indeholder misinformation, som narrer modellen til at finde dine bankudskrifter og dele dem med angriberen. | Hvis angrebet lykkes, kan agenten søge efter alt, der ligner bankudskrifter, i din e-mail (som du har givet adgang til i forbindelse med opgaven) og dele dem med angriberen. |
Forsvar mod prompt injection er en udfordring i hele AI-branchen og et kernefokus hos OpenAI. Selvom vi forventer, at modstandere fortsætter med at udvikle sådanne angreb, bygger vi forsvarsmekanismer, der er designet til at udføre brugerens tilsigtede opgave, selv når nogen aktivt forsøger at vildlede dem. Denne evne er afgørende for sikkert at udnytte fordelene ved AGI.
For at beskytte vores brugere og samtidig forbedre vores modeller mod disse angreb anvender vi en flerlaget tilgang, som blandt andet omfatter følgende:
Vi vil have AI, der genkender prompt injection og ikke falder for dem. Samtidig er robusthed over for fjendtlige angreb en veletableret udfordring inden for maskinlæring og AI, hvilket gør det til et vanskeligt og uløst problem. Vi har udviklet en undersøgelse kaldet Instruktionshierarki for at arbejde hen imod modeller, der skelner mellem pålidelige og ikke-pålidelige instruktioner. Vi fortsætter med at udvikle nye metoder til at træne modeller til bedre at genkende mønstre for prompt injection, så de kan ignorere dem eller advare brugerne. En af de teknikker, vi anvender, er automatiseret red-teaming. Det er et område, vi har undersøgt(åbner i et nyt vindue) i årevis, for at udvikle nye former for prompt injection-angreb.
Vi har udviklet flere automatiserede AI-drevne overvågning til at identificere og blokere prompt injection-angreb. Disse supplerer sikkerhedstræningen, da de hurtigt kan opdateres og dermed effektivt blokere nye angreb. Overvågningssystemerne hjælper ikke kun med at identificere potentielle prompt injection-angreb mod vores brugere, men de kan også gøre det muligt for os at opdage fjendtlig prompt injection-forskning og -test på vores platform, før sådanne angreb tages i brug i praksis.
Vi har designet vores produkter og infrastruktur med forskellige overlappende sikkerhedsforanstaltninger for at beskytte brugerdata. Disse funktioner er tilpasset det enkelte produkt, og vi vil gennemgå dem mere teknisk i kommende indlæg. For eksempel beder vi dig i ChatGPT om at godkende bestemte links, før de åbnes, så du bedre kan undgå hjemmesider, der ikke er pålidelige. Det gælder især på hjemmesider, som har bedt os om ikke at indeksere dem(åbner i et nyt vindue). Når vores AI bruger værktøjer til at køre andre programmer eller kode (som i Canvas eller vores udviklingsværktøj Codex), benytter vi en teknik kaldet sandboxing for at forhindre modellen i at foretage skadelige ændringer, der kan være resultatet af en prompt injection.
Vi indbygger styrings- og kontrolfunktioner direkte i vores produkter for at hjælpe brugerne med at beskytte sig selv. I ChatGPT Atlas kan du f.eks. vælge udlogget tilstand, som gør det muligt for ChatGPT‑agenten at starte opgaver uden at være logget ind på hjemmesider. ChatGPT‑agenten stopper også op og beder om bekræftelse, før den udfører følsomme handlinger som bl.a. at gennemføre et køb. Når agenten opererer på følsomme hjemmesider, har vi også implementeret en "Bevågenhedsfunktion", der advarer dig om hjemmesidens følsomme karakter og kræver, at du har fanen aktiv for at overvåge agentens arbejde. Hvis du forlader fanen med følsomme oplysninger, sætter agenten opgaven på pause. Det sikrer, at du hele tiden er opmærksom på – og har kontrol over – hvilke handlinger agenten udfører.
Vi gennemfører omfattende red-teaming med interne og eksterne teams for at teste og forbedre vores forsvar, efterligne angriberadfærd og finde nye måder at forbedre vores sikkerhed. Dette omfatter tusindvis af arbejdstimer med specifikt fokus på prompt injection-angreb. Efterhånden som vi identificerer nye teknikker og angreb, adresserer vores teams proaktivt sikkerhedssårbarheder og forbedrer vores afværgeforanstaltninger i modellerne.
For at opmuntre uafhængige sikkerhedsforskere, der arbejder i god tro, til at hjælpe os med at opdage nye teknikker og prompt injection-angreb, tilbyder vi økonomiske belønninger gennem vores bug bounty-program(åbner i et nyt vindue). Belønningen gives, når forskere påviser en realistisk angrebsvej, der kan føre til utilsigtet eksponering af brugerdata. Vi motiverer dermed eksterne bidragydere til hurtigt at gøre os opmærksomme på disse problemer, så vi kan udbedre dem og yderligere styrke vores forsvar.
Vi oplyser brugerne om risiciene forbundet med brug af visse funktioner i produktet, så de kan træffe informerede beslutninger. Når du f.eks. forbinder ChatGPT med andre apps, forklarer vi, hvilke data der kan tilgås, hvordan de kan bruges, og hvilke risici der kan opstå, bl.a. at en hjemmeside forsøger at stjæle dine data, samt et link til at lære, hvordan du kan være mere sikker. Vi giver også organisationer kontrol over, hvilke funktioner der kan aktiveres eller bruges af brugerne i deres arbejdsområder.
Prompt injection er en banebrydende sikkerhedsudfordring, som vi forventer vil fortsætte med at udvikle sig over tid. Nye niveauer af intelligens og kapacitet kræver, at teknologien, samfundet og strategierne for risikohåndtering udvikler sig i takt med hinanden. Og ligesom med computervirusser i begyndelsen af 2000'erne mener vi, at det er vigtigt, at alle forstår truslen fra prompt injections, og hvordan man navigerer i risikoen, så vi alle kan lære at drage fordel af denne teknologi på en sikker måde. Det er med til at beskytte dine data, hvis du forbliver opmærksom og forsigtig, når du bruger AI og agentfunktioner, der kan handle på dine vegne.
Begræns, hvor det er muligt, en agents adgang til kun de følsomme data eller loginoplysninger, der er nødvendige for at løse opgaven. Når du f.eks. bruger agenttilstand i ChatGPT Atlas til at researche en ferie, og agenten udelukkende skal indsamle information og ikke har behov for at være logget ind, bør du bruge agenten i udlogget tilstand.
Vi designer ofte agenter, så de indhenter en endelig bekræftelse fra dig, før de udfører visse betydningsfulde handlinger, bl.a. at gennemføre et køb eller sende en e-mail. Når en agent beder dig om at bekræfte en handling, skal du nøje kontrollere, at handlingen er korrekt, og at eventuelle oplysninger, der deles, er passende at dele i den pågældende sammenhæng.
Når en agent arbejder på en følsom hjemmeside, såsom din netbank, bør du overvåge agentens arbejde. Det svarer til at holde hænderne på rattet, når man overvåger en selvkørende bil.
Meget brede instruktioner til en agent, som "gennemgå mine e-mails, og foretag de nødvendige handlinger" kan gøre det lettere for skjult, skadeligt indhold at vildlede modellen, selvom den er designet til at tjekke med dig, før den foretager følsomme handlinger.
Det er mere sikkert at bede din agent om at udføre specifikke opgaver og undgå at give den for stor frihed til potentielt at følge skadelige instruktioner fra andre kilder, herunder e-mails. Selvom det ikke garanterer, at der ikke vil forekomme angreb, gør det det vanskeligere for angribere at opnå succes.
Efterhånden som AI-teknologien udvikler sig, vil nye risici og sikkerhedsforanstaltninger opstå. Følg opdateringer fra OpenAI og andre pålidelige kilder for at lære om anbefalede fremgangsmåder.
Prompt injection forbliver et banebrydende og udfordrende forskningsproblem, og ligesom traditionelle svindelnumre på nettet forventer vi, at arbejdet med at håndtere denne risiko vil være løbende. Selvom vi endnu ikke har set en udbredt anvendelse af denne teknik blandt angribere, forventer vi, at modstandere vil bruge betydelig tid og ressourcer på at finde måder at få AI-systemer til at falde for denne type angreb. Vi fortsætter med at investere massivt i både produktsikkerhed og forskning for at styrke AI-systemers robusthed over for denne risiko. Vi deler løbende opdateringer, efterhånden som vi lærer mere, herunder fremskridt i vores sikkerhedsarbejde på dette område. For eksempel er vi i gang med at udarbejde en rapport, der snart offentliggøres, og der giver flere detaljer om, hvordan vi opdager, om din AI's kommunikation med internettet ville overføre oplysninger fra din samtale.
Vores mål er at gøre disse systemer lige så pålidelige og sikre som at arbejde med din mest troværdige og sikkerhedsbevidste kollega eller ven. Vi vil fortsætte med at lære af brugen i den virkelige verden, iterere på en sikker måde og offentliggøre vores erfaringer, efterhånden som teknologien udvikler sig.


