GitHub Copilot bezalako AI laguntzaileek Kodearen segurtasunean duten eragina aztertzea

Stanford Unibertsitateko ikertzaile talde batek kodea idaztean laguntzaile adimentsuak erabiltzeak kodean ahultasunen agerpenean duen eragina aztertu du. OpenAI Codex ikaskuntza automatikoko plataforman oinarritutako soluzioak kontuan hartu ditugu, GitHub Copilot adibidez, kode bloke nahiko konplexuak sortzeko aukera ematen dutenak, prestatutako funtzioetaraino. Kezkak lotuta daude GitHub biltegi publikoetako benetako kodea, ahuleziak dituztenak barne, ikaskuntza automatikoko eredua trebatzeko erabili zenez, sintetizatutako kodeak akatsak errepika ditzakeela eta ahultasunak dituen kodea iradoki dezake, eta, gainera, ez du kontuan hartzen. kanpoko datuak prozesatzen direnean egiaztapen osagarriak egin beharra.

Ikerketan programazioan esperientzia ezberdina duten 47 boluntariok hartu dute parte, ikasleetatik hasi eta hamar urteko esperientzia duten profesionaletaraino. Parte hartzaileak bi taldetan banatu ziren: esperimentala (33 pertsona) eta kontrola (14 pertsona). Bi taldeek edozein liburutegi eta Interneteko baliabideetarako sarbidea zuten, Stack Overflow-ko prest egindako adibideak barne. Talde esperimentalari AI laguntzailea erabiltzeko aukera eman zitzaion.

Parte-hartzaile bakoitzari kodea idaztearekin lotutako 5 ataza eman zitzaizkion, eta horietan ahultasunak sor ditzaketen akatsak egitea erraza da. Esaterako, zifratze- eta deszifratze-funtzioak idazteko, sinadura digitalak erabiltzea, fitxategi-bideen eraketan parte hartzen duten datuak edo SQL kontsultak prozesatzea, C kodean zenbaki handiak manipulatzea, web orrialdeetan bistaratzen diren sarrerak prozesatzeari buruzko lanak zeuden. AI laguntzaileak erabiltzean lortutako kodearen segurtasunean programazio-lengoaiek duten eragina kontuan hartzeko, esleipenak Python, C eta JavaScript izan ziren.

Ondorioz, aurkitu zen codex-davinci-002 ereduan oinarritutako AI laguntzaile adimendun bat erabiltzen zuten parte-hartzaileek kode seguru gutxiago ekoizten zutela AI laguntzailerik erabiltzen ez zuten parte-hartzaileek baino. Orokorrean, AI laguntzailea erabiltzen duten taldeko parte-hartzaileen % 67k baino ez zuten kode zuzen eta segurua eman, eta beste taldean, berriz, % 79 zen.

Aldi berean, autoestimuaren adierazleak alderantzikatu ziren - AI laguntzailea erabiltzen zuten parte-hartzaileek uste zuten beren kodea beste taldeko partaideena baino seguruagoa izango zela. Horrez gain, adierazi zen AI laguntzailearekin gutxiago fidatzen zuten eta emandako aholkuetan analizatzen eta aldaketak egiten denbora gehiago eman zuten parte-hartzaileek ahultasun gutxiago zutela kodean.

Adibidez, liburutegi kriptografikoetatik kopiatutako kodeak parametro lehenetsien balio seguruagoak zituen AIren laguntzaileak iradokitako kodeak baino. Gainera, AI laguntzailea erabiltzean, fidagarriak ez diren enkriptazio-algoritmoen aukeraketa eta itzulitako balioen autentifikaziorik eza konpondu ziren. C zenbakiak manipulatzeko zereginean, AI-ren laguntzailea erabiliz idatzitako kodeak akats gehiago izan zituen osoko gainezkatzea eraginez.

Horrez gain, azaroan 58 ikasleren parte-hartzearekin New Yorkeko Unibertsitateko talde batek egindako antzeko ikerketa bat nabarmendu daiteke, erosketa-zerrenda C-n prozesatzeko egitura bat ezartzeko eskatu zieten. Emaitzek AI-ren laguntzaileak kodearen segurtasunean duen eragin txikia erakutsi zuten - AI-ren laguntzailea erabiltzen zuten erabiltzaileek, batez beste, % 10 inguru gehiago egin zituzten segurtasunarekin lotutako erroreak.

GitHub Copilot bezalako AI laguntzaileek Kodearen segurtasunean duten eragina aztertzea


Iturria: opennet.ru

Gehitu iruzkin berria