GitHub implementoval systém strojového učení pro vyhledávání zranitelností v kódu

GitHub oznámil přidání experimentálního systému strojového učení do své služby skenování kódu, aby identifikoval běžné typy zranitelností v kódu. Ve fázi testování je nová funkce aktuálně dostupná pouze pro úložiště s kódem v JavaScriptu a TypeScriptu. Je třeba poznamenat, že použití systému strojového učení umožnilo výrazně rozšířit škálu identifikovaných problémů, při jejichž analýze se systém již neomezuje na kontrolu standardních šablon a není vázán na známé frameworky. Mezi problémy identifikované novým systémem jsou zmíněny chyby, které vedou ke cross-site scriptingu (XSS), zkreslení cest k souborům (například prostřednictvím označení „/..“), záměně SQL a NoSQL dotazů.

Služba skenování kódu vám umožňuje identifikovat zranitelnosti v rané fázi vývoje tím, že každou operaci „git push“ prohledá, zda neobsahuje potenciální problémy. Výsledek je připojen přímo k požadavku na stažení. Dříve byla kontrola prováděna pomocí enginu CodeQL, který analyzuje šablony s typickými příklady zranitelného kódu (CodeQL umožňuje vytvořit šablonu zranitelného kódu pro identifikaci přítomnosti podobné zranitelnosti v kódu jiných projektů). Nový engine, který využívá strojové učení, dokáže identifikovat dříve neznámá zranitelnost, protože není vázán na výčet šablon kódu, které popisují konkrétní zranitelnosti. Cenou této funkce je nárůst počtu falešně pozitivních výsledků ve srovnání s kontrolami založenými na CodeQL.

Zdroj: opennet.ru

Přidat komentář