GitHub lanserte et maskinlæringssystem for å finne sårbarheter i kode

GitHub-logo

GitHub avduket flere dager siden tillegg av et maskinlæringssystem eksperimenterl til kodeskanningstjeneste å identifisere vanlige typer sårbarheter I koden. Med dette har GitHubs CodeQL-baserte kodeanalyseteknologi blitt fornyet og bruker nå maskinlæring (ML) for å finne potensielle sikkerhetssårbarheter i kode.

Og det er den GitHub kjøpte teknologien for CodeQL som en del av Semmie-oppkjøpet. CodeQL brukes av sikkerhetsforskningsteam for å utføre semantisk analyse av kode, og GitHub gjorde det åpen kildekode.

Med disse modellene kan CodeQL identifisere flere upålitelige brukerdatastrømmer og dermed flere potensielle sikkerhetssårbarheter.

Det er observert at bruken av et maskinlæringssystem har gjort det mulig å betydelig utvide spekteret av identifiserte problemer, i hvis analyse systemet nå ikke er begrenset til å verifisere typiske mønstre og ikke er knyttet til kjente rammeverk.

Av problemene identifisert av det nye systemet, nevnes feil som fører til cross-site scripting (XSS), forvrengning av filstier (for eksempel gjennom indikasjonen "/.."), erstatning av SQL- og NoSQL-spørringer. .

Kodeskanning kan nå finne flere potensielle sikkerhetssårbarheter ved å utnytte en ny dyplæringsmodell. Denne eksperimentelle funksjonen er tilgjengelig i offentlig beta for JavaScript- og TypeScript-repositorier på GitHub.com.

GitHubs nye verktøy fue utgitt som en gratis offentlig beta For alle brukere bruker funksjonen maskinlæring og dyp læring for å skanne kodebaser og identifisere vanlige sikkerhetssårbarheter før et produkt sendes.

Den eksperimentelle funksjonen er for øyeblikket tilgjengelig for alle plattformbrukere, inkludert GitHub Enterprise-brukere som en GitHub Advanced Security Feature, og kan brukes til prosjekter skrevet i JavaScript eller TypeScript.

Med den raske utviklingen av åpen kildekode-økosystemet, er det en stadig økende lang hale av biblioteker som brukes sjeldnere. Vi bruker eksempler fra manuelt opprettede CodeQL-spørringer for å trene dyplæringsmodeller til å gjenkjenne åpen kildekode-biblioteker, så vel som internt utviklede lukkede kildekode-biblioteker.

Verktøyet er designet for å se etter de fire vanligste sårbarhetene som påvirker prosjekter skrevet på disse to språkene: cross-site scripting (XSS), ruteinjeksjon, NoSQL-injeksjon og SQL-injeksjon.

Kodeskanningstjenesten lar deg oppdage sårbarheter på et tidlig stadium av utviklingen ved å skanne hver git-push-operasjon for potensielle problemer.

Resultatet legges direkte ved pull-forespørselen. Tidligere ble sjekken gjort ved hjelp av CodeQL-motoren, som analyserer mønstre med typiske eksempler på sårbar kode (CodeQL lar deg generere en mal med sårbar kode for å oppdage tilstedeværelsen av en lignende sårbarhet i koden til andre prosjekter).

Med nye analysefunksjoner kan kodeskanning generere enda flere varsler for fire vanlige sårbarhetsmønstre: Cross-Site Scripting (XSS), Path Injection, NoSQL Injection og SQL Injection. Sammen representerer disse fire sårbarhetstypene mange av de nylige sårbarhetene (CVE) i JavaScript/TypeScript-økosystemet, og å forbedre muligheten for kodeskanning for å oppdage slike sårbarheter tidlig i utviklingsprosessen er nøkkelen til å hjelpe utviklere med å skrive sikrere kode.

Den nye maskinlæringsmotoren kan identifisere tidligere ukjente sårbarheter fordi det ikke er knyttet til iterasjonen av kodemønstre som beskriver spesifikke sårbarheter. Prisen på en slik mulighet er en økning i antall falske positive sammenlignet med CodeQL-baserte sjekker.

Endelig for de som er interessert i å vite mer om det, kan du sjekke detaljene I den følgende lenken.

Det er også viktig å nevne at i teststadiet er den nye funksjonaliteten for øyeblikket kun tilgjengelig for repositories med JavaScript og TypeScript-kode.


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.