GitHub-ek ikaskuntza automatikoko sistema bat ezarri du kodean ahultasunak bilatzeko

GitHub-ek makina ikasteko sistema esperimental bat gehitu zuela iragarri zuen bere kodea eskaneatzeko zerbitzuan, kodean ohiko ahultasun motak identifikatzeko. Proba fasean, funtzionalitate berria JavaScript eta TypeScript-en kodea duten biltegietarako soilik dago erabilgarri. Azpimarratzen da ikaskuntza automatikoko sistema baten erabilerak identifikatutako arazoen sorta nabarmen zabaltzea ahalbidetu duela, sistema zein ez den jada txantiloi estandarrak egiaztatzera mugatzen eta ez dagoen esparru ezagunetara lotzen aztertzean. Sistema berriak identifikatutako arazoen artean, cross-site scripting (XSS), fitxategien bideen distortsioa (adibidez, β€œ/..” adieraztearen bidez), SQL eta NoSQL kontsultak ordezkatzea dakarten erroreak aipatzen dira.

Kodea eskaneatzeko zerbitzuak garapenaren hasierako fasean ahuleziak identifikatzea ahalbidetzen du, "git push" eragiketa bakoitza balizko arazoen bila. Emaitza tira-eskaerari zuzenean eransten zaio. Aurretik, egiaztapena CodeQL motorra erabiliz egin zen, zeinak kode zaurgarrien adibide tipikoekin txantiloiak aztertzen dituen (CodeQL-k kode ahul-txantiloi bat sortzeko aukera ematen du, beste proiektu batzuen kodean antzeko ahultasun bat dagoela identifikatzeko). Ikaskuntza automatikoa erabiltzen duen motor berriak lehen ezezagunak diren ahultasunak identifikatu ditzake, ez baitago lotuta ahultasun zehatzak deskribatzen dituzten kode txantiloiak zenbatzeko. Ezaugarri honen kostua positibo faltsuen kopuruaren gehikuntza da CodeQLn oinarritutako egiaztapenekin alderatuta.

Iturria: opennet.ru

Gehitu iruzkin berria