(Vitoria Rio) (9. lokakuuta 2020)
Yritysten kasvaessa ja jatkuvasti kasvavan määrän ominaisuuksia kehittäjät luovat ja integroivat jatkuvasti uusia koodikappaleita sitoumuksina, vedä pyyntöjä jne. Ketterien menetelmien suosion kasvaessa nopeammasta ratkaisusta haavoittuvuusanalyyseihin on tulossa välttämätöntä. Heti kun koodi on sitoutunut arkistoon, jos se sisältää arkaluontoisia tietoja, on ryhdyttävä toimiin sen korjaamiseksi välittömästi, koska se voi lopulta johtaa tietovuotoihin.
Kuitenkin syventyminen satoihin sitoumuksiin ja vetopyynnöt eivät ole helppoja tehtäviä edes ammattitaitoisten tietoturvainsinöörien joukolle, X9 tulee sisään. X9 on avoimen lähdekoodin työkalu, joka on luotu automatisoimaan arkaluontoisten tietojen havaitseminen organisaation GitHub-arkistoissa. Se voi analysoida koodia ja luoda ilmoituksia Slackin kautta lähes reaaliajassa.
Arkkitehtuuri

Github antaa meille mahdollisuuden lukea useita tapahtumia, kuten sitoumuksia ja hakea pyyntöjä, käyttämällä Github-verkkokoukkoja . Esimerkiksi kun kehittäjä luo PR: n, Github-alustalle luodaan tapahtuma, joka lähettää sitten viestin hyötykuorman ennalta määritetylle reitille (tässä tapauksessa X9-liitännälle), joka sisältää yksityiskohtaista tietoa kyseisestä tapahtumasta. Tämä lähestymistapa toimii parhaiten, kun otetaan huomioon, että Github antaa meille mahdollisuuden määrittää verkkokoukut koko organisaatiolle, jolloin X9 voi analysoida kaikki tämän soveltamisalueen arkistot.
Konfiguroimalla tapahtumia koko organisaatiolle, X9 ei vain takaa, että kaikkia arkistoja analysoidaan, mutta myös virtaviivaistetaan analysointiprosessia, mikä antaa turvallisuusinsinööreille enemmän joustavuutta ja hallintaa yrityksen mahdollisista tietoturvauhista.
Vastaanotettuaan tapahtuman hyötykuorman sovellus kloonaa arkiston haaran ja suorittaa useita suojauksia testit. Jokainen tapahtuma on riippumattoman työntekijän käsittelemä, ja sitä voidaan suurentaa, jos suoritusteho on suurempi. Kaikki skannatut haavoittuvuudet tallennetaan sitten PostgreSQL-tietokantaan ja ilmoitetaan Slack-kanavalle. Slack-käyttöliittymän avulla voi luoda ongelman suoraan Githubiin tai merkitä haavoittuvuuden vääräksi positiiviseksi.
Analyysi
X9 käyttää erityisiä allekirjoituksia ja malleja tunnistaakseen järkevää tietoa koodista. Nämä allekirjoitukset ovat säännöllisiä lausekkeita, jotka on räätälöity tähän erityistarkoitukseen, kuten r"[a-zA-Z0-9]*\@emailexample.com"
, jotka saattavat havaita henkilökohtaisia sähköposteja tai seuraavat, jotka havaitsevat AWS-avaimet tiedostosisällössä (määritelty eteenpäin):

Sovellus antaa käyttäjän myös määrittää mukautetun säännölliset lausekkeet, mikä mahdollistaa enemmän toimialuekeskeisen lähestymistavan. X9: lle on neljä tyyppistä allekirjoituskontekstia:
- tiedostonimi : etsii täydellisiä tiedostonimiä
- laajennus : etsii tiettyjä laajennuksia (esim. .pem, .db)
- polku : hakee tietokannan ennalta määrätyn kansion koko polun
- sisältö : etsii kuvioita tiedostojen sisältä
Ilmoitukset ja toiminnot

Interaktiiviset komponentit ( avoin numero ja False Positive -painikkeet) mahdollistavat suoran ongelman luomisen GitHubiin ja jättävät haavoittuvuuden vääräksi positiiviseksi. Jos viestistä on luotava ongelma, haavoittuvaan arkistoon luodaan seuraava ongelman muoto:

Hallintapaneeli
X9: ssä on myös koontinäyttö haavoittuvuuden visualisointia varten. Tämä koontinäyttö on valinnainen erillinen sovellus, joka ei häiritse tietoturva-analyysiä. Se käyttää OpenID Connect -tunnistusta.
Hallintapaneeli on taulukonäkymä, joka sallii suodattamisen arkiston nimen ja haavoittuvuustyypin mukaan. Jos se on luotu, näytetään myös julkaisun linkki.

Viimeiset ajatukset
X9 on edelleen kesken ja sitä päivitetään aktiivisesti, julkaisut ovat tervetulleita :).
Katso se osoitteesta github.com/ResultadosDigitais/ x9 .
Viitteet
Tämän projektin inspiroivat Shhgit ja Gitleaks , joka tarjosi suurimman osan allekirjoituksista ja analyyttisestä strategiasta.