A GitHub elindított egy gépi tanulási rendszert, hogy megtalálja a kód sérülékenységét

GitHub logó

Bemutatták a GitHubot néhány nappal ezelőtt a hozzáadás gépi tanulási rendszerrel kísérleteznekl kódolvasó szolgáltatáshoz a sérülékenységek gyakori típusainak azonosítására A kódban. Ezzel a GitHub CodeQL-alapú kódelemző technológiája megújult, és most gépi tanulást (ML) használ a kód lehetséges biztonsági réseinek felderítésére.

És ez az a GitHub megvásárolta a technológiát a CodeQL számára a Semmie felvásárlás részeként. A CodeQL-t biztonsági kutatócsoportok használják a kód szemantikai elemzésére, a GitHub pedig nyílt forráskódúvá tette.

Ezekkel a modellekkel a CodeQL több megbízhatatlan felhasználói adatfolyamot tud azonosítani, és ezáltal több potenciális biztonsági rést.

Megfigyelhető, hogy a gépi tanulási rendszer alkalmazása lehetővé tette az azonosított problémák körének jelentős bővítését, amelyek elemzésében a rendszer ma már nem korlátozódik a tipikus minták ellenőrzésére, és nem kötődik ismert keretrendszerekhez.

Az új rendszer által azonosított problémák közül említik a cross-site scriptinghez (XSS) vezető hibákat, a fájl útvonalak torzulását (például "/.." jelzésen keresztül), az SQL és NoSQL lekérdezések helyettesítését.

A kódellenőrzés most több potenciális biztonsági rést találhat egy új mély tanulási modell segítségével. Ez a kísérleti funkció nyilvános bétaverzióban érhető el a GitHub.com JavaScript- és TypeScript-tárolóihoz.

A GitHub új eszköze fue ingyenes nyilvános bétaként jelent meg A funkció minden felhasználó számára gépi tanulást és mély tanulást használ a kódbázisok átvizsgálására és a gyakori biztonsági rések azonosítására a termék kiszállítása előtt.

A kísérleti funkció jelenleg minden platformfelhasználó számára elérhető, beleértve a GitHub Enterprise felhasználókat is GitHub Advanced Security Feature-ként, és JavaScript vagy TypeScript nyelven írt projektekhez használható.

A nyílt forráskódú ökoszisztéma gyors fejlődésével egyre növekszik a ritkábban használt könyvtárak hosszú farka. A kézzel készített CodeQL lekérdezések példáit használjuk a mély tanulási modellek betanításához a nyílt forráskódú könyvtárak, valamint a belső fejlesztésű zárt forráskódú könyvtárak felismerésére.

Az eszköz célja, hogy megkeresse a négy leggyakoribb biztonsági rést amelyek hatással vannak az ezen a két nyelven írt projektekre: cross-site scripting (XSS), útvonal-injektálás, NoSQL-injektálás és SQL-injektálás.

A kódellenőrző szolgáltatás lehetővé teszi a sérülékenységek észlelését a fejlesztés korai szakaszában azáltal, hogy minden egyes git push műveletet megvizsgál a lehetséges problémák után.

Az eredmény közvetlenül a lehívási kérelemhez van csatolva. Korábban az ellenőrzést a CodeQL motor segítségével végezték, amely a sérülékeny kódok tipikus példáival elemzi a mintákat (a CodeQL lehetővé teszi a sebezhető kód sablonjának létrehozását, hogy más projektek kódjában észlelje a hasonló sérülékenység jelenlétét).

Az új elemzési lehetőségekkel a Code Scanning még több riasztást generálhat négy gyakori sebezhetőségi mintára: Cross-Site Scripting (XSS), Path Injection, NoSQL Injection és SQL Injection. Ez a négy sérülékenységtípus együttesen a JavaScript/TypeScript ökoszisztéma közelmúltbeli sebezhetőségeinek (CVE-k) közül többnek felel meg, és a kódszkennelés képességének javítása az ilyen sérülékenységek észlelésére a fejlesztési folyamat korai szakaszában kulcsfontosságú ahhoz, hogy a fejlesztők biztonságosabb kódokat írjanak.

Az új gépi tanulási motor képes azonosítani a korábban ismeretlen sérülékenységeket mert nem kötődik a konkrét sebezhetőségeket leíró kódminták iterációjához. Egy ilyen lehetőség ára a CodeQL alapú ellenőrzésekhez képest a téves pozitívumok számának növekedése.

Végül azok számára, akik többet szeretnének tudni róla, ellenőrizheti a részleteket A következő linken.

Azt is fontos megemlíteni, hogy a tesztelési szakaszban az új funkcionalitás jelenleg csak JavaScript és TypeScript kóddal rendelkező adattárak számára érhető el.


Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

*

*

  1. Az adatokért felelős: Miguel Ángel Gatón
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.