Ali lahko Generative AI zaupate, da bo popravil vašo kodo?

Ali lahko Generative AI zaupate, da bo popravil vašo kodo?

Can Generative AI Be Trusted to Fix Your Code? PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Organizacije po vsem svetu tekmujejo za prevzem tehnologij umetne inteligence v svoje programe in orodja za kibernetsko varnost. A večina (65 %) razvijalcev uporabite ali načrtujte uporabo AI pri testiranju v naslednjih treh letih. Obstaja veliko varnostnih aplikacij, ki jim bo koristil generativni AI, toda ali je popravljanje kode ena izmed njih?

Za številne ekipe DevSecOps generativni AI predstavlja sveti gral za čiščenje njihovih vse večjih zaostankov glede ranljivosti. Precej več kot polovica (66%) organizacij pravi, da so njihovi zaostanki sestavljeni iz več kot 100,000 ranljivosti in da več kot dve tretjini sporočenih ugotovitev testiranja statične varnosti aplikacij (SAST) ostane odprtih tri mesece po odkritju, z 50 % ostane odprtih po 363 dneh. Sanje so, da bi lahko razvijalec preprosto zaprosil ChatGPT, da "popravi to ranljivost", in ure in dnevi, ki so bili prej porabljeni za sanacijo ranljivosti, bi bili stvar preteklosti.

V teoriji to ni povsem nora ideja. Konec koncev se strojno učenje že leta učinkovito uporablja v orodjih za kibernetsko varnost za avtomatizacijo procesov in prihranek časa – umetna inteligenca je zelo koristna, če se uporablja za preproste, ponavljajoče se naloge. Toda uporaba generativne umetne inteligence v aplikacijah s kompleksno kodo ima v praksi nekaj pomanjkljivosti. Brez človeškega nadzora in izrecnega ukaza bi lahko ekipe DevSecOps ustvarile več težav, kot jih rešile.

Prednosti in omejitve generativne umetne inteligence v zvezi s kodo za popravljanje

Orodja umetne inteligence so lahko neverjetno zmogljiva orodja za preprosto analizo kibernetske varnosti z nizkim tveganjem, spremljanje ali celo sanacijske potrebe. Skrb se pojavi, ko vložki postanejo posledični. To je navsezadnje vprašanje zaupanja.

Raziskovalci in razvijalci še vedno ugotavljajo zmogljivosti nove generativne tehnologije umetne inteligence ustvarite zapletene popravke kode. Generativna umetna inteligenca se za sprejemanje odločitev opira na obstoječe, razpoložljive informacije. To je lahko koristno za stvari, kot je prevajanje kode iz enega jezika v drugega ali odpravljanje dobro znanih napak. Na primer, če od ChatGPT zahtevate, da »napiše to kodo JavaScript v Pythonu«, boste verjetno dobili dober rezultat. Njegova uporaba za popravljanje varnostne konfiguracije v oblaku bi bila koristna, ker je ustrezna dokumentacija za to javno dostopna in jo je enostavno najti, AI pa lahko sledi preprostim navodilom.

Vendar pa odpravljanje večine ranljivosti kode zahteva ukrepanje na podlagi edinstvenega nabora okoliščin in podrobnosti, kar uvaja bolj zapleten scenarij, po katerem lahko krmari AI. AI lahko zagotovi "popravek", vendar brez preverjanja ne bi smeli zaupati. Generativni AI po definiciji ne more ustvariti nečesa, kar še ni znano, in lahko doživi halucinacije, ki povzročijo lažne rezultate.

V nedavnem primeru se odvetnik sooča z resnimi posledicami, potem ko je uporabil ChatGPT za pomoč pri pisanju sodnih vlog, v katerih je bilo navedenih šest neobstoječih primerov, ki jih je izumilo orodje AI. Če bi umetna inteligenca halucinirala metode, ki ne obstajajo, in bi te metode nato uporabila za pisanje kode, bi to povzročilo izgubo časa za "popravek", ki ga ni mogoče prevesti. Poleg tega glede na OpenAI Bela knjiga GPT-4, bodo sčasoma odkriti novi podvigi, pobegi iz zapora in pojavna vedenja, ki jih bo težko preprečiti. Zato je potreben skrben premislek, da se zagotovi, da so varnostna orodja AI in rešitve tretjih oseb preverjeni in redno posodobljeni, da se zagotovi, da ne postanejo nenamerna stranska vrata v sistem.

Zaupati ali ne zaupati?

Zanimiva dinamika je videti hitro sprejemanje generativne umetne inteligence na vrhuncu gibanja ničelnega zaupanja. Večina orodij za kibernetsko varnost temelji na ideji, da organizacije ne bi smele nikoli zaupati, vedno preverjati. Generativni AI je zgrajen na principu inherentnega zaupanja v informacije, ki so mu na voljo iz znanih in neznanih virov. Ta spopad v načelih se zdi primerna metafora za vztrajen boj, s katerim se soočajo organizacije pri iskanju pravega ravnovesja med varnostjo in produktivnostjo, ki se zdi v tem trenutku še posebej zaostrena.

Čeprav generativni AI morda še ni sveti gral, ki so ga ekipe DevSecOps pričakovale, bo pripomogel k postopnemu napredku pri zmanjševanju zaostankov ranljivosti. Za zdaj ga je mogoče uporabiti za preproste popravke. Za bolj zapletene popravke bodo morali sprejeti metodologijo verify-to-trust, ki izkorišča moč umetne inteligence, ki jo vodi znanje razvijalcev, ki so napisali in lastniki kode.

Časovni žig:

Več od Temno branje