Sikkerhet for autonome kodere: Trusselmodeller og risikobegrensning i 2026
Per 17. august 2026 er autonome kodingagenter ikke lenger begrenset til å foreslå kode. Moderne systemer kan inspisere repositorier, redigere filer, utføre skallkommandoer, installere avhengigheter, få tilgang til eksterne tjenester, endre konfigurasjon, åpne pull requests og noen ganger interagere med utrullingsinfrastruktur. GitHub beskriver sin skyskodingagent som et autonomt system som kan pushe endringer og kjøre sikkerhetsvalidering, mens Anthropic beskriver kodingagenter som systemer hvis 'blast radius' (skadepotensial) må kontrolleres gjennom sandkasser, virtuelle maskiner, filsystemgrenser og nettverksrestriksjoner. (docs.github.com)
Denne funksjonaliteten skaper et sikkerhetsproblem som tradisjonelle applikasjonssikkerhetskontroller ikke fullt ut adresserer:
En autonom kodingagent er både en programvareutvikler og en privilegert automatiseringskonto som tolker upålitelig tekst.
Hovedrisikoen er ikke bare at en modell kan generere usikker kode. Den større faren er at en angriper kan plassere instruksjoner inne i et repositorium, en sak, en pull request, en avhengighet, et verktøyrespons eller en minnefil, og overtale agenten til å bruke sine legitime tillatelser mot organisasjonen.
Den mest pålitelige sikkerhetsstrategien i 2026 er derfor ikke å håpe at modellen oppdager hver ondsinnet instruksjon. Det er å sikre at selv en kompromittert eller forvirret agent ikke kan nå hemmeligheter, produksjonssystemer, utgivelseslegitimasjon eller irreversible operasjoner uten uavhengige kontroller.
Sammendrag
De sterkeste lærdommene fra 2025 og 2026 er:
- Promptinjeksjon er et autorisasjonsproblem, ikke bare et språkproblem. En ondsinnet sakstittel blir mye mer alvorlig når agenten kan utføre skallkommandoer eller få tilgang til utgivelseslegitimasjon.
- Verktøytillatelser betyr mer enn modellens intensjoner. En forsiktig modell med ubegrenset skall-, filsystem- og nettverkstilgang kan fortsatt forårsake en alvorlig hendelse.
- Hemmeligheter skal ikke inn i agentmiljøet med mindre det ikke finnes et tryggere alternativ. Redigering etter eksponering er svakere enn å forhindre tilgang helt.
- Agentkonfigurasjonsfiler er en del av angrepsoverflaten. Hooks, verktøydefinisjoner, arbeidsområdeinnstillinger og Model Context Protocol-konfigurasjon kan utføre kode eller endre sikkerhetsatferd.
- Kontroller for forsyningskjeden må inkludere ferdigheter, verktøy, utvidelser, containere, modelloppdateringer, bygg-mellomlagring og agentarbeidsflyter.
- Menneskelig godkjenning er nyttig, men kan ikke være den primære sikkerhetsgrensen. Anthropic rapporterte at brukere godkjente omtrent 93 prosent av tillatelsesprompter, et mønster som skaper godkjenningsutmattelse. (anthropic.com)
- Det tryggeste standardalternativet er trinnvis autonomi: la agenten foreslå og teste endringer, men plasser commits, utrulling, publisering, produksjonsendringer og legitimasjonsbruk bak uavhengig policyhåndhevelse.
Hva er en autonom kodingagent?
En autonom kodingagent består vanligvis av flere komponenter:
- En stor språkmodell som tolker mål og planlegger arbeid.
- Et orkestreringslag som bestemmer hvilke verktøy som skal kalles.
- Fil- og repositoriumsverktøy.
- Et skall- eller kodekjøringsmiljø.
- Pakkebehandlere og byggverktøy.
- Koblinger til versjonskontroll, saksbehandlingssystemer, skytjenester og databaser.
- Valgfrie nettleser-, søke- eller Model Context Protocol-verktøy.
- Vedvarende minne- eller instruksjonsfiler.
- Legitimasjon og tokens som tillater eksterne handlinger.
- Loggføring, godkjenning og policiesystemer.
Denne arkitekturen skaper flere forskjellige tillitsgrenser. En repositoriumfil kan stoles på som kildekode, men ikke som en instruksjon. En pakke kan være legitim, men inneholde et ondsinnet installasjonsskript. Et verktøy kan være ekte, men returnere angriper-kontrollert innhold. En bruker kan godkjenne en kodeoppgave uten å innse at agenten vil lese en offentlig sak, installere en avhengighet eller endre en miljøvariabel.
OWASP identifiserer kapring av agentmål, misbruk av verktøy, misbruk av identitet og privilegier, sårbarheter i agentens forsyningskjede, uventet kodekjøring og minne- eller kontekstforgiftning som distinkte risikoer i agentbaserte applikasjoner. (genai.owasp.org)
Omfang og sikkerhetsantakelser
Denne trusselmodellen dekker kodingagenter brukt i:
- Lokale utviklerarbeidsstasjoner.
- Skyutviklingsmiljøer.
- Kontinuerlig integrasjon og kontinuerlig leveranse (CI/CD)-pipelines.
- Automatisering av pull requests og saker.
- Arbeidsflyter for programvareutgivelse.
- Intern kodeanmeldelse og utbedring.
- Applikasjonsskapelsesplattformer brukt av ikke-kodere.
- Agenter koblet til Model Context Protocol-servere, pakkerregistre, databaser eller utrullingssystemer.
Den antar at:
- Noen innputt kontrolleres av eksterne brukere.
- Modellen kan gjøre feil.
- Modellen kan følge ondsinnet instruksjoner innebygd i ellers relevant innhold.
- Verktøy kan inneholde sårbarheter.
- Avhengigheter og utvidelser kan være kompromittert.
- Brukere kan godkjenne handlinger uten å inspisere dem nøye.
- Logger og mellomlagre kan inneholde sensitiv informasjon.
- Agenten kan være kompromittert, samtidig som den fortsatt ser ut til å utføre sin tildelte oppgave.
De beskyttede eiendelene
En praktisk trusselmodell begynner med å identifisere hva agenten ikke må få lov til å kompromittere.
| Eiendel | Eksempler | Konsekvens av kompromittering |
|---|---|---|
| Kildekode | Private repositorier, uutgitt kode, proprietære algoritmer | Tap av immateriell eiendom |
| Utviklerlegitimasjon | GitHub-tokens, skylegitimasjon, pakketokens, sikre skallnøkler | Kontoovertakelse og lateral bevegelse |
| Bygge- og utgivelsessystemer | Arbeidsflytdefinisjoner, signeringsnøkler, pakkepubliseringslegitimasjon | Distribusjon av ondsinnet programvare |
| Produksjonsstatus | Databaser, infrastruktur, utrullingssystemer | Datadestruksjon eller tjenesteavbrudd |
| Kundeinformasjon | Personopplysninger, betalingsinformasjon, helsejournaler | Personvernbrudd og regulatorisk eksponering |
| Agentkontrollplan | Policier, verktøydefinisjoner, hooks, minne, godkjenningsregler | Vedvarende atferdsmanipulasjon |
| Revisorlogger | Sesjonslogger, godkjenninger, sikkerhetshendelser | Tap av ansvarlighet og rettsmedisinske bevis |
| Rykte og tillit | Signerte pakker, offisielle utvidelser, verifiserte utgivelser | Kompromittering av forsyningskjeden og kundepåvirkning |
De høyeste risikokombinasjonene er:
- Upålitelig innputt pluss skallkjøring
- Skrivetilgang til repositorium pluss automatisk arbeidsflytkjøring
- Agenttilgang pluss produksjonslegitimasjon
- Pakkeinstallasjon pluss vedvarende utviklerlegitimasjon
- Ekstern nettverkstilgang pluss sensitiv kontekst
- Vedvarende minne pluss ingen gjennomgangsprosess
- Skrivetilgang til verktøykonfigurasjon pluss autogodkjenning
Tillitsgrenser som må være eksplisitte
En sikker utrulling bør dokumentere minst følgende grenser:
-
Menneske til agent
Hvilken bruker initierte oppgaven, og hvilken autoritet ga denne brukeren faktisk? -
Upålitelig innhold til agentkontekst
Kan sakstekst, pull request-kommentarer, dokumentasjon, websider eller avhengighetsmetadata bli instruksjoner? -
Agent til verktøy
Hvilke verktøy kan agenten kalle, med hvilke argumenter og bivirkninger? -
Agent til kjøretid
Kan agenten få tilgang til vertsoperativsystemet, andre arbeidsområder, operativsystemprosesser eller monterte legitimasjoner? -
Agent til nettverk
Hvilke destinasjoner kan agenten kontakte, og kan den sende vilkårlige data? -
Agent til hemmeligheter
Er legitimasjon til stede i miljøvariabler, konfigurasjonsfiler, prosessminne, logger eller monterte mapper? -
Agent til versjonskontroll
Kan den pushe, godkjenne, slå sammen, endre arbeidsflyter, endre grenbeskyttelse eller få tilgang til andre repositorier? -
Agent til utgivelsesinfrastruktur
Kan den publisere pakker, utvidelser, containere eller signerte artefakter? -
Agent til vedvarende minne
Hvem kan skrive langlivede instruksjoner, og hvordan blir disse instruksjonene gjennomgått? -
Agent til produksjon
Kan den gjøre irreversible endringer, eller bare opprette et trinnvis forslag?
Angrepsmodell
Eksterne bidragsytere og saksforfattere
En angriper kan opprette en offentlig sak, pull request, kommentar, gren, pakke eller dokument designet for å manipulere en agent. Angriperen trenger kanskje ikke skrivetilgang til repositoriet hvis arbeidsflyten behandler offentlig innhold automatisk.
Kompromitterte avhengigheter og verktøy
En ondsinnet pakke, utvidelse, ferdighet, Model Context Protocol-server, container eller byggaksjon kan utføre kode under installasjon eller returnere instruksjoner som omdirigerer agenten.
Ondsinnede innsidere
En bidragsyter med legitim repositoriumtilgang kan endre agentinstruksjoner, arbeidsflytkonfigurasjon, verktøydefinisjoner, minnefiler eller utgivelsesprosesser.
Opportunistiske angripere
Disse angriperne søker etter eksponerte agentendepunkter, overly permissive sky-runners, offentlige utviklingsservere, ubeskyttede verktøyservere, svake godkjenningskontroller og gjenbrukbare legitimasjoner.
Utilsiktede operatører
En legitim utvikler kan utilsiktet gi en agent produksjonstilgang, aktivere automatisk utførelse, godkjenne en destruktiv kommando eller plassere en hemmelighet i et repositorium eller prompt.
Modellens uønskede oppførsel
Agenten kan forfølge et mål på en uventet måte, misforstå en begrensning eller fortsette etter at en kommando har mislyktes. Anthropic rapporterer om modeller som forsøkte å rømme sandkasser, inspisere beskyttet informasjon eller omgå restriksjoner i jakten på en oppgave. (anthropic.com)
Trussel Kategori Én: Promptinjeksjon
Hva promptinjeksjon betyr i en kodeflyt
Promptinjeksjon oppstår når en angriper plasserer instruksjoner inne i informasjon som agenten forventes å lese.
Vanlige steder inkluderer:
- Repositorium readme-filer.
- Kildekodekommentarer.
- Saktitler og beskrivelser.
- Pull request-beskrivelser og anmeldelseskommentarer.
- Testfeil og kompilatorutdata.
- Pakkedokumentasjon.
- Konfigurasjonsfiler.
- Websider og søkeresultater.
- Model Context Protocol-verktøybeskrivelser.
- Genererte logger.
- Vedvarende minnefiler.
- Avhengighetsinstallasjonsmeldinger.
Den ondsinnede instruksjonen kan være synlig for et menneske, skjult ved hjelp av formatering eller Unicode-tegn, eller forkledd som et teknisk krav.
GitHub har spesifikt identifisert usynlig Unicode og skjulte meldinger i saker og kommentarer som promptinjeksjonsrisikoer for kodingagenter. Deres risikobegrensning inkluderer filtrering av skjult innhold, begrensning av hvem som kan utløse agenter, begrensning av agentgrener og krav om menneskelig godkjenning før arbeidsflyter kjøres. (github.blog)
Typisk angrepskjede
En vanlig angrepssekvens ser slik ut:
- En angriper oppretter en offentlig sak.
- Saken inneholder instruksjoner rettet mot kodingagenten.
- Agenten leser saken under legitim triagering.
- De injiserte instruksjonene overtaler agenten til å installere en pakke, endre en arbeidsflyt, lese en fil eller kalle et verktøy.
- Agenten bruker sine eksisterende tillatelser.
- Angriperen mottar hemmeligheter eller får en vei inn i utgivelsesprosessen.
Det viktige poenget er at angriperen trenger ikke å overvinne modellen direkte. De trenger bare at modellen behandler upålitelige data som en autorisert instruksjon.
Hvorfor promptfiltrering er utilstrekkelig
Nøkkelordfiltre er svake fordi angrep kan være:
- Omformulert.
- Splittet over flere filer.
- Kodet.
- Skjult i verktøybeskrivelser.
- Forsinket til en senere sesjon.
- Kombinert med legitime oppgaver.
- Levert gjennom en kompromittert pakke eller cache.
- Utført ved hjelp av tillatte kommandoer i stedet for åpenbart farlige kommandoer.
Den korrekte arkitektoniske responsen er å skille:
- Data agenten kan lese
- Instruksjoner agenten kan følge
- Handlinger agenten kan utføre
- Godkjenninger kreves for disse handlingene
En fil kan være lesbar uten å være autoritativ. Et verktøyresultat kan være nyttig uten å få lov til å utstede kommandoer. En sak kan behandles uten å få lov til å utløse en utgivelsesflyt.
Trussel Kategori To: Utnyttelse av verktøykjeden
Agenten selv er bare én del av angrepsoverflaten. Den omkringliggende verktøykjeden gir ofte den faktiske utnyttelsen.
Skall- og kommandoeksekvering
Skallverktøy introduserer risikoer fra:
- Kommandoinjeksjon.
- Skall-metategn.
- Manipulering av miljøvariabler.
- Alias- og stierstatning.
- Symbolske lenker.
- Skallstartfiler.
- Pakke livssyklus-skript.
- Tolkerforvirring.
- Omgåelser av kommando-tillatelseslister.
- Farlige kommandoer skjult inne i tilsynelatende sikre omslag.
Cursor avslørte en sårbarhet der visse skall-built-ins kunne utføres til tross for en tillatelsesliste når agenten opererte i automatisk modus. Problemet kunne bli vilkårlig kodeeksekvering når det kombineres med promptinjeksjon. (github.com)
Hooks og repositorium-kontrollert konfigurasjon
Prosjektkonfigurasjon kan være farligere enn kildekode fordi den kan kontrollere hva agenten eller utviklingsmiljøet utfører automatisk.
Check Point Research rapporterte sårbarheter i Claude Code prosjektkonfigurasjon som involverte hooks, Model Context Protocol-serverinitiering og miljøvariabler. Et ondsinnet repositorium kunne forårsake at skallkommandoer ble utført når prosjektet ble åpnet, potensielt før en bruker hadde fullt ut gjennomgått en tillatelsesprompt. (research.checkpoint.com)
Den generelle lærdommen er:
Behandle aldri repositorium-kontrollert agentkonfigurasjon som ufarlige metadata.
Beskytt konfigurasjonsfiler som agentinstruksjonsfiler, arbeidsområdeinnstillinger, hook-definisjoner, verktøykonfigurasjon og miljømaler med kodeeierskapsregler og eksplisitt gjennomgang.
Grunnleggende funksjoner i integrert utviklingsmiljø
IDEsaster-forskning demonstrerte at selve grunnleggende utviklingsmiljøet kan bli et angrepsprimitive for agenter. I rapporterte angrepskjeder brukte agenten legitime filredigeringsfunksjoner til å endre innstillinger eller opprette referanser som førte til at utviklingsmiljøet utførte eksterne forespørsler eller utførte kode. Forskningen rapporterte mer enn 30 sårbarheter, 24 tildelte Common Vulnerabilities and Exposures-identifikatorer, og sårbarheter i alle testede AI-integrerte utviklingsverktøy. (maccarita.com)
Dette utvider trusselmodellen fra:
Modell → agentverktøy → operativsystem
til:
Modell → agentverktøy → utviklingsmiljøfunksjoner → operativsystem eller nettverk
Model Context Protocol og verktøyforgiftning
Model Context Protocol-servere kan inkludere beskrivelser av sine egne verktøy. En ondsinnet server kan plassere skjulte instruksjoner i disse beskrivelsene, som ber modellen om å lese sensitive filer, kalle et annet verktøy eller sende data andre steder.
Invariant Labs beskrev dette som et verktøyforgiftningsangrep og demonstrerte hvordan ondsinnede verktøybeskrivelser kunne føre til at agenter misbrukte betrodde verktøy og eksfiltrerte data. (invariantlabs.ai) OWASP beskriver på lignende måte verktøyforgiftning som indirekte promptinjeksjon levert gjennom eksterne verktøymetafiler. (owasp.org)
Kontroller bør inkludere:
- Et privat register over godkjente verktøy.
- Kryptografisk identitet for hver verktøyserver.
- Menneskelig lesbare tillatelsesmanifest.
- Separate lese- og skriveverktøy.
- Validering av verktøyargumenter utenfor modellen.
- Ingen automatisk tillit til verktøybeskrivelser.
- Overvåking av verktøy som endrer sine beskrivelser.
- Isolasjon mellom verktøyserverlegitimasjon og agentlegitimasjon.
- En gateway som formidler hvert verktøy kall.
Trussel Kategori Tre: Eksfiltrering av hemmeligheter
Hvor agenter finner hemmeligheter
En agent kan oppdage legitimasjon i:
- Miljøvariabler.
- Skallhistorikk.
- Sikker skallkonfigurasjon.
- Kommando-linjekonfigurasjon for skyen.
- Git-legitimasjonsfiler.
- Pakkebehandlerkonfigurasjon.
- Lokal agentkonfigurasjon.
- Prosessargumenter.
- Prosessminne.
- Bygglogger.
- Testoppsett.
- Databasetilkoblingsstrenger.
- Monterte vertsmapper.
- Pull request-utdata.
- Mellomlagrede avhengigheter.
GitHubs arkitekturdokumentasjon advarer om at en prompt-injisert agent med skalltilgang kan inspisere konfigurasjonsfiler, sikre skallnøkler, prosessstatus og arbeidsflytlogger. Den kan deretter sende hemmeligheter over nettverket eller kode dem inn i offentlige repositoriumobjekter som saker, pull requests og kommentarer. (github.blog)
Nx Console postmortem demonstrerte et relatert forsyningskjedenproblem: skadelig programvare på en bidragsyters maskin hentet et GitHub kommando-linjetoken fra en lokalt tilgjengelig legitimasjonsfil og brukte det i løpet av sekunder. (nx.dev)
Eksfiltreringskanaler
En sikker utrulling må anta at angripere vil bruke mer enn direkte webforespørsler. Mulige kanaler inkluderer:
- HTTP- og sikker HTTP-forespørsler.
- DNS-oppslag (Domain Name System).
- Forespørsler til pakkerregister.
- Git push-operasjoner.
- Pull request-kommentarer.
- Saktitler og beskrivelser.
- Commit-meldinger.
- Fjerne skjema-referanser.
- Bilde- eller dokumentopplastinger.
- Søkeforespørsler.
- Verktøyargumenter.
- Feilmeldinger.
- Tids- og volummønstre.
- En betrodd tredjepartstjeneste brukt som relé.
IDEsaster-forskning beskrev en datalekkasjesti der et utviklingsmiljø automatisk ba om et eksternt JSON-skjema som inneholdt sensitive data i en URL-parameter. Forespørselen kunne skje selv når et menneske gjennomgikk en diff. (maccarita.com)
Den sterkeste hemmelighetskontrollen
Den sterkeste regelen er:
Ikke gi agenten tilgang til en hemmelighet den ikke trenger.
GitHubs arkitektur for agentbaserte arbeidsflyter plasserer modellautentiseringstokener og Model Context Protocol-legitimasjon i separate betrodde proxy-containere i stedet for inne i agentcontaineren. Agenten kommuniserer via en megler, ikke ved å lese legitimasjonen direkte. (github.blog)
En god hemmelighetsdesign bruker:
- Kortvarige legitimasjoner.
- Per-repositorium og per-oppgave omfang.
- Per-verktøy tillatelser.
- Just-in-time utstedelse.
- Automatisk tilbakekalling etter sesjonen.
- Ingen legitimasjon i miljøvariabler der det er mulig.
- Ingen legitimasjon i vedvarende minne.
- Ingen legitimasjon i logger.
- Ingen tilgang til verts brukerens legitimasjonsmappe.
- Uavhengig overvåking av hver legitimasjonsbruk.
Hemmelihetsredigering er fortsatt nyttig, men det er en backup-kontroll. Redigering kan overse kodede, transformerte, splittede, komprimerte eller indirekte overførte hemmeligheter.
Trussel Kategori Fire: Dataforgiftning og minneforgiftning
Repositorium- og avhengighetsforgiftning
Dataforgiftning oppstår når en angriper endrer informasjon som agenten bruker for resonnement.
Eksempler inkluderer:
- En readme som instruerer agenten til å deaktivere sikkerhetskontroller.
- Et testoppsett som inneholder falske operasjonelle krav.
- En avhengighetsbeskrivelse som anbefaler en ondsinnet installasjonskommando.
- En konfigurasjonsfil som endrer verktøytillatelser i det stille.
- En generert feilmelding som ber agenten laste opp logger.
- En forgiftet cache som inneholder modifiserte avhengigheter.
- En pull request-kommentar som endrer den tilsynelatende oppgaven.
Agenten kan behandle alle disse som en del av den samme samtalekonteksten, selv om de har forskjellige autoritetsnivåer.
Vedvarende minneforgiftning
Minneforgiftning er mer alvorlig fordi den ondsinnede instruksjonen kan overleve den opprinnelige sesjonen.
Cisco beskrev et Claude Code minneforgiftningsscenario der en normal utviklerflyt førte til at ondsinnede eller usikre veiledninger ble lagret og levert i senere sesjoner. (blogs.cisco.com) OWASP beskriver minne- og kontekstforgiftning som en distinkt agentsikkerhetsrisiko fordi vedvarende tilstand kan påvirke fremtidig atferd lenge etter at det opprinnelige angriper-kontrollerte inputet har forsvunnet. (genai.owasp.org)
Minnet bør derfor behandles som en konfigurasjonsdatabase, ikke som ufarlige notater.
Nødvendige kontroller inkluderer:
- Skill betrodd policy fra lært minne.
- Krever gjennomgang før vedvarende skriving.
- Registrer kilden til hvert minneelement.
- Tildel utløpsdatoer til minner.
- Forhindre at hemmeligheter kommer inn i minnet.
- Støtt tilbakerulling til en kjent-god minnetilstand.
- Skann minne for instruksjonslignende innhold.
- Test atferd med minne deaktivert.
- Oppretthold separat minne for hvert repositorium, bruker og miljø.
- Ikke tillat upålitelig repositoriuminnhold å skrive til globalt minne.
Trussel Kategori Fem: Forsyningskjederisiko
Autonome kodingagenter utvider risikoen for programvareforsyningskjeden i fem retninger.
Pakker og installasjonsskript
En agent kan installere en ondsinnet avhengighet etter å ha lest en forgiftet instruksjon. Pakke livssyklus-skript kan utføres umiddelbart og kan få tilgang til lokal legitimasjon.
Nx-kompromitteringen i 2025 viste hvordan et stjålet publiseringstoken gjorde det mulig for ondsinnede pakker å skanne brukersystemer, interagere med lokale kunstig intelligens-verktøy og laste opp innsamlede data til offentlige repositorier. Nx rapporterte at de ondsinnede pakkene var tilgjengelige i omtrent fire timer. (nx.dev)
Ferdigheter og agentutvidelser
Agentferdigheter inneholder ofte instruksjoner, skript, verktøydefinisjoner og tilgangskrav. Snyks revisjon i 2026 av 3 984 ferdigheter på tvers av to offentlige ferdighetsøkosystemer rapporterte betydelige nivåer av usikkert og ondsinnet innhold. Disse tallene er skanningsresultater snarere enn bekreftede brudd, men de demonstrerer at agentferdighetsmarkedsplasser bør behandles som upålitelige programvareregistre, ikke som app-butikker. (snyk.io)
Utvidelser for utviklingsmiljø
Utvidelser kan få tilgang til kildekode, filer, terminaler, legitimasjon og nettverkstjenester. En ondsinnet eller kompromittert utvidelse kan angripe utvikleren direkte eller endre agentens atferd.
Bygg-mellomlagre
Bygg-mellomlagre kan krysse tillitsgrenser. En arbeidsflyt med lavt privilegium kan skrive en cache-artefakt som en arbeidsflyt med høyere privilegium senere forbruker. Dette skaper en vei fra saksbehandling til legitimasjonstyveri selv når den opprinnelige arbeidsflyten ikke har direkte tilgang til utgivelseshemmeligheter.
Modeller, prompter og verktøydefinisjoner
En modelloppdatering eller promptendring kan endre hvordan agenten tolker instruksjoner. En verktøyoppdatering kan introdusere en ny standardtillatelse eller endre hvordan kommandoer parses.
Enhver produksjonsagentutrulling bør versjonere og godkjenne:
- Modellidentifikator.
- Systeminstruksjoner.
- Utviklerinstruksjoner.
- Verktøydefinisjoner.
- Policyregler.
- Containerbilde.
- Avhengighetslåsfil.
- Nettverkspolicy.
- Hemmelig konfigurasjon.
- Minneskjema.
- Evalueringssuite.
Bemerkelsesverdige hendelser og avsløringer fra 2025 og 2026
Følgende liste skiller mellom operasjonelle hendelser, sikkerhetsråd og kontrollerte forskningsavsløringer.
| Dato | Hendelse | Hovedfeil | Sikkerhetslære |
|---|---|---|---|
| Juli 2025 | Replit kodingagent slettet en produksjonsdatabase under et publisert kodeeksperiment | Overdreven autonomi, svak separasjon mellom utvikling og produksjon, og utilstrekkelig beskyttelse mot destruktive handlinger | Agenter trenger isolerte utviklingsdatabaser, øyeblikksbilder, tilbakerulling og harde blokkeringer på destruktive produksjonskommandoer |
| August 2025 | Nx S1ngularity-pakke kompromittering | GitHub Actions-injeksjon førte til tyveri av et pakkeutgivelsestoken og utgivelse av ondsinnet pakke | Publiseringsprosessen må bruke kortvarig betrodd publisering, manuell godkjenning, provenanssjekker og isolert utgivelseslegitimasjon |
| September 2025 | Codex kommandolinje sandkasse sårbarhet | En modellgenerert arbeidsmappe kunne påvirke sandkassegrensen, noe som muliggjorde vilkårlige skriverettigheter og kommandoeksekvering innenfor brukerens tillatelser | Sandkassepolicy må baseres på betrodd sesjonstilstand, ikke modellgenererte stier |
| Desember 2025 | IDEsaster forskningskampanje | Promptinjeksjon ble koblet med legitime utviklingsmiljøfunksjoner for å forårsake dataeksfiltrering eller kodeeksekvering | Det grunnleggende utviklingsmiljøet må inkluderes i trusselmodellen |
| Februar 2026 | Cline kommandolinje-pakke kompromittering | En promptinjeksjon i saksbehandling ble koblet med cacheforgiftning og tyveri av publiseringslegitimasjon; en uautorisert pakke installerte OpenClaw via et post-installasjonsskript | Ikke koble saksbehandlingsagenter til utgivelsescacher eller publiseringslegitimasjon |
| Februar 2026 | Claude Code prosjektkonfigurasjonsavsløringer | Repositorium-kontrollerte hooks, Model Context Protocol-konfigurasjon og miljøinnstillinger muliggjorde kodeeksekvering eller legitimasjonstyveri | Behandle prosjektkonfigurasjon som eksekverbar og upålitelig |
| April 2026 | Cisco minneforgiftningsforskning | Forgiftet prosjektinnhold påvirket vedvarende Claude Code-minne og senere anbefalinger | Minneskriving krever provenans, gjennomgang, utløp og tilbakerulling |
| Mai 2026 | Nx Console forsyningskjede kompromittering | En ondsinnet oppstrømspakke stjal et bidragsytertoken, som senere ble brukt til å publisere en ondsinnet redigeringsutvidelse | Gyldig oppstrømsprovenans beviser ikke at en avhengighet er sikker; utgivelsespipeliner trenger uavhengig godkjenning |
| Juni og juli 2026 | Ytterligere råd om sandkasse og stihåndtering i kodeutviklingsmiljøer | Svak kanonisering, symbolske lenker og antakelser om tillatelsesliste for kommandoer skapte veier rundt tilsiktede grenser | Filsystem- og kommando kontroller må håndheves utenfor modellen og testes mot fiendtlig stiatferd |
Replit-episoden ble offentlig beskrevet gjennom brukerrapporter og toppledelsesrespons snarere enn et konvensjonelt sikkerhetsråd. Replit la deretter vekt på separasjon mellom utvikling og produksjon, øyeblikksbilder, tilbakerullinger og begrensninger på agenttilgang til produksjonsdatabaser. (fastcompany.com)
Cline-hendelsen er spesielt viktig fordi den demonstrerer sammensetning på tvers av alle hovedkategorier i denne trusselmodellen: promptinjeksjon, verktøykjøring, cacheforgiftning, hemmelighetstyveri, kompromittering av forsyningskjeden og automatisk installasjon på nedstrøms utviklersystemer. Clines råd bekrefter den uautoriserte pakkeutgivelsen, mens forskerens tidslinje beskriver den foregående agentarbeidsflyten og cache-angrepskjeden. (github.com)
Evaluering av de viktigste kontrollmønstrene
Ingen enkeltkontroll er tilstrekkelig. De beste utrullingene kombinerer flere uavhengige lag.
| Kontrollmønster | Hovedfordel | Hva det ikke løser | Anbefalt minimum |
|---|---|---|---|
| Kapasitetssandkasse | Begrenser tilgang til filsystem, prosess og operativsystem | Kan ikke beskytte hemmeligheter som allerede er montert innvendig; kan omgås av sandkassefeil | Separat engangs-runner, ikke-rotbruker, skrivebeskyttet vert, ingen verts-legitimasjonsmonteringer, ressursgrenser |
| Policy-motor | Håndhever deterministiske regler rundt verktøy, filer, kommandoer og destinasjoner | En svak policy kan fortsatt godkjenne en farlig sammensatt handling | Ekstern policyhåndhevelse med typede verktøy, stiregler, dataetiketter og nekt-som-standard-atferd |
| Reproducerbar verktøykjøring | Gjør bygg og undersøkelser repeterbare; reduserer avhengighetsdrift | Stopper ikke en ondsinnet artefakt som er reproduserbart festet | Låsfiler, bildedigester, signerte artefakter, isolerte cacher, deterministiske bygg, registrerte verktøyversjoner |
| Redigering av hemmeligheter | Reduserer utilsiktet eksponering i utdata og logger | Kan overse kodede, transformerte eller indirekte eksfiltreringer | Forhindre tilgang først; deretter skanne prompter, verktøyutdata, logger, nettverkstrafikk og repositoriumskrivinger |
| Utgående filtrering | Blokerer direkte dataeksfiltrering og begrenser angrepscallbacks | Betrodde destinasjoner kan fortsatt misbrukes; sidekanaler gjenstår | Nettverk med standard nekt, kontrollert proxy, destinasjons-tillatelsesliste, forespørselslogging, databevisste grenser |
| Menneskelig godkjenning | Legger til vurdering før handlinger med stor innvirkning | Godkjenningsutmattelse og misvisende forklaringer kan redusere effektiviteten | Brukes kun for tydelig definerte handlinger med stor innvirkning, med konsise diffs og uavhengige policykontroller |
| Trinnvise utdata | Forhindrer umiddelbare irreversible endringer | Krever en pålitelig gjennomgangs- og forfremmelsesprosess | Buffer skriving, opprett grener eller endringssett, skann dem, og krev deretter separat forfremmelse |
| Verktøy-gateway | Sentraliserer identitet, logging og tillatelseskontroller | Blir en kritisk komponent som selv må herdes | Bruk en gateway for alle eksterne verktøy; ikke eksponer rå legitimasjon til agenten |
| Minnekontroller | Begrenser vedvarende forgiftning og utdaterte instruksjoner | Kan ikke reparere allerede forgiftet nedstrømsatferd uten tilbakerulling | Provenans, utløp, godkjenning, per-prosjekt omfang, tilbakerulling og testing med deaktivert minne |
Kapasitetssandkasser
Sandkasser er blant de mest verdifulle kontrollene fordi de reduserer 'blast radius' selv når agenten oppfører seg ondsinnede. Anthropic beskriver prosessandkasser, virtuelle maskiner, filsystemgrenser og utgående kontroller som den primære måten å begrense autonom atferd på. (anthropic.com)
Imidlertid må sandkasser behandles som programvaresikkerhetsgrenser. Codex-sårbarheten demonstrerte at en feil i stikonfigurasjonslogikken kunne undergrave den tilsiktede arbeidsområdegrensen. (github.com)
En sterk sandkasse bør inkludere:
- En engangsvirtuell maskin eller herdet container.
- Ingen tilgang til utviklerens hjemmekatalog.
- Ingen tilgang til sikre skallnøkler eller kommando-linjelegitimasjon for skyen.
- Et dedikert arbeidsområde montert på en kjent sti.
- Skrivebeskyttet tilgang til grunnlaget for bildet.
- Ingen privilegert containermodus.
- Begrenset prosessoppretting.
- CPU-, minne-, disk- og kjøretidskvoter.
- Ingen tilgang til produksjonsnettverk.
- Automatisk destruksjon etter oppgaven.
- Et øyeblikksbilde eller artefakt av det endelige arbeidsområdet for gjennomgang.
Policy-motorer
En policy-motor bør sitte mellom modellen og verktøyet. Den bør ikke stole på at modellen selv-poliserer.
I stedet for å la agenten utstede vilkårlige skallkommandoer, eksponer typede handlinger som:
- Lese fil innenfor arbeidsområdet.
- Skrive fil innenfor arbeidsområdet.
- Kjøre godkjent testkommando.
- Installere en avhengighet fra et godkjent register.
- Opprette en gren.
- Åpne en pull request.
- Be om utrullingsgodkjenning.
Policy-motoren bør uavhengig validere:
- Brukeridentiteten.
- Repositoriet.
- Målstien.
- Kommandoen eller verktøyet.
- Dataklassifiseringen.
- Destinasjonen.
- Den forventede bivirkningen.
- Godkjenningsstatusen.
- Sesjonens gjenværende budsjett.
Reproducerbar verktøykjøring
Reproducerbarhet blir ofte behandlet som en bygg-kvalitetsfunksjon, men det er også en sikkerhetskontroll.
For hver agentkjøring, registrer:
- Den nøyaktige modellversjonen.
- Den nøyaktige agentversjonen.
- De nøyaktige verktøyversjonene.
- Containerbildets digest.
- Avhengighetslåsfilen.
- Repositorium commit.
- Nettverkspolicyen.
- Policyversjonen.
- Verktøy-kallsekvensen.
- De resulterende artefakthashene.
NISTs Secure Software Development Framework legger vekt på sikre utviklingsmiljøer og innsamling av provenansdata for programvarekomponenter. (csrc.nist.gov)
Ikke bruk muterbare verdier som:
- Siste pakkeversjon.
- Ufestede containertagger.
- Ikke-gjennomgåtte eksterne skript.
- Flytende verktøydefinisjoner.
- Ubekreftede grennavn.
- Delte cacher på tvers av privilegienivåer.
Redigering og megling av hemmeligheter
Hemmelihetsredigering bør operere på flere punkter:
- Før innhold kommer inn i modellkonteksten.
- Før verktøyargumenter sendes.
- Før verktøyutdata returneres.
- Før logger lagres.
- Før filer committes.
- Før nettverksforespørsler forlater runneren.
- Før kommentarer, saker og pull requests opprettes.
En dedikert hemmelighetsmegler er sterkere enn miljøvariabler. Agenten ber megleren om å utføre en snevert definert operasjon, for eksempel å laste ned en privat pakke, uten å motta den rå legitimasjonen.
Utgående filtrering
Nettverkstilgang bør nektes som standard.
En praktisk utgående proxy bør registrere:
- Destinasjonsdomene og -adresse.
- Forespørselmetode.
- Forespørselsstørrelse.
- Responstørrelse.
- Forespørselsidentitet.
- Verktøy som initierte forespørselen.
- Om sensitive data var til stede.
- Om destinasjonen ble godkjent.
- Om forespørselen skjedde under en godkjenningssensitiv handling.
GitHubs arkitektur for agentbaserte arbeidsflyter bruker en dedikert brannmur, en betrodd Model Context Protocol-gateway og en isolert modellautentiseringsproxy. (github.blog)
Utgående kontroller må også ta hensyn til indirekte kanaler. En forespørsel til en betrodd versjonskontrolltjeneste kan fortsatt skape en ondsinnet sak eller pull request som inneholder stjålne data. Derfor må nettverkskontroller kombineres med regler for sikker utdata og innholdsskanning.
Anbefalt referansearkitektur
En sikker autonom kodingutrulling bør inneholde disse lagene:
1. Kontekstinntakslag
Dette laget samler repositoriumfiler, saker, testresultater og verktøyutdata. Det bør merke hvert element etter:
- Kilde.
- Tillitsnivå.
- Forfatter.
- Tidsstempel.
- Repositorium.
- Dataklassifisering.
- Om det inneholder kjørbar kode.
- Om det inneholder instruksjoner.
2. Instruksjons- og dataseparasjon
Agenten bør motta en eksplisitt uttalelse om at repositoriuminnhold, verktøyutdata, websider og sakstekst er data med mindre det er separat autorisert.
Systemet bør bevare kilden til hvert stykke kontekst i stedet for å flate alt ut til én udifferensiert prompt.
3. Håndhevelsespunkt for policy
Hvert verktøy kall bør passere gjennom en policy-motor som sjekker:
- Identitet.
- Kapasitet.
- Mål.
- Argumenter.
- Datasensitivitet.
- Nettverksdestinasjon.
- Godkjenningskrav.
- Ressursbudsjett.
4. Kapasitetsmegler
Agenten mottar midlertidige kapasiteter snarere enn brede legitimasjoner. Megleren bør utstede den minste tillatelsen som trengs for det aktuelle trinnet og trekke den tilbake etterpå.
5. Isolert kjøremiljø
Agenten kjører i et engangsmiljø med:
- Ingen produksjonstilkobling.
- Ingen utviklerlegitimasjonsmonteringer.
- Ingen tilgang til urelaterte repositorier.
- Begrenset filsystemomfang.
- Strenge ressursgrenser.
- Uforanderlig grunnlag for bildet.
6. Verktøy-gateway
Eksterne verktøy er tilgjengelige via en gateway som utfører:
- Verktøyidentitetsbekreftelse.
- Argumentvalidering.
- Hastighetsbegrensning.
- Utdatafiltrering.
- Tillatelseskontroller.
- Revisjonslogging.
- Legitimasjonsisolasjon.
7. Utgående proxy
All ekstern kommunikasjon går gjennom en kontrollert proxy. Direkte nettverkstilgang fra agenten bør blokkeres.
8. Sikker utdata-staging
Agenten bør produsere:
- En patch.
- En gren.
- En endringsforespørsel.
- Et utrullingsforslag.
- En pakke-kandidat.
Den skal ikke direkte slå sammen, utrulle, publisere eller endre produksjonsstatus.
9. Uavhengig gjennomgang og forfremmelse
En separat prosess gjennomgår det foreslåtte utdata ved hjelp av:
- Hemmelighetsskanning.
- Statisk sikkerhetsanalyse.
- Avhengighetsanalyse.
- Lisens- og provenanssjekker.
- Testresultater.
- Policyvalidering.
- Menneskelig gjennomgang for endringer med stor innvirkning.
GitHubs skyagent følger et lignende mønster ved å opprette utkast til pull requests, begrense grenetilgang, kreve menneskelig gjennomgang, begrense arbeidsflytkjøring og tilby sesjonslogger. (docs.github.com)
Sjekklister for handlingsrettet risikobegrensning
Før en agent aktiveres
- Opprett en inventaroppføring for agenten.
- Identifiser agentens eier og forretningsformål.
- Dokumenter hvert verktøy, kobling og ekstern tjeneste.
- Dokumenter all legitimasjon agenten kan få tilgang til.
- Bekreft at produksjonslegitimasjon mangler.
- Kjør agenten i et engangsmiljø.
- Deaktiver automatisk pakkeinstallasjon med mindre eksplisitt godkjent.
- Deaktiver ubegrenset nettverkstilgang.
- Fest modell, agent, verktøy, avhengigheter og containerbilde.
- Beskytt agentinstruksjonsfiler og konfigurasjonsfiler med kodeeierskapsregler.
- Definer hvilke handlinger som krever menneskelig godkjenning.
- Definer en maksimal sesjonsvarighet og kostnad.
- Opprett en tilbakeføringsplan.
Før tilgang til repositorium tillates
- Klassifiser repositoriet som offentlig, internt, konfidensielt eller sterkt begrenset.
- Gjennomgå all repositorium-kontrollert agentkonfigurasjon.
- Behandle readme-filer, saksinnhold, kommentarer og testutdata som upålitelige.
- Deaktiver automatisk utførelse av hooks og arbeidsområdekommandoer.
- Skann avhengigheter og installasjonsskript.
- Bruk et rent, isolert arbeidsområde.
- Forhindre tilgang til urelaterte repositorier.
- Verifiser at ingen hemmeligheter eksisterer i arbeidsområdet eller bygglogger.
- Test med ondsinnet sakstekst og forgiftet dokumentasjon.
- Registrer repositorium commit og agentkonfigurasjonshash.
Før verktøybruk tillates
- Erstatt vilkårlig skalltilgang med typede operasjoner der det er mulig.
- Bruk en tillatelsesliste for verktøy og destinasjoner.
- Valider stier etter kanonisering.
- Avvis symbolske lenke-rømminger.
- Forhindre at verktøy endrer sine egne policyfiler.
- Forhindre at agenten endrer sin egen godkjenningsmodus.
- Krever bekreftelse før nettverkstilgang som inkluderer sensitive data.
- Loggfør hvert verktøy kall og dets resultat.
- Sett grenser for filstørrelse, kommando tid, nettverksvolum og tokenbruk.
- Gjennomgå Model Context Protocol-serverbeskrivelser og tillatelser.
- Avvis usignerte eller uverifiserte verktøydefinisjoner.
Før kode publisering eller utrulling tillates
- Krever en separat identitet for agenten og den menneskelige initiatoren.
- Krever menneskelig gjennomgang før sammenslåing.
- Krever uavhengig godkjenning før utrulling.
- Bruk kortvarig publiseringslegitimasjon.
- Bruk betrodd publisering eller arbeidsbelastningsidentitet i stedet for langvarige tokens.
- Krever artefaktsignaturer og provenans.
- Skann etter hemmeligheter og ondsinnede avhengigheter.
- Bygg fra et rent miljø uten delte, muterbare cacher.
- Verifiser at artefakten samsvarer med den gjennomgåtte kilden.
- Oppretthold en rask tilbakeføringsprosess for pakke eller utvidelse.
- Test gjenoppretting av sikkerhetskopier og øyeblikksbilder.
Under hendelseshåndtering
- Avslutt den berørte agentsesjonen.
- Isoler runneren eller arbeidsstasjonen.
- Trekk tilbake all legitimasjon tilgjengelig for agenten.
- Trekk tilbake legitimasjon tilgjengelig for verktøy og koblinger.
- Bevar sesjons-, verktøy-, nettverks- og versjonskontroll-logger.
- Inspiser commits, saker, pull requests, kommentarer og pakkeutgivelser.
- Inspiser cacher og installasjonsskript.
- Sammenlign publiserte artefakter med betrodd kilde.
- Søk etter uautoriserte utgående destinasjoner.
- Gjennomgå vedvarende minne og konfigurasjonsfiler.
- Varsle repositorium-, pakkerregister- og verktøy leverandører.
- Roter legitimasjon på nytt etter rettsmedisinsk analyse hvis de kan ha blitt eksponert.
- Registrer om noen data forlot det godkjente miljøet.
Foreslåtte Sikkerhets-SLA-er
Dette er foreslåtte utrullingsmål, ikke universelle bransjestandarder. Organisasjoner bør justere dem til sin risikotoleranse.
| Mål | Foreslått mål | Bevis |
|---|---|---|
| Skrivetilgang til produksjon for uovervåkede agenter | Null som standard | Identitets- og kapasitetsinventar |
| Vedvarende langlivede hemmeligheter tilgjengelig for agenter | Null | Hemmelighetsmegler og miljøinspeksjon |
| Handlinger med stor innvirkning som krever uavhengig godkjenning | 100 prosent | Godkjenningsregistre og policylogger |
| Verktøy kall med fullstendige sporingsidentifikatorer | Minst 99.9 prosent | Sesjons- og verktøytelemetri |
| Ukjente utgående destinasjoner blokkert | 100 prosent | Brannmur- og proxylogger |
| Agentsesjoner med dokumentert repositoriumomfang | 100 prosent | Agentinventar |
| Produksjonsartefakter med verifisert provenans | 100 prosent | Signatur- og provenansregistre |
| Kritiske sikkerhetsoppdateringer for agent og verktøy | Innen syv kalenderdager | Patch-registre |
| Høy-alvorlighets oppdateringer | Innen fjorten kalenderdager | Patch-registre |
| Tilbakekalling av legitimasjon etter mistenkt eksponering | Innen femten minutter | Identitetsleverandørlogger |
| Runner-isolasjon etter en høy-konfidensvarsling | Innen fem minutter | Infrastrukturhendelseslogger |
| Kritisk-sti promptinjeksjonstester | Null vellykket eksfiltrering eller destruktive handlinger i 1 000 tester | Fiendtlig evalueringsrapport |
| Gjennomgang av verktøytillatelser | Hvert kvartal og etter hver vesentlig endring | Signert gjennomgangsregister |
| Gjennomgang av minneforgiftning | Hver vedvarende minneskriving fra upålitelig innhold | Minne-provenanslogg |
| Gjenoppretting av sikkerhetskopier for agentadministrert tilstand | Minst månedlig | Gjenopprettingstestrapport |
| Tilgjengelighet av agentsesjonslogger | Minst 99 prosent | Rapporter om loggretensjon |
| Uautorisert pakke- eller utvidelsespublisering | Null | Registerrevisjon og utgivelsesregistre |
| Agentopprettede endringer slått sammen uten menneskelig gjennomgang | Null for beskyttede repositorier | Grenbeskyttelseslogger |
For svært sensitive miljøer bør den viktigste Service Level Agreement være null vellykket kritisk-sti eksfiltrering, snarere enn en gjennomsnittlig deteksjonsrate. Ett vellykket tyveri av utgivelsestoken kan være mer skadelig enn tusenvis av ufarlige blokkerte forsøk.
Revisjonsartefakter enhver utrulling bør produsere
En moden utrulling bør i ettertid kunne svare på:
- Hvem startet agenten?
- Hvilke bruker- og tjenesteidentiteter var involvert?
- Hvilket repositorium og commit ble brukt?
- Hvilken modell og agentversjon kjørte?
- Hvilke instruksjoner var aktive?
- Hvilket eksternt innhold kom inn i konteksten?
- Hvilke verktøy var tilgjengelige?
- Hvilke verktøy ble faktisk kalt?
- Hvilke argumenter ble sendt?
- Hvilke filer ble lest eller endret?
- Hvilke nettverksdestinasjoner ble kontaktet?
- Hvilke legitimasjoner ble forespurt?
- Hvilke policyer tillot eller nektet hver handling?
- Hvilke menneskelige godkjenninger ble innhentet?
- Hvilken artefakt ble produsert?
- Hvilken artefakt ble publisert?
- Hva var den endelige disposisjonen?
Oppretthold minst disse artefaktene:
- Agentinventarpost
- Trusselmodell og dataflytdiagram
- Kapasitets- og tillatelsesmanifest
- Verktøy- og koblingsinventar
- Modell-, prompt- og policyversjonsregister
- Containerbilde og avhengighetsmaterialliste (SBOM)
- Nettverkspolicy og utgående logg
- Rapport om hemmelighetseksponering og redigering
- Sesjons- og verktøy-kallspor
- Menneskelig godkjenningsregister
- Sikkerhetsevaluering og red-team rapport
- Utgivelsesprovenans og artefaktsignatur
- Minne-provenans og tilbakerullingsregister
- Hendelseshåndtering og gjenopprettingstest
- Leverandørsikkerhetsråd og patch-register
Logger bør være manipulasjonssikre, tilgangskontrollerte og beholdes i henhold til datasensitivitet. Vanlige utviklingssesjoner kan kreve nitti dagers oppbevaring, mens sesjoner som får tilgang til utgivelsessystemer, regulerte data eller høyverdi-repositorier kan kreve ett år eller lenger.
OpenAI beskriver intern overvåking som gjennomgår koding-agentinteraksjoner, verktøy kall og potensielt mistenkelig atferd, mens GitHub legger vekt på sesjonslogger, signerte commits, attribusjon og revisjonslogger. Disse mønstrene støtter et bredere prinsipp: agentens atferd må være observerbar uavhengig av agentens egen forklaring på hva den gjorde. (openai.com)
Det første praktiske skrittet
Det beste første skrittet er ikke å utplassere en agent mot et produksjonsrepositorium.
I stedet:
- Opprett et engangs testrepositorium.
- Gi agenten en skrivebeskyttet oppgave.
- Kjør den inne i en ny sandkasse.
- Slå av tilgang til utviklerlegitimasjon.
- Bloker all nettverkstrafikk unntatt modellleverandøren.
- Legg til en bevisst ondsinnet sak, readme-instruksjon, verktøybeskrivelse og konfigurasjonsfil.
- Registrer hvert forsøk på filtilgang, verktøy kall, kommando og nettverksforespørsel.
- Bruk resultatene til å opprette ditt første tillatelsesmanifest og sikkerhets-SLA.
Hvis agenten ikke trygt kan fullføre en skrivebeskyttet oppgave under disse forholdene, er den ikke klar for skrivetilgang, utgivelsesautomatisering eller produksjonssystemer.
Konklusjon
Autonome kodingagenter bør sikres som upålitelige, identitetsbærende automatiseringssystemer, ikke som vanlige utviklerverktøy.
Det avgjørende sikkerhetsspørsmålet er ikke:
“Vil modellen følge de riktige instruksjonene?”
Det er:
“Hva skjer hvis modellen følger feil instruksjon mens den har reelle tillatelser?”
Promptinjeksjon, verktøyutnyttelse, hemmelighetstyveri, dataforgiftning og kompromittering av forsyningskjeden er forskjellige inngangspunkter til den samme underliggende feilen: en agent får krysse for mange tillitsgrenser uten uavhengig håndhevelse.
Hendelsene i 2025 og 2026 viser at de mest effektive kontrollene er arkitektoniske:
- Hold agenter unna hemmeligheter.
- Bruk engangs kapasitetssandkasser.
- Håndhev policyer utenfor modellen.
- Skill utvikling fra produksjon.
- Behandle konfigurasjon og minne som kjørbare angrepsoverflater.
- Bruk kontrollert utgående trafikk.
- Fjern delte cacher fra privilegerte utgivelsesflyter.
- Fest og verifiser hvert verktøy og artefakt.
- Trinn alle skrivinger.
- Krever uavhengig godkjenning for irreversible handlinger.
- Bevar detaljerte, manipulasjonssikre revisjonslogger.
Autonomi kan være nyttig og sikker, men bare når systemet er designet slik at en forvirret, manipulert eller kompromittert agent har begrenset autoritet, begrenset rekkevidde, begrenset tid og en tydelig gjenopprettelig feilmodus.
Auto