Co-authored-by: Sikkerhedstimebomben i dine commits

Co-authored-by: Sikkerhedstimebomben i dine commits

Jul 06, 2026 ai coding git security cryptographic provenance supply chain security developer tools ai agents ssh signing software development

Den usynlige sikkerhedssårbarhed i din AI-udviklingspipeline

Prøv dette: Åbn din terminal og kør:

git commit --allow-empty -m "Fix critical security bug
Co-authored-by: Linus Torvalds <linus@kernel.org>"

Tillykke. Du har lige lavet et commit med medforfatterskab af skaberen af Linux. Ingen spurgte om bevis. Ingen tjekkede, om du overhovedet har talt med Linus. Nu stoler kerne-maintaineren på dig, ik?

Selvfølgelig ikke.

Men dette er præcis, hvad tusindvis af organisationer gør hver eneste dag, når AI-kodningsagenter skriver "Co-authored-by: Claude" eller "Co-authored-by: Copilot" – og nogen downstream behandler den linje som meningsfuld attribution.

Problemets kerne: Teater eller fakta?

Her er sandheden: Den der "Co-authored-by"-linje i bunden af dine AI-assisterede commits er ikke attribution. Det er en tekststreng. Den er designet til at kunne forfalskes, og det er fint, så længe det bare er kosmetik. Men den bruges i stigende grad til noget mere konsekvent.

Efterhånden som AI-kodningsagenter bevæger sig fra dokumentation og eksperimenter til produktionskode, merge-pipelines og infrastruktur, stopper spørgsmålet "hvilken agent producerede dette?" med at være trivialviden. Det bliver et spørgsmål om software supply chain. Og når platforme begynder at bruge verificeret attribution-metadata til at træffe tillidsbeslutninger – som f.eks. at auto-godkende PRs baseret på, hvem der angiveligt har skrevet dem – har du en angrebsflade gemt i fuldt syne.

Proof-of-concept'en er ærligt talt uhyggelig. Forskere har demonstreret, at forfalsket forfatter-metadata kan narre automatiserede review-workflows til at behandle ondsindede commits som betroede. Et par git config-kommandoer, ingen exploits nødvendige. Agenten ser en "genkendt" forfatter og fortsætter. Payloaden lander.

Dette er ikke en git-fejl. Git har altid tilladt dig at sætte lige den forfatter, du vil – derfor har vi GPG-signering. Fejlen ligger i antagelsen om, at forfatterfeltet betyder noget, som det ikke gør.

Hvorfor det rammer din virksomhed

Hvis du driver en startup, rammer det dig her: Din AI-assisterede udviklingsworkflow producerer sandsynligvis snesevis eller hundredvis af commits om ugen. Din CI/CD har sandsynligvis automatisering, der stoler mere på visse bidragydere end andre. Måske har du konfigureret branch protection, der springer visse checks over for "kendte" forfattere. Måske vejer dit AI-review agent bidragyders omdømme.

Hele den tillid er bygget på et fundament af forfalskbare strenge.

Attribution-metadata-problemet bliver særligt akut, når du tænker på multi-agent workflows. Moderne udvikling kæder ofte agenter sammen – én agent skriver kode, en anden reviewer den, en tredje håndterer deployment. Hvert led kan hævde forfatterskab. Uden kryptografisk backing tager du i bund og grund deres ord for det. Og agenter, som al anden software, kan blive prompt-injiceret, fejlkonfigureret eller manipuleret.

Du ville ikke acceptere en indkøbsordre med et håndskrevet "godkendt af CFO" og ingen signatur. Hvorfor accepterer du så AI-genererede commits uden bevis for identitet?

Den manglende brik: Kryptografisk provenance

Løsningen er ikke at fjerne attribution – det er at gøre attribution meningsfuld. Hvad økosystemet har brug for er et producer-attribution-lag, hvor påstande om hvilken agent der producerede et artifact er bakket op af kryptografisk evidens, ikke bare tekst.

Det betyder at behandle AI-kodningsagenter som det, de er: software-principals, der har brug for deres egen identitetsinfrastruktur. Hver agent-principal får en signeringsnøgle. Commits signeres med den nøgle. Verifikation sker mod den offentlige nøgle, ikke forfatterfeltet. Git-traileren bliver en påstand; signaturen bliver bevis.

Den praktiske implementering har flere lag:

Plain-text attribution betyder stadig noget, fordi mennesker skal læse det. Forskellen er, at dette lag bliver en påstand at verificere, ikke en påstand at stole på. Strukturerede trailers – agentnavn, modelversion, session-ID, udbyder – giver dig den audit trail, du har brug for. Session-ID'et er særligt nyttigt: det lader dig skifte fra "dette commit blev skrevet af agent X" til "her er den præcise samtale og kontekst, der førte til denne kode."

Kryptografisk signering er enforcement-mekanismen. Med SSH commit signing (nu nativt understøttet af både GitHub og GitLab) har hver agent-principal et nøglepar. Den private nøgle ligger i agentens execution environment. Når den signerer et commit, beviser den identitet kryptografisk. Alle kan verificere: dette commit blev faktisk produceret af denne agent, fordi kun denne agent har den tilhørende private nøgle.

Hardware-backed nøgler gør det robust. For produktionssystemer bør signeringsnøglen ligge i en hardware security module eller minimum en dedikeret enclave. Det forhindrer et kompromitteret agent-runtime i at stjæle nøglen og signere forfalskede commits. Nøglen forlader aldrig den sikre environment; agenten kalder den for at signere.

Tillidskæder for AI-output

Her bliver det interessant for platform-byggerne. Når du har kryptografisk provenance for AI-genererede artifacts, låser du op for capabilities, der er umulige med forfalsket metadata.

Audit trails med bid. Du kan definitivt svare "hvilken model producerede denne kode?" til compliance, debugging eller incident response. Svaret er verificerbart af hvem som helst, ikke bare troet på tro og love.

Trust routing. Fremtidige systemer kunne vægte retrieval-augmented generation efter verificeret producent. Kode fra en model med et bevist kvalitets-track record kunne få anden behandling end anonym output. Det kræver provenance-laget, ikke bare påstande.

IP-afgrænsning. For udviklere, der arbejder med både open source og proprietær kode (eller ansatte udviklere, der bruger AI-værktøjer med uklare vilkår), separerer kryptografisk attribution menneskeskrevet fra AI-assisteret arbejde. Når din arbejdsplads' IP-klausul siger "commit ikke proprietær kode til offentlige repos," gør verificerbar attribution compliance checkbar.

Model-evaluering. At korrelere signerende principals med outcomes lader dig måle, hvilke modeller, udbydere eller prompting-strategier der faktisk producerer bedre kode. Du kan ikke forbedre det, du ikke kan måle, og du kan ikke måle attribution, hvis det er forfalskbart.

Det store billede: AI-agenter har brug for identitetsinfrastruktur

Dette attribution-problem er et symptom på et større gap: AI-kodningsagenter bliver integreret i kritisk infrastruktur, før vi har bygget den identitets- og tillidsinfrastruktur, der skal til for at håndtere dem sikkert.

Vi har PKI til mennesker. Vi har OAuth til services. Vi har hardware-tokens til følsomme operationer. Men til AI-agenter, der rører kode, ændrer tickets og deployer ændringer? Vi stoler mestendels på en tekststreng, der siger "Jeg er den, jeg siger, jeg er."

Det er ikke en kritik af agenterne – de gør præcis, hvad vi har bedt dem om. Det er et systems design-gap. Efterhånden som AI-agenter bliver first-class actors i din udviklingsworkflow, har de brug for first-class identitetsinfrastruktur.

For udviklingsfællesskabet betyder det, at du begynder at tænke på agent-principals, ligesom du tænker på service accounts. Hver eneste har brug for sine egne credentials, scoped permissions, audit logging og rotationspolitikker. Commit-signaturen er bare det synlige artifact af den infrastruktur.

For platforme og værktøjsbyggere betyder det, at du bygger verifikation ind i review-workflowet. Stol ikke på forfatterfeltet – verificér signaturen. Behandl uverificeret metadata, ligesom du behandler uverificeret input: sanitize det, eller ignorer det.

"Co-authored-by"-linjen forsvinder ikke. Den er nyttig human-readable metadata. Men at behandle den som mere end en påstand – især når du træffer tillidsbeslutninger – er en risiko, som branchen ikke længere har råd til at ignorere.

Værktøjerne eksisterer. Standarderne modnes. Det eneste spørgsmål er, om vi bygger infrastrukturet, før den første store hændelse gør det presserende.

Spoiler: Det tager normalt en hændelse. Lad os se, om vi kan komme foran denne gang.


Vibe Hosting fra NameOcean inkluderer AI-assisterede udviklingsmiljøer med integrerede signeringsworkflows til teams, der sender produktionskode med AI-agenter. Fordi kosmetisk attribution ikke er nok, når indsatsen er reel.

Read in other languages:

NL HU IT FR ES DE ZH-HANS EN