Beveiligingsonderzoekers bij Wiz hebben een ongewoon geval van kunstmatige intelligentie gedocumenteerd die precies de kwetsbaarheid creëerde die een ander AI-systeem vervolgens ontdekte en uitbuitte: een geautomatiseerde GitHub Copilot-fix introduceerde een ernstige scriptinjectiefout in een open-sourcerepository van Snowflake, en Wiz's autonome Red Agent ontdekte de bug, bewapende hem en haalde inloggegevens uit de interne systemen van Snowflake - allemaal binnen enkele dagen na de landing van de gebrekkige code.

De bevindingen, die maandag op de Wiz Research-blog werden gepubliceerd, bereikten al snel de voorpagina van Hacker News, waar ontwikkelaars debatteerden over wat het betekent voor de groeiende praktijk om AI-codeerassistenten wijzigingen rechtstreeks in productierepository's te laten doorvoeren. De aflevering wordt gelezen als een waarschuwingsschot voor de haast van de industrie naar door AI geschreven code. Voor meer verhalen over de tools die de softwareontwikkeling een nieuwe vorm geven, volgt u onze AI-nieuwsberichtgeving.

Hoe een AI-autofix een kwetsbaarheid creëerde

Volgens Wiz begon het probleem op 18 juni 2026, toen een pull-verzoek in de openbare `snowflake-connector-net`-repository een GitHub Actions-workflow met de naam `jira_issue.yml` bijwerkte. De commit, mede geschreven door de Autofix-functie van GitHub Copilot, verving een veilig coderingspatroon – een patroon dat niet-vertrouwde probleemtitels door een omgevingsvariabele doorgaf en JSON-payloads bouwde met `jq` – door directe sjablooninterpolatie van door de gebruiker gecontroleerde invoer in een shellscript.

De workflow werd uitgevoerd telkens wanneer een GitHub-gebruiker een issue in de repository opende. Omdat de titel van het nummer rechtstreeks in een `run:`-blok werd geïnterpoleerd, was een enkel aanhalingsteken in een samengestelde titel voldoende om het shell-commando te doorbreken en willekeurige code uit te voeren op GitHub's Actions-runners.

Een voorwaardelijke controle in de workflow die leek op een beveiligingspoortje bleek ineffectief: bij issue-gebeurtenissen is de `github.event.pull_request` context altijd nul, dus de voorwaarde wordt voor elke gebruiker geëvalueerd als waar. In de praktijk zou iedereen op GitHub de workflow kunnen activeren.

Wiz zegt dat het veilige patroon dat de AI-assistent verwijderde opzettelijk was geïmplementeerd om precies deze klasse van granaatinjecties te voorkomen – een historische context die de geautomatiseerde assistent niet kon kennen.

Red Agent heeft het gevonden en weigerde te falen

Wat de zaak opmerkelijk maakt, is hoe de fout werd ontdekt. Wiz's Red Agent, een autonome, aanvallende beveiligingsagent, scande de GitHub-organisatie van Snowflake met een CI/CD-analysemogelijkheid toen deze de workflow markeerde als kwetsbaar voor scriptinjectie.

Toen de agent probeerde misbruik te maken van de fout, mislukte de eerste payload (die een commentaarteken gebruikte om de shell-opdracht af te korten) met een bash-syntaxisfout. In plaats van te stoppen, schreven de onderzoekers, analyseerde Red Agent de fout autonoom, paste de payload aan om de shell-syntaxis goed te sluiten en exfiltreerde met succes Jira-inloggegevens naar een out-of-band callback-server. De callback kwam van een GitHub Actions-runner, met de inloggegevens in base64-gecodeerde vorm.

Het geëxfiltreerde token behoorde tot een account met leestoegang tot de engineering-, beveiligingscompliance- en bugbounty-trackingprojecten van Snowflake in Jira.

Vijf dagen van injectie tot patch

De door Wiz gepubliceerde tijdlijn voor openbaarmaking gaat snel:

  • 18 juni 2026 — het kwetsbare patroon wordt geïntroduceerd door een commit die mede is geschreven door Copilot Autofix
  • 23 juni 2026 — Wiz identificeert, exploiteert en rapporteert de fout aan Snowflake via HackerOne
  • 23 juni 2026 — Snowflake herstelt de workflow dezelfde dag, waardoor de veilige `env:` variabele en `jq` parseerpatroon worden hersteld
  • 24 juni 2026 — het blootgestelde Jira-token wordt ingetrokken en geroteerd
  • 25 juli 2026 — gecoördineerde openbaarmaking

Snowflake vertelde Wiz dat uit het onderzoek geen bewijs is gebleken van ongeautoriseerde toegang. "De onthulling werd ontvangen op 23 juni 2026 en werd onmiddellijk onderzocht en verholpen, en ons onderzoek vond geen bewijs van ongeautoriseerde toegang", zei het bedrijf in een verklaring, eraan toevoegend dat het samenwerkt met Wiz om de lessen met de bredere industrie te delen.

De grotere les: AI-code heeft onderzoek op menselijk niveau nodig

Wiz trok drie conclusies uit het incident, en deze reiken veel verder dan Sneeuwvlok.

Ten eerste moeten door AI gegenereerde pull-aanvragen dezelfde statische analyse en beveiligingsbeoordeling ondergaan als menselijke code. Codeerassistenten voorspellen code op basis van probabilistische patronen, wat betekent dat ze stilletjes verouderde of onveilige constructies kunnen herintroduceren die een repository al had geëlimineerd.

Ten tweede storten ontdekkingsvensters in. Het beveiligingslek was slechts vijf dagen live voordat een geautomatiseerde agent het ontdekte en valideerde. Een tempo dat ervan uitgaat dat aanvallers die met vergelijkbare tools scannen, net zo snel kunnen bewegen. Snelle patchcycli en kortstondige referenties worden basisvereisten.

Ten derde hebben organisaties vangrails nodig die AI-assistenten ervan weerhouden gestructureerde dataparsers te vervangen door directe stringinterpolatie – precies de regressie die hier plaatsvond.

Het incident komt terecht op een moment van bredere introspectie binnen de sector over door AI gegenereerde code. Een reeks recente onderzoeken en praktijkvoorbeelden heeft aangetoond dat AI-coderingstools met vertrouwen bugs, beveiligingslekken en onderhoudsproblemen kunnen introduceren, naast hun productiviteitswinst. Wat de Snowflake-zaak onderscheidend maakt, is de gesloten lus: de AI die het probleem veroorzaakte en de AI die het probleem opmerkte, handelden beide autonoom, waarbij mensen de nasleep beoordeelden.

Voor beveiligingsteams is de boodschap van Wiz bot. De vraag is niet langer of door AI geschreven code kwetsbaarheden zal bevatten; het is de vraag of jouw detectiepijplijn, menselijk of geautomatiseerd, deze sneller kan vinden dan de agent van iemand anders.

Blijf de AI-curve een stap voor

AI-coderingstools en autonome agenten veranderen de softwarebeveiliging in realtime. Maak een bladwijzer van AI Buzz Wire voor dagelijkse rapportage over de AI-industrie.

Lees meer AI-nieuws →