Halucinácie AI predstavujú novú hrozbu pre dodávateľský reťazec softvéru

V mrazivom novom vývoji pre vývojárov a organizácie, ktoré sa pri kódovaní spoliehajú na umelú inteligenciu, výskumníci odhalili novú hrozbu dodávateľského reťazca vytvorenú halucináciami AI v modeloch generovania kódu. Tento vznikajúci vektor útoku, nazývaný slopsquatting , by mohol umožniť zlomyseľným aktérom infiltrovať softvérové ekosystémy využitím fiktívnych balíkov halucinovaných veľkými jazykovými modelmi (LLM).
Nebezpečenstvo spočíva v tom, že LLM často „halucinujú“ balíčky – navrhujú alebo vkladajú odkazy na softvérové závislosti, ktoré jednoducho neexistujú. Vo výskume, ktorý spoločne uskutočnili University of Texas v San Antoniu, University of Oklahoma a Virginia Tech, sa zistilo, že žiadny zo 16 populárnych testovaných LLM nebol voči tomuto javu imúnny.
Obsah
Čo je to Slopsquatting a ako to funguje?
Slopsquatting berie túto halucináciu a mení ju na zbraň. Keď LLM počas generovania kódu navrhne neexistujúci balík, kyberzločinci môžu rýchlo zaregistrovať škodlivý balík pod týmto názvom. Po zverejnení môže každý vývojár, ktorý prijme kód vygenerovaný AI v nominálnej hodnote, nevedomky importovať a spustiť škodlivý balík. To nielen ohrozuje individuálny projekt, ale môže sa šíriť aj v rámci celého dodávateľského reťazca softvéru, ak sa infikovaný kód opätovne použije alebo zdieľa.
Štúdia zistila, že z 2,23 milióna balíčkov vygenerovaných v testovacích scenároch Python a JavaScript, takmer 440 000 – teda asi 19,7 % – malo halucinácie. Z toho ohromujúcich 205 474 boli jedinečné názvy fiktívnych balíkov. Väčšina halucinovaných balíčkov – 81 % – bola jedinečná pre konkrétny model, ktorý ich vygeneroval, čo poukazuje na nekonzistentné správanie v rôznych LLM.
Komerčné modely AI mali halucinácie v balíkoch najmenej v 5,2 % prípadov, zatiaľ čo modely s otvoreným zdrojovým kódom dopadli výrazne horšie s mierou halucinácií atakovala 21,7 %. Alarmujúce je, že tieto chyby neboli len jednorazovými náhodami. Viac ako polovica balíčkov s halucináciami (58 %) sa objavila opakovane len počas 10 opakovaní, čo ukazuje jasnú tendenciu k pretrvávaniu.
Rastúce riziko kódu generovaného AI pri vývoji softvéru
Zatiaľ čo predchádzajúce štúdie uznali hrozbu typosquattingu – kde útočníci využívajú nesprávne napísané alebo zavádzajúce názvy balíkov – tento nový útok typu slopsquatting predstavuje prehliadaný a potenciálne oveľa nebezpečnejší variant. Na rozdiel od typosquattingu, ktorý využíva ľudské chyby, slopsquatting využíva vnímanú autoritu a dôveryhodnosť kódu generovaného AI.
Snáď najfascinujúcejšie – a rovnako znepokojujúce – výskumníci zistili, že LLM boli schopné rozpoznať mnohé z ich vlastných halucinácií. To naznačuje nevyužitý samoregulačný potenciál, ktorý by sa dal využiť v budúcich bezpečnostných mechanizmoch. Naznačuje tiež možnosť nasadenia nástrojov na detekciu v modeli, aby sa zabránilo distribúcii chybného alebo nebezpečného kódu.
Ako sa môžu vývojári chrániť pred halucináciami balíkov AI
Na boj proti tejto hrozbe výskumníci navrhujú celý rad zmierňujúcich opatrení. Patria medzi ne pokročilé techniky rýchleho inžinierstva, ako je Retrieval Augmented Generation (RAG), rýchle ladenie a samovylepšenie. Na strane vývoja modelu by stratégie ako kontrolované jemné ladenie a vylepšené dekódovacie algoritmy mohli pomôcť znížiť mieru halucinácií.
Keďže generatívna AI pokračuje v transformácii vývoja softvéru, táto štúdia je jasnou pripomienkou toho, že pohodlie môže niečo stáť. Vývojári musia zostať ostražití a kritickí voči kódu generovanému AI, najmä pokiaľ ide o správu závislostí. Integrácia nástrojov na statickú analýzu a manuálnych kontrol pred inštaláciou akýchkoľvek odporúčaných balíkov je teraz dôležitejšia ako kedykoľvek predtým.
Krajina hrozieb sa rýchlo vyvíja a ako ukazuje tento výskum, musí sa vyvíjať aj naša obrana. To, čo sa kedysi zdalo ako sci-fi – softvér na vytváranie umelej inteligencie, ktorý neexistuje – sa stalo skutočným problémom kybernetickej bezpečnosti so širokými dôsledkami.