X9: Hvordan Resultados Digitais automatisk kan registrere følsomme data i sine kodeopbevaringssteder

(Vitoria Rio) (9. okt 2020)

Efterhånden som virksomheder bliver større med en stadigt voksende mængde funktioner, udvikler udviklere konstant og integrerer nye stykker kode som forpligtet, træk anmodninger osv. Med stigningen i popularitet af agile metoder er en mere hurtig løsning til sårbarhedsanalyse et must. Så snart kode er forpligtet til opbevaringsstedet, hvis denne forpligtelse indeholder følsomme oplysninger, skal der tages handlinger for at adressere det med det samme, da det i sidste ende kan føre til datalækager.

At fordele sig i hundreder af forpligtelser og pull-anmodninger er ingen nem opgave selv for et team af dygtige sikkerhedsingeniører, det er her X9 kommer ind. X9 er et open source-værktøj, der er oprettet til at automatisere detektering af følsomme oplysninger i organisationens GitHub-arkiver. Det kan automatisk analysere kode og oprette underretninger gennem Slack i næsten realtid.

Arkitektur

Github giver os mulighed for at læse flere begivenheder såsom begår og trække anmodninger gennem brug af Github Webhooks . For eksempel, når en udvikler opretter en PR, oprettes en begivenhed på Github-platformen, som derefter sender en beskednyttelast til en forudkonfigureret rute (i dette tilfælde X9-grænsefladen) indeholdende detaljeret information om denne begivenhed. Denne tilgang fungerer bedst, når vi overvejer, at Github giver os mulighed for at konfigurere webhooks til hele organisationen, så X9 kan analysere alle arkiver fra dette omfang.

Ved at konfigurere begivenhederne for hele organisationen garanterer X9 ikke kun, at alle arkiver analyseres, men strømliner også analyseprocessen, hvilket giver sikkerhedsingeniører mere fleksibilitet og kontrol over virksomhedens potentielle sikkerhedstrusler.

Efter modtagelse af begivenhedens nyttelast kloner appen arkivets gren og udfører flere sikkerhed test. Hver begivenhed behandles af en uafhængig arbejdstager, som kan skaleres op i tilfælde af højere gennemstrømning. Alle scannede sårbarheder gemmes derefter i en PostgreSQL-database og meddeles på en Slack-kanal. Slack-grænsefladen giver en mulighed for direkte at oprette et problem på Github eller markere sårbarheden som en falsk positiv.

Analyse

X9 bruger specifikke signaturer og mønstre til at registrere fornuftige data i kode. Disse signaturer er regulære udtryk, der er skræddersyet til dette specifikke formål, såsom r"[a-zA-Z0-9]*\@emailexample.com", som muligvis registrerer personlige e-mails eller følgende, der registrerer AWS-adgangsnøgler inde i filindholdet (defineret længere fremme):

Applikationen giver også brugeren mulighed for at konfigurere brugerdefineret regulære udtryk, der muliggør en mere domæneorienteret tilgang. Der er fire typer signaturkontekster til X9:

  • filnavn : Søger efter komplette filnavne
  • udvidelse : Søger efter specifikke udvidelser (f.eks. .pem, .db)
  • sti : Søger efter den komplette sti til en forudbestemt mappe i en fil i lageret
  • indhold : Søger efter mønstre inde i filerne

Underretninger og handlinger

Gennem Slack Webhooks sender X9 detaljerede oplysninger for hvert fund til en brugerdefineret kanal. Det er vigtigt at bemærke, at eventuelt følsomme oplysninger er tilsløret korrekt, som det ses nedenfor:

De interaktive komponenter ( Åbent nummer og Falsk positive -knapper) giver mulighed for direkte oprettelse af problemer på GitHub og ser bort fra henholdsvis sårbarheden som en falsk positiv. Hvis der skal oprettes et problem ud fra meddelelsen, oprettes følgende problemformat i det sårbare lager:

Dashboard

X9 har også et dashboard til visualisering af sårbarheder. Dette dashboard er en valgfri separat applikation, der ikke forstyrrer sikkerhedsanalysen. Det bruger OpenID Connect til logingodkendelse.

Dashboardet er en tabelvisning, der tillader filtrering efter lagernavn og sårbarhedstype. Hvis det oprettes, vises problemets link også.

Afsluttende tanker

X9 er stadig i gang og opdateres aktivt, bidrag er velkomne :).

Tjek det på github.com/ResultadosDigitais/ x9 .

Referencer

Dette projekt er inspireret af Shhgit og Gitleaks , som leverede de fleste af underskrifterne og den analytiske strategi.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *