En genererad abstrakt illustration på ett ljust gråblått fält: en lång horisontell pipeline-bana av tunna mörkskifferfärgade konturer löper tvärs över mitten, med en enda rundad agentnod placerad på den. Från vänsterkanten matas en omärkt ström av små oregelbundna fragment in i den noden genom en lucka i dess kontur i stället för genom det märkta inloppet ovanför den. Nedströms sitter ett långt större kluster av staplade rektangulära block bakom en streckad gränslinje. Cyanoljus spårar den legitima vägen ovanför noden; bärnstensljus spårar fragmenten som kommer in genom luckan. Ett svagt ritningsrutnät ligger bakom. Ingen text, inga siffror, inga människor, inga varumärken eller organisationslogotyper förekommer. OrcaRouter-logotypen är komponerad i det nedre högra hörnet.
AI Safety Incidents

GitLabs Duo Claude-agent kunde köra godtyckliga kommandon i CI. Ingen har visat att den användes.

Författare

Elias Hawthorne

Publiceringsdatum

Senaste modellerna · 20Visa alla modeller →
Benchmarks: Artificial Analysis · uppdateras dagligen
Tillbaka till alla inlägg

GitLab släppte den 26 augusti 2026 rättade versioner för en allvarlig sårbarhet i Duo Claude AI-agenten, den Claude-baserade agent som GitLabs säkerhetsmeddelande placerar i en CI-kontext. Sårbarheten, som spåras som CVE-2026-18252, gjorde att en autentiserad användare med Developer-rollen kunde få godtyckliga kommandon att köras i ett CI-jobb, eftersom agenten bearbetade konfiguration från en användarkontrollerad källa utan att validera varifrån den kom. GitLab bedömde den till 7,3 på CVSS 3.1-skalan och begränsade det berörda intervallet till GitLab Enterprise Edition: versioner 18.9 upp till men inte inklusive 19.1.7, 19.2 upp till 19.2.5 och 19.3 upp till 19.3.1. GitLab.com körde redan den patchade koden, och GitLab Dedicated-kunder fick besked om att inte göra något. Ingen källa som granskats för den här artikeln rapporterar att någon har exploaterat den, och inget proof of concept har publicerats i öppna källor. Arkivets egen post för denna incident, med dess allvarlighets- och konfidensgrader, finns i Orca AI Incident Archive, tillsammans med närliggande poster från samma vecka.

Vad rådgivningen säger – och vad den utelämnar

Huvuddokumentet är kort. GitLabs versionsnotiser för patchversionerna 19.3.1, 19.2.5 och 19.1.7, publicerade samma dag, listar sju säkerhetskorrigeringar. Den första, markerad High, har rubriken "Problemet med inkludering av funktionalitet från en otillförlitlig kontrollsfär i Duo Claude AI-agent påverkar GitLab EE", och dess prosabeskrivning består av en enda mening. GitLab säger att man "har åtgärdat ett problem som under vissa villkor gjorde att en autentiserad användare med behörigheter för utvecklarrollen kunde ha kört godtyckliga kommandon i en CI-kontext, på grund av att Claude-agenten bearbetade konfiguration från en användarkontrollerad källa". Det är hela den tekniska beskrivning som leverantören publicerade.

CVE-posten, som GitLab självt tilldelade, tillför struktur snarare än substans. Den klassificerar svagheten som CWE-829, upprepar de berörda intervallen och CVSS-poängen 7,3 samt anger att identifieraren reserverades den 29 juli 2026 och publicerades den 26 augusti kl. 13:36 UTC. Bug bounty-rapporten som GitLab tillskriver, HackerOne-rapport 3863650, returnerade 403 vid en oautentiserad hämtning den 29 oktober 2026, så dess tekniska detaljer är inte offentliga, och spårningsobjektet som CVE-posten länkar till som referens – gitlab-org/gitlab arbetsobjekt 607342 – innehöll inget läsbart ärendeinnehåll vid den kontrollen.

Det som säkerhetsrådgivningen inte säger är just det en försvarare skulle vilja veta. Den namnger inte den Duo-funktion som är inblandad, det konfigurationsfält som agenten läser, eller vilken form den användarkontrollerade källan har – vare sig det är en arkivfil, en pipelinevariabel, en kommentar i en issue eller merge request, eller en API-parameter. Inget av detta anges i GitLabs anteckningar, i CVE-posten eller i den branschpress som granskats för den här artikeln. GitLabs produktdokumentation beskriver dock en väg för Claude in i CI: externa agenter, som enligt dokumentationen kör en CI/CD-pipeline när de omnämns i en issue, epic eller merge request, och för vilka det finns ett konfigurationsexempel för Claude Code. Inget av det som granskats kopplar den vägen till CVE-2026-18252. Det är kontext till varför en Claude-agent överhuvudtaget har CI-behörigheter, inte buggens mekanism.

Samma dokumentation är öppenhjärtig om riskklassen. GitLabs sida om externa agenter listar sårbarheter för promptinjektion bland de risker som kunder accepterar genom att aktivera funktionen och beskriver den tredjepartsskanning av promptar som den implementerar som en mildrande åtgärd. Den sidan nämner inte CVE-2026-18252, och varningen är inte en beskrivning av den. Den visar emellertid att opålitlig indata som når en agent med pipelineåtkomst är en risk som GitLabs egen dokumentation redan ber kunder att acceptera.

A self-built HTML card titled 'The disclosure, in GitLab's terms', badged 'CVE-2026-18252 · published 26 August 2026'. Nine labelled rows read: weakness class, CWE-829 inclusion of functionality from an untrusted control sphere; CVSS per GitLab, 7.3 High on the vector network, low complexity, low privileges, user interaction required, high confidentiality and integrity impact, no availability impact; CVSS per NIST, 8.1 on the same vector with user interaction marked not required; affected, GitLab EE from 18.9 before 19.1.7, 19.2 before 19.2.5, and 19.3 before 19.3.1; fixed, the same dates in versions 19.1.7, 19.2.5 and 19.3.1; reporter, thwin_htet through GitLab's HackerOne programme, report 3863650; hosted instances, GitLab.com already patched, GitLab Dedicated no action required; workaround, none published; exploitation, none reported in any source reviewed. A footer reads 'Sources: GitLab patch release notes for 19.3.1, 19.2.5 and 19.1.7; the CVE-2026-18252 record as stored in NVD; OpenCVE; CERT Sante, 27 August 2026.' The OrcaRouter logo is composited in the bottom-right corner.

CI-kontexten är där autentiseringsuppgifterna finns

Den fras som anger allvarlighetsgraden är "i en CI-kontext". Ett pipeline-jobb är ingen leksandlåda; det körs med en runner-token och de hemligheter som projektet har exponerat för det. Cyber Security News, som rapporterade om patchen den 27 augusti 2026, listar vad sådana jobb vanligtvis når — källkod, byggartefakter, autentiseringsuppgifter för driftsättning, molntoken och autentiseringsuppgifter för paketförråd — och noterar att kommandoexekvering i en pipeline kan exponera CI-variabler, ändra byggartefakter, manipulera release-arbetsflöden eller nå längre in i ansluten infrastruktur, beroende på runnerens konfiguration och tokenens omfattning. GBHackers artikel samma dag använder samma inramning. Ingen av kanalerna rapporterar något fall där detta inträffade.

Den distinktionen präglar hur bristen bör tolkas. Det här är en kommandoexekveringsbugg i en agentkomponent, inte en demonstration av att en modell beter sig felaktigt: posten beskriver konfiguration hämtad från en användarstyrd källa och att agenten agerar utifrån den. Ingen genomgången källa beskriver exploiten som en lyckad prompt-injektion, och GitLabs säkerhetsmeddelande tillskriver aldrig resultatet en bedömning av en modell. Den registrerade svagheten är kod som litar på en konfigurationskälla som den inte borde – CWE-829, inkludering av funktionalitet från en otillförlitlig kontrollsfär.

Två CVSS-poäng och ett interaktionssteg

GitLabs 7,3 är inte den enda poäng som är kopplad till identifieraren. I samma NVD-post är NIST:s primära bedömning 8,1. De två vektorerna är identiska utom i en komponent: GitLab anger att användarinteraktion krävs, medan NIST inte gör det. Båda poängen ligger i High-bandet, så den praktiska skillnaden handlar mindre om allvarlighetsgrad än om under vilka villkor buggen utlöses. CERT Santé, det franska hälsoministeriets datorberedskapsgrupp, publicerade en varning den 27 augusti 2026 som följer GitLabs tolkning – 7,3, användarinteraktion krävs, och en utlösare som beskrivs som en interaktion som sätter igång konfigurationsbearbetningen.

Exploateringssignalerna är tysta, och var och en av dem är en avläsning av registret snarare än telemetri. SSVC-bedömningen som CISA:s samordnarroll lagrade i NVD-posten den 26 augusti 2026 registrerar exploatering som "none", automatiserbarhet som "no" och teknisk påverkan som "total". FIRST:s EPSS-modell angav sannolikheten för exploatering till 0,00519, drygt en halv procent, den 28 oktober 2026, i 44:e percentilen bland poängsatta sårbarheter. OpenCVE:s post innehåller samma EPSS-siffra och anger att CVE:n inte finns med i CISA:s katalog Known Exploited Vulnerabilities. CERT Santés varning registrerar "actively exploited: no" och tillägger att det inte fanns något proof of concept i öppna källor vid det datumet. Inget av detta är bevis på att ingen försökte; det är frånvaron av något registrerat försök.

Minst en aggregator, Mallory, sprider en poäng på 8,7 för samma identifierare. NVD:s post innehåller ingen CVSS 4.0-metrik alls – endast GitLabs 7,3 och NIST:s 8,1 – så den siffran kan inte återskapas från någon granskad förstahandskälla, och den används inte här.

Vad som är fastställt, och vad som inte är det

Arkivet betygsätter denna post med tillförlitlighetsgrad A, inte omtvistad, och utan att någon verklig skada registrerats. Den graden har faktisk betydelse här: dokumenten stämmer överens med varandra, och inget av dem beskriver någon skada. Uppdelningen nedan är den del som en sammanfattning på en rad inte kan fånga.

• Fastställt: en sårbarhet i Duo Claude AI-agenten gjorde att en autentiserad Developer-roll kunde få godtyckliga kommandon körda i en CI-kontext, eftersom agenten bearbetade konfiguration från en användarkontrollerad källa. GitLab tilldelade CWE-829 och CVSS 7.3.

• Fastställt: de berörda intervallen och rättningen – 18.9 upp till 19.1.7, 19.2 upp till 19.2.5, 19.3 upp till 19.3.1, rättade den 26 augusti 2026 i 19.1.7, 19.2.5 och 19.3.1. Sårbarheten är registrerad mot GitLab EE; samma utgåva rättade även CE, för en annan brist.

• Fastställt: rapportörens kreditering till thwin_htet via GitLabs HackerOne-program, och den driftsstatus som GitLab gav kunderna – GitLab.com redan patchat, GitLab Dedicated utanför omfattningen av den nödvändiga åtgärden, självhanterade installationer uppmanades att uppgradera omedelbart.

• Fastställt: ingen exploatering har rapporterats. CISA:s SSVC-bedömning anger att ingen sådan förekommer; EPSS förblev under en procent fram till slutet av oktober 2026; CVE:n finns inte i KEV-katalogen enligt OpenCVE; CERT Santé registrerade ingen aktiv exploatering dagen efter offentliggörandet.

• Angivet, men inte bekräftat av leverantören: påverkansbeskrivningarna – hemligheter läsbara, artefakter ändringsbara, utgåvor manipulerbara – är bevakningens redogörelse för vad ett CI-jobs tokenomfång i allmänhet tillåter, inte ett konstaterande att något av detta inträffade i det här fallet. Cyber Security News och GBHackers formulerar dem båda med "could" och "depending on"; ingen av dem rapporterar ett faktiskt fall.

• Inte fastställt: vilken Duo-funktion och vilket konfigurationsfält som var involverade, och vad den användarstyrda källan faktiskt var. Leverantörens uttalande identifierar dem inte.

• Inte fastställt: hur många självhanterade Enterprise-installationer som låg på de drabbade intervallen, hur många som uppgraderade efter den 26 augusti 2026, eller om några attackerades. Ingen av de granskade källorna mäter adoptionen, och leverantören publicerade ingen detektionsmetod för instanser som patchades sent.

• Inte fastställt ännu: den tekniska mekanismen. Enligt GitLabs 90-dagarsregel blir ärendet offentligt omkring slutet av november 2026; fram till dess är det länkade spårningsobjektet en pekare till en förklaring som ännu inte finns offentligt.

A generated abstract illustration on a pale grey-blue field: a small outlined account node sits at the lower left, linked upward by a single thin line to a larger rounded agent node, which in turn connects to a rectangular job container outlined in dark slate. Inside the container, a stack of pale rectangular credential blocks is drawn behind a dotted boundary. The connecting line from the agent passes straight through that boundary rather than around it, and a short amber segment marks where it crosses. A faint second line, drawn in light cyan, runs outside the boundary and stops short. A faint blueprint grid sits behind. No text, numbers, people, brand marks or organisation logos appear. The OrcaRouter logo is composited in the bottom-right corner.

Åtgärden, driftstoppet och 90-dagarsväntan

GitLab släppte 19.3.1, 19.2.5 och 19.1.7 för både Community Edition och Enterprise Edition den 26 augusti 2026 och uppgav att man starkt rekommenderar att alla självhanterade installationer omedelbart uppgraderas till en av dessa versioner. Community Edition-delen av utgåvan är viktig eftersom en annan sårbarhet i samma batch – CVE-2026-77801, ett denial-of-service-problem i importpipelines med betyg 6,5 – påverkar både CE och EE. Själva CVE-2026-18252 är endast registrerad mot Enterprise Edition.

Det finns ingen workaround från leverantören. CERT Santés varning anger att det inte finns någon workaround, och GitLabs anteckningar erbjuder ingen; den enda angivna åtgärden är uppgraderingen. Versionen är inte heller en drop-in-lösning. Den omfattar ordinarie databasmigreringar i alla tre versionerna och migreringar efter driftsättning i 19.3.1 och 19.2.5, vilket enligt GitLab kommer att orsaka driftavbrott på installationer med en nod medan migreringarna slutförs. Driftsättningar med flera noder kan använda GitLabs uppgraderingsprocedur utan driftavbrott.

A self-built HTML card titled 'From reserved identifier to public detail', subtitled 'CVE-2026-18252, the dates that are on the record'. Five timeline rows read: 29 July 2026, GitLab reserves the CVE identifier; 26 August 2026 at 13:36 UTC, the CVE is published and 19.3.1, 19.2.5 and 19.1.7 ship with the fix; 27 August 2026, CERT Sante publishes an alert recording no active exploitation and no workaround; 28 October 2026, FIRST's EPSS puts exploitation probability at 0.00519, the 44th percentile; late November 2026, GitLab's 90-day rule expires and the issue detail becomes public. A footer reads 'Sources: CVE-2026-18252 record metadata; GitLab patch release notes, 26 August 2026; CERT Sante alert, 27 August 2026; FIRST EPSS API, read 29 October 2026; GitLab disclosure policy.' The OrcaRouter logo is composited in the bottom-right corner.

De övriga sex rättelserna är värda en titt, eftersom en av dem ligger nära temat i det här inlägget. CVE-2026-15387, klassad 4,3 och rättad i samma tre versioner, lät en autentiserad användare med behörigheter för utvecklarrollen påverka körningsmiljön för tvingande jobb för Pipeline Execution Policy genom felaktig hantering av jobberoenden. Två vägar för utvecklarrollen in i jobbkörning, en klassad som hög och en som medel, stängdes i samma patch.

GitLabs policy för offentliggörande förklarar varför mekanismen förblir oklar. I patchanteckningarna anges att de ärenden som beskriver varje sårbarhet offentliggörs i ärendespårningen 90 dagar efter den version där de patchades. Räknat från den 26 augusti 2026 placerar det den tekniska redogörelsen för CVE-2026-18252 i den sista veckan i november 2026. Fram till dess har referensen till ärendespårningen i CVE-posten ingen offentlig teknisk redogörelse bakom sig som den här artikeln kan läsa.

Var detta ligger i förhållande till GitLabs andra agentfel

GitLab offentliggjorde en andra, separat agentrelaterad sårbarhet den 2 oktober 2026: CVE-2026-90970, klassad som 9,9, i AI Gateway i stället för i Duo Claude AI-agenten, och nåbar via en specialutformad mall för flödesprompt i stället för via CI-konfiguration. De två är olika buggar i olika komponenter med olika poäng, och arkivet lagrar dem som separata poster. Det de har gemensamt är formen – en AI-komponent i leveransvägen som agerar utifrån konfiguration som en användare med lägre behörighet kan påverka – vilket är anledningen till att den från oktober är värd att läsa vid sidan av den här snarare än i stället för den.

För en operatör är beslutet snävt. Kontrollera versionen: 19.1.7, 19.2.5 och 19.3.1 är de rättade utgåvorna, och allt inom de tre angivna intervallen är påverkat. Det finns ingen tillfällig lösning att använda under tiden, och fram till slutet av november finns det ingen publicerad teknisk beskrivning att granska en sent patchad instans mot. Det som finns är ett register där ingen har rapporterat exploatering – vilket är ett uttalande om frånvaro av bevis, inte en leverantörsförsäkran om att något intrång inte har skett.