Softverski kod generiran umjetnom inteligencijom može dovesti do ogromnih sigurnosnih propusta

Softverski kod generiran umjetnom inteligencijom može dovesti do ogromnih sigurnosnih propusta
DepositPhotos

Nedavna studija sa Sveučilišta Stanford otkriva da će softverski inženjeri koji koriste sustave umjetne inteligencije za generiranje koda vjerojatnije uzrokovati sigurnosne propuste u aplikacijama koje razvijaju.

Kroz rad se naglašavaju ponajprije potencijalne zamke sustava za generiranje koda u trenucima kad ih se krene plasirati na tržište.

"Sustavi za generiranje koda trenutno nisu zamjena za programere", rekao je Neil Perry, doktorant na Stanfordu i glavni koautor studije: pa nasravio

"Developeri koji ih koriste za dovršavanje zadataka izvan svojih područja stručnosti trebali bi biti zabrinuti, a oni koji ih koriste za ubrzavanje zadataka u kojima su već vješti trebali bi bar dvaput pažljivo provjeriti rezultate i kontekst u kojem se koriste u cjelokupnom projektu.

Studija Stanforda posebno se bavila Codexom, AI sustavom za generiranje koda koji je razvio istraživački laboratorij OpenAI sa sjedištem u San Franciscu. Istraživači su angažirali 47 programera, od studenata dodiplomskih studija do profesionalaca u industriji s desetljećima iskustva u programiranju, da koriste Codex za dovršavanje problema vezanih uz sigurnost u programskim jezicima, uključujući Python, JavaScript i C.

Codex je treniran na milijardama redaka javnog koda kako bi predložio dodatne retke i funkcije s obzirom na kontekst postojećeg koda. Sustav prikazuje pristup ili rješenje kao odgovor na opis onoga što programer želi postići, oslanjajući se na svoju bazu znanja i na trenutni kontekst.

Prema studiji, sudionici koji su imali pristup Codexu vjerojatnije su pisali netočna i kibernetički nesigurna rješenja problema programiranja u usporedbi s kontrolnom skupinom. Što je još više zabrinjavajuće, vjerojatnije je da će reći da su njihovi nesigurni odgovori bili sigurni u usporedbi s ljudima u kontrolnoj skupini.

Napomenuto je i da rezultati nisu potpuna osuda Codexa i drugih sustava za generiranje koda. Sudionici studije nisu imali sigurnosnu stručnost koja bi im možda omogućila da bolje uoče ranjivosti koda. Osim toga, sustavi za generiranje koda su pouzdano korisni za zadatke koji nisu visokorizični, poput eksperimentalnog istraživačkog koda te bi uz "fino podešavanje" mogli poboljšati prijedloge kodiranja.

"Kompanije koje razvijaju vlastite sustave, možda dodatno trenirane na vlastitom izvornom kodu, mogle bi biti bolje jer se model može potaknuti tako da generira rezultate koji su usklađeniji s njihovim praksama kodiranja i sigurnosti", stoji u istraživanju.

Dakle, kako onda zainteresirani za plasman koda na tržište, poput ljudi s GitHuba, mogu spriječiti da developeri plasiraju ranjivi i nesigurni kod?

Koautori istraživanja imaju nekoliko ideja, uključujući mehanizam za "pročišćavanje" korisničkih upita kako bi bili sigurniji, slično "nadzorniku" koji pregledava i revidira grube nacrte koda. Oni također predlažu da developeri kriptografskih biblioteka osiguraju da su njihove zadane postavke sigurne, budući da se sustavi za generiranje koda obično drže zadanih vrijednosti koje nisu uvijek oslobođene iskorištavanja.

U konačnici, dobro je da postoje studije ovog tipa jer im je cilj prevencija, a u doba "divljeg" korištenja i razvoja umjetne inteligencije, to je prijeko potrebno.