GitHub spustil systém strojového učení, který má najít zranitelnosti v kódu

Logo GitHub

GitHub odhalen před několika dny přidání experimenty se systémem strojového učeníl na službu skenování kódu k identifikaci běžných typů zranitelností V kódu. Díky tomu byla technologie analýzy kódu založená na CodeQL GitHubu přepracována a nyní využívá strojové učení (ML) k nalezení potenciálních bezpečnostních zranitelností v kódu.

A je to GitHub získala technologii pro CodeQL jako součást akvizice Semmie. CodeQL používají bezpečnostní výzkumné týmy k provádění sémantické analýzy kódu a GitHub z něj udělal open source.

S těmito modely může CodeQL identifikovat více nedůvěryhodných uživatelských datových toků, a proto více potenciálních bezpečnostních zranitelností.

Je pozorováno, že použití systému strojového učení umožnilo výrazně rozšířit škálu identifikovaných problémů, v jejichž analýze se systém nyní neomezuje na ověřování typických vzorů a není vázán na známé rámce.

Z problémů identifikovaných novým systémem jsou zmíněny chyby vedoucí ke cross-site scriptingu (XSS), zkreslení cest k souborům (např. přes označení "/.."), substituce SQL a NoSQL dotazů.

Skenování kódu nyní může najít další potenciální bezpečnostní zranitelnosti pomocí nového modelu hlubokého učení. Tato experimentální funkce je k dispozici ve veřejné beta verzi pro repozitáře JavaScriptu a TypeScript na GitHub.com.

Nový nástroj GitHubu fue uvolněna jako bezplatná veřejná beta U všech uživatelů tato funkce využívá strojové učení a hluboké učení ke skenování kódových základen a identifikaci běžných bezpečnostních slabin před odesláním produktu.

Experimentální funkce je v současné době k dispozici všem uživatelům platformy, včetně uživatelů GitHub Enterprise, jako pokročilá bezpečnostní funkce GitHubu a lze ji použít pro projekty napsané v JavaScriptu nebo TypeScriptu.

S rychlým vývojem ekosystému s otevřeným zdrojovým kódem existuje stále větší počet knihoven, které se používají méně často. Příklady z ručně vytvořených dotazů CodeQL používáme k trénování modelů hlubokého učení, které rozpoznávají knihovny s otevřeným zdrojovým kódem i interně vyvinuté knihovny s uzavřeným zdrojovým kódem.

Nástroj je navržen tak, aby hledal čtyři nejčastější zranitelnosti které ovlivňují projekty napsané v těchto dvou jazycích: cross-site scripting (XSS), route injection, NoSQL injection a SQL injection.

Služba skenování kódu vám umožňuje odhalit zranitelnosti v rané fázi vývoje skenováním každé operace git push pro 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 vzory s typickými příklady zranitelného kódu (CodeQL umožňuje vygenerovat šablonu zranitelného kódu pro detekci přítomnosti podobné zranitelnosti v kódu jiných projektů).

S novými analytickými schopnostmi může Code Scanning generovat ještě více upozornění na čtyři běžné vzorce zranitelnosti: Cross-Site Scripting (XSS), Path Injection, NoSQL Injection a SQL Injection. Tyto čtyři typy zranitelnosti společně představují mnoho nedávných zranitelností (CVE) v ekosystému JavaScript/TypeScript a zlepšení schopnosti skenování kódu detekovat takové zranitelnosti v rané fázi vývojového procesu je klíčem k tomu, aby vývojáři mohli psát bezpečnější kód.

Nový motor strojového učení dokáže identifikovat dříve neznámá zranitelnost protože není vázán na iteraci vzorů kódu, které popisují konkrétní zranitelnosti. Cenou za takovou příležitost je nárůst počtu falešně pozitivních výsledků ve srovnání s kontrolami založenými na CodeQL.

Konečně pro ty, kteří se o tom chtějí dozvědět více, můžete zkontrolovat podrobnosti Na následujícím odkazu.

Je také důležité zmínit, že ve fázi testování je nová funkcionalita aktuálně dostupná pouze pro repozitáře s kódem JavaScript a TypeScript.


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.