GitHub har annonceret tilføjelsen af et eksperimentelt maskinlæringssystem til Code scanning-tjenesten, som identificerer almindelige typer sårbarheder i koden. I testfasen er den nye funktionalitet kun tilgængelig for repositories med kode skrevet i JavaScript og TypeScript. Det bemærkes, at anvendelsen af maskinlæring har betydeligt udvidet omfanget af identificerede problemer, da systemet nu ikke kun begrænser sig til at tjekke typiske mønstre og ikke er bundet til kendte rammer. Blandt de nye problemer, som systemet identificerer, nævnes fejl, der fører til cross-site scripting (XSS), forvrængning af filstier (f.eks. ved angivelse af "\/.."), og indsprøjtning af SQL- og NoSQL-forespørgsler.
Code scanning-tjenesten muliggør tidlig identifikation af sårbarheder under udviklingen ved at scanne hver "git push" for potentielle problemer. Resultatet vedhæftes direkte til pull-anmodningen. Tidligere blev kontrol udført ved hjælp af CodeQL-motoren, som analyserer mønstre med typiske eksempler på sårbar kode (CodeQL gør det muligt at oprette en skabelon af sårbar kode for at identificere lignende sårbarheder i andre projekters kode). Den nye motor, der bruger maskinlæring, kan identificere tidligere ukendte sårbarheder, da den ikke er knyttet til en gennemgang af kodeskabeloner, der beskriver specifikke sårbarheder. Prisen for denne mulighed er en stigning i antallet af falske positiver sammenlignet med kontroller baseret på CodeQL.
Kilde: opennet.ru
