Github on miljardien koodirivien koti ja nyt kehittäjille on tuotu varastoon natiivityökalu, jolla voidaan tarkistaa koodiin sisältyviä haavoittuvuuksia. Työkalu perustuu Semmlen semanttiseen koodinanalyysiin.
Semmleä käyttävät monet jättimäiset organisaatiot, kuten Uber, NASA, Microsoft ja Google. Työkalun avulla on löydetty tuhansia haavoittuvuuksia suurimmista ohjelmistoista. Nyt työkalu siis löytyy natiivina kaikkien Github-käyttäjien käyttöön.
Semmlen semanttinen CodeQL-koodianalyysimoottori antaa kehittäjille mahdollisuuden kirjoittaa kyselyjä, jotka tunnistavat koodimalleja suurissa koodikannoissa. Kuvailujen perusteella työkalu etsii haavoittuvuuksia ja niiden muunnelmia.
Tietoturvatutkijat löytävät Semmlen avulla nopeasti haavoittuvuudet koodista yksinkertaisilla kyselyillä. Nämä tiimit jakavat sitten kyselynsä Semmlen yhteisön kanssa parantaakseen koodin turvallisuutta muissa koodikannoissa. Kirjastosta löytyy jo yli 2000 erilaista kyselyä kehittäjien käyttöön.
Yksikään yritys ei löydä kaikkia haavoittuvuuksia avoimessa koodissa, eikä pysty varmistamaan avoimen lähdekoodin toimitusketjua kaikkien koodaajien osalta. Semmlen yhteisöllinen lähestymistapa tietoturva-aukkojen tunnistamiseen ja ehkäisyyn on paras tapa edetä.
Kehittäjien kannalta tärkeää on, että haavoittuvuudet löytyvät samalla, kun koodia luodaan. Näin potentiaalisesti suuren riskit tietoturva-aukot eivät koskaan pääse tuotantokoodiin asti.
Tulokset ovat merkittäviä. Semmlen beetatestaus alkoi toukokuussa ja sen jälkeen työkalulla on skannattu yli 12 tuhatta koodivarastoa (repository) yli 1,4 miljoonaa kertaa. Prosessin aikana on löytynyt yli 20 tuhatta haavoittuvuutta, joista merkittävä osa korjataan ennen koodin julkaisua.