Dirbtinio intelekto įrankis, sukurtas tam, kad automatiškai taisytų saugumo klaidas, netyčia atvėrė duris į vienos didžiausių debesų kompiuterijos bendrovių vidines sistemas. Incidentas, kurio metu „GitHub Copilot Autofix“ įrankis paliko kritinę spragą „Snowflake“ viešojoje saugykloje, o kitas autonominis DI agentas ją aptiko ir išnaudojo, žymi naują etapą programinės įrangos saugumo istorijoje.
Šis atvejis aiškiai parodo, kad aklas pasitikėjimas automatizuotais kodo generavimo įrankiais sukuria naujų, sunkiai prognozuojamų rizikų.
Kaip „Autofix“ sukūrė spragą
Saugumo pažeidžiamumas atsirado 2026 m. birželio 18 d., kai buvo atliktas kodo pakeitimas „Snowflake“ viešojoje snowflake-connector-net saugykloje. Pakeitimo bendraautoriumi buvo nurodytas „Copilot Autofix powered by AI“ – įrankis, kurį „GitHub“ pristatė 2024 m. rugpjūtį, siekdama padėti programuotojams automatiškai analizuoti ir taisyti kodo skenavimo metu aptiktas spragas.
Užuot ištaisęs klaidą, DI įrankis ištrynė saugų kodo šabloną, kuriame vartotojo įvestas tekstas buvo apdorojamas per saugų kintamąjį naudojant `jq --arg` komandą. Vietoje jo sistema įdiegė tiesioginį teksto išplėtimą į shell scenarijų. Dėl šios korekcijos atsirado scenarijaus injekcijos (angl. script injection) pažeidžiamumas, kurį buvo galima suaktyvinti tiesiog sukuriant naują problemos pranešimą (angl. issue) su specialiai suformuotu pavadinimu. Kadangi saugykloje veikė automatinis procesas, perkeliantis pranešimų pavadinimus į vidinę „Snowflake“ užduočių valdymo sistemą Jira, piktavalis galėjo perimti sistemos prieigos raktus.
Autonominis agentas prieš generatyvųjį DI
Saugumo spraga gyvavo penkias dienas. Ją birželio 23 d. aptiko ne žmogus, o „Wiz Research“ sukurtas autonominis, dirbtinio intelekto valdomas saugumo tyrimų įrankis „Red Agent“, vykdęs tyrimus pagal „Snowflake“ pažeidžiamumų paieškos programą platformoje HackerOne.
„Red Agent“ savarankiškai rado spragą, ją išnaudojo ir gavo prieigos raktą, suteikiantį skaitymo teises prie „Snowflake“ vidinės Jira aplinkos. Šioje aplinkoje buvo saugomi jautrūs duomenys: inžineriniai projektai, saugumo atitikties dokumentai ir pranešimai apie kitas saugumo spragas.
Ribos lieka. Gavusi pranešimą, „Snowflake“ nedelsdama pašalino pažeidžiamumą ir pakeitė paveiktus prieigos raktus. Atliktas išsamus auditas patvirtino, kad per penkias dienas jokie tretieji asmenys, išskyrus „Wiz“ tyrėjus, šia spraga nepasinaudojo. Vis dėlto pats faktas, kad saugumo patikros mechanizmai praleido DI sugeneruotą klaidą, verčia iš naujo įvertinti automatizacijos ribas.
Kritinis inžinerijos lūžis
Šis incidentas demonstruoja paradoksalią realybę: vienas DI įrankis sukuria saugumo spragą, o kitas DI agentas ją suranda ir išnaudoja. Saugumo ekspertai pabrėžia, kad DI sugeneruotiems kodo pakeitimams privalo būti taikoma tokia pati griežta statinė analizė ir rankinė peržiūra, kaip ir bet kuriam žmogaus parašytam kodui.
„Snowflake“ viešame pranešime nurodė, kad bendradarbiauja su „Wiz“, siekdama pasidalinti šia patirtimi su platesne technologijų pramone ir paskatinti saugumo praktikų atnaujinimą.
Saugumo specialistai rekomenduoja programuotojams niekada nepasitikėti nepatikrinta įvestimi ir visada naudoti saugius kintamuosius CI/CD (angl. Continuous Integration/Continuous Deployment – nuolatinio integravimo ir diegimo) procesuose. Ateityje įmonės bus priverstos griežtinti automatizuotų kodo pakeitimų kontrolę, nes DI asistentų daromos klaidos gali būti pernelyg sunkiai pastebimos įprastais testavimo metodais.
Šaltiniai
- [1] [Numerama.com | 2026-08-18] Comment un agent IA a trouvé une faille, corrigé son propre bug, et fini par accéder au Jira de Snowflake
- [2] [Wiz.io | 2026-08-17] Red Agent Exploits Snowflake Vuln Missed by Github Copilot | Wiz Blog
- [3] [Cyberkendra.com | 2026-08-17] Copilot Autofix Bug Exposed Snowflake's Internal Jira
- [4] [Scworld.com | 2026-08-18] Wiz agent finds Snowflake repo flaw in code co-authored by GitHub Copilot Autofix | news | SC Media