Jeres AI skriver kode. Hvem læser med, før den gør det?
Autonome AI-kodeagenter læser filer, websider og afhængigheder, og handler på det de læser. Det er dér prompt injection kommer ind: en skjult instruktion, agenten opfatter som en ordre. Vi sikrer de tre lag der er i spil, maskinerne agenten kører på, agenten selv, og den kode den skriver. Vi kan gøre det, fordi vi selv er udviklere og ved hvad en agent faktisk laver i en kodebase.
Book en gratis rådgivningssamtaleSe alle ydelser
- Base
- Aarhus, Danmark
- Team
- Ét hold hele vejen
- Erfaring
- Seniorudviklere
- Svartid
- Samme arbejdsdag
Vi er udviklere, ikke kun forhandlere
Beskyttelsen er markedsledende værktøj vi implementerer og driver. Forskellen er at vi selv skriver kode og kan læse det agenten producerer.
Kan køre hos jer selv
Self-hosted som mulighed, så jeres kode og prompts aldrig forlader jeres eget miljø.
Hvad prompt injection er, og hvorfor det rammer udviklere først
En kodeagent behandler alt hvad den læser som mulig instruktion. En skjult besked i en repo-fil, på en webside den slår op, eller i en afhængighed den henter, kan narre den til at lække data eller udføre handlinger ingen har bedt om. Det er ikke teoretisk, og det bliver udnyttet i praksis: offentliggjort research har vist AI-kodeassistenter narret til at skrive uden for deres eget arbejdsområde og derigennem opnå fjernkørsel af kode. Angrebsfladen er en utroværdig teksttolker med en betroet pipelines rettigheder, og det er derfor udviklingsafdelingen er det første sted det gør ondt.
Lag 1: maskinerne
Endpoint-sikkerhed på macOS, Windows og Linux: beskyttelse mod malware og ransomware, adfærdsanalyse, og telemetri fra alle maskiner samlet i én konsol. Udviklingsmaskiner er ofte de mest åbne i huset, med de bredeste adgange og de fleste undtagelser. De er også dem der kører agenterne.
Lag 2: agenten selv
Realtidsscanning af agentens input og output, som blokerer prompt injection, jailbreaks og lækage af følsomme data. Der findes et plugin bygget specifikt til Claude Code, som hooker ind og scanner alt agenten læser, filer, webindhold og kommandooutput, før modellen overhovedet behandler det. Vi sætter det op og driver det. Oven i det en automatiseret red teaming af opsætningen, før den går i produktion, på linje med OWASP Top 10 for LLM'er. Begge dele kan køre self-hosted, så jeres kode og prompts aldrig forlader jeres eget miljø, relevant hvis I har hensyn til IP eller datasuverænitet. Har I bygget MCP-servere, der giver agenten adgang til jeres egne systemer, gælder det samme dér: det agenten får ud af en MCP-server er tekst, den kan handle på, og den tekst kan være manipuleret.
Lag 3: koden agenten skriver
AI-genereret kode ser rigtig ud. Det er netop problemet. Vi scanner repos og CI/CD for indlejrede hemmeligheder, kendte sårbarheder og ondsindede pakker, før noget shipper. Bygger I til Docker eller Kubernetes, scannes imaget samme sted: kendte sårbarheder i basisimaget, hemmeligheder der er bygget ind, og afhængigheder ingen har bedt om. Valgfrit ovenpå kan vi styre hvilke agenter og identiteter der overhovedet må nå hvilke AI-tjenester, Anthropics API, GitHub og hvad I ellers giver adgang til, og gennemføre en red teaming af hele arkitekturen fra ende til anden.
En skill kan tage alt, jeres udviklere har adgang til, og I opdager det ikke
En Claude Skill er en mappe med instruktioner og scripts, agenten læser og udfører. En MCP-server er en proces, den taler med. En Codex- eller Cursor-udvidelse er det samme igen. Ingen af delene er en indstilling, og ingen af dem kører i en sandkasse. Det er kode med rettighederne fra den udvikler, der installerede den.
Tænk på hvad de rettigheder rækker til. Nøglerne i `.env`. Legitimationen til skyen i hjemmemappen. SSH-nøglen, der giver adgang til hver eneste server. Tokenet, der kan udgive en pakke i jeres navn. Adgangen til produktionsdatabasen, fordi nogen skulle fejlsøge i tirsdags. Og hele kildekoden, inklusive den til det produkt I lever af. En angriber, der får det hele på én gang, har ikke længere brug for jer.
Det tager sekunder, og der sker ikke noget. Intet går ned. Ingen alarm lyder. Agenten gør samtidig præcis det, I bad den om, så arbejdet ser normalt ud. Det udgående kald går til et domæne, der ligner en almindelig leverandør, og drukner i den trafik en udviklermaskine alligevel laver hele dagen. I har ingen grund til at kigge.
Derfor hører de fleste det først fra andre. Fra en kunde, fra et læksite, eller fra en mail der beder om penge for ikke at offentliggøre koden. På det tidspunkt har angriberen haft adgang i uger, og logfilerne, der kunne vise hvornår det begyndte, er rullet.
Og hvorfor bliver den så installeret? Fordi den havde stjerner. Peer-reviewed forskning fremlagt på ICSE 2026 kortlagde omkring seks millioner mistænkte falske stjerner på GitHub og fandt, at flertallet promoverede kortlivede repositories med phishing-malware. AI- og LLM-projekter er blandt de kategorier der bruger dem mest. Effekten holder under to måneder, og det er rigeligt: repoet skal kun se troværdigt ud den uge, det bliver installeret. Bagefter kan det forsvinde, mens koden bliver liggende på jeres maskiner.
Sådan lukker vi den vej
Fire ting, og ingen af dem er en stjernetæller.
Vi læser hvad en skill gør, før den kører. Det er kode, og vi er udviklere. Vi låser versionen, så den skill der blev læst, er den der kører, og en opdatering er en beslutning frem for noget der sker af sig selv. Vi styrer hvad agentens maskine overhovedet må ringe ud til, fordi det udgående kald er det øjeblik data forlader jer, og det er dér det kan stoppes frem for opdages bagefter. Og vi holder øje på selve maskinen med markedsledende detektion, vi implementerer og driver, så et kald der alligevel går ud, bliver set og ikke bare logget.
Vi bedømmer på alder, historik og hvem der står bag, ikke på popularitet. Signaturbaseret scanning fanger ikke det her: koden er ny, og der er intet kendt at matche på.
Har I selv bygget noget med AI, der ikke holder?
En stor del af vores arbejde er at rydde op. Et værktøj bygget hurtigt med AI, der næsten virker. En integration ingen tør røre. En prototype der stille blev til produktion. Vi retter det, og vi sikrer det, og vi siger det ligeud, hvis det billigste er at bygge det om frem for at lappe på det.
Tre typiske forløb
Et udviklingsteam på tolv kører kodeagenter i deres egne repos. Agenten har adgang til den samme .env-fil som udviklerne, altså også produktionsnøgler, og ingen har taget stilling til hvad der sker, hvis den læser en manipuleret afhængighed. Vi kortlægger hvad agenterne faktisk kan nå, flytter hemmeligheder ud af repoet, sætter scanning på det agenten læser, og red teamer opsætningen, før den bruges på kundedata., En virksomhed har arvet et AI-værktøj, der blev bygget som en prototype og stille blev til produktion. Ingen ved længere hvilke systemer det har adgang til, eller hvad det logger. Vi læser det igennem, dokumenterer adgangene, lukker dem der ikke skal være der, og gør resten målbart., Et hus er omfattet af NIS2 og har udvikling in-house. Revisoren spørger, hvordan de sikrer den kode der bliver skrevet med AI. Vi leverer scanningen, dokumentationen og et svar der kan holde til at blive skrevet ned.
Hvorfor det ikke er rådgivning
Der findes danske huse der sælger AI-sikkerhed som politikker, risikovurderinger og governance. Det er nyttigt arbejde, og det stopper ikke en injektion. Forskellen på en rapport og en beskyttelse er, om der kører noget der kigger med, mens agenten arbejder. Den del leverer vi med værktøj fra en leverandør, der er partner i Anthropics security-partnerprogram med en verificeret integration i Claudes compliance-værktøj. Vi implementerer det, driver det, og kan læse den kode der kommer ud i den anden ende.
Resten af sikkerheden omkring et udviklingshold
Agenterne står sjældent alene. Samme platform dækker e-mail og samarbejdsværktøjer, inklusive den AI-drevne spear-phishing der er blevet svær at kende fra en rigtig besked, og den dækker Microsoft 365 og Google Workspace hvor filerne og linkene faktisk deles. Den scanner container-images i CI/CD før de ruller ud og holder øje med containerne i drift. Den kortlægger angrebsfladen løbende, maskiner, brugere, cloud-tjenester og de adgange ingen har fjernet, og giver et risikotal der kan tages med i et bestyrelsesreferat. Og den kan afskærme systemer, der ikke kan opdateres, i stedet for at lade dem stå åbne. I vælger selv hvor stor en del af det I vil have med.
Ofte stillede spørgsmål
- Bruger I selv AI til at skrive kode?
- Ja. Det er en del af grunden til at vi kan sikre det, vi kender de konkrete steder hvor en agent læser noget, den ikke burde handle på, fordi vi arbejder i dem hver dag.
- Forlader vores kode vores eget miljø?
- Kun hvis I vil det. Både scanningen af agenten og red teaming kan køre self-hosted, så kode og prompts bliver hos jer. Det er ofte afgørende, når der er IP eller datasuverænitet i spil.
- En skill har 3.000 stjerner. Er den så sikker?
- Stjerner siger noget om markedsføring, ikke om kode. Forskning fremlagt på ICSE 2026 opgjorde omkring seks millioner mistænkte falske stjerner på GitHub, og flertallet promoverede kortlivede malware-repositories. Et repo der er tre uger gammelt og har tre tusind stjerner, er et advarselstegn og ikke en anbefaling. Vi ser på hvad koden gør, hvad den ringer ud til, og hvem der har stået bag den over tid.
- Vi bruger Cursor og ikke Claude Code. Gælder det stadig?
- Ja. Beskyttelsen af agentens input og output er ikke bundet til ét værktøj, og scanningen af den producerede kode er helt uafhængig af hvilken agent der skrev den. Pluginet til Claude Code er det mest gennemarbejdede, fordi det er dét vi selv kører.
- Hvor starter man?
- Med en gennemgang af hvad der faktisk kører: hvilke agenter, med hvilke adgange, i hvilke repos. De fleste bliver overraskede over listen. Derefter er det en prioritering, ikke et projekt.
- Har I selv bygget værktøjet?
- Nej. Vi implementerer og driver en markedsledende sikkerhedsstak, det ville være uklogt at bygge sin egen, og vi siger det hellere ligeud. Vores bidrag er at sætte det rigtigt op i jeres udviklingsmiljø, drive det, og kunne læse den kode agenterne producerer. Det sidste kan en ren sikkerhedsleverandør ikke.
- Vi er kun fem udviklere. Er det her overkill?
- Nej, snarere omvendt. Fem udviklere med kodeagenter har den samme angrebsflade som halvtreds, bare uden en sikkerhedsafdeling til at holde øje. Omfanget skaleres efter antal maskiner og agenter, og en lille opsætning er tilsvarende lille.
- Vi kører alt i containere. Ændrer det noget?
- Det flytter en del af arbejdet til CI/CD, hvor det hører hjemme. Imaget scannes før udrulning for sårbarheder, indbyggede hemmeligheder og pakker der ikke burde være der, og containeren overvåges i drift. For et udviklingshold er det som regel den billigste sikkerhed at få på plads, fordi den kører automatisk i en pipeline der allerede findes.
Er vi de rigtige til opgaven?
Vi siger nej til opgaver, vi ikke er de rigtige til, og vi siger det højt, når en idé ikke bærer. Det er billigere at høre i en samtale end at opdage efter tre måneder.
En rådgivningssamtale tager en halv time og forpligter ingenting. I fortæller, hvad I står med. Vi siger ærligt, om vi kan løse det.
