Lär dig att identifiera känslig information, som lösenord, hemliga nycklar och konfidentiella data, i ditt GitHub-arkiv.
GitHub är en plattform som används av miljontals användare för att lagra och dela kod. Detta är fantastiskt, men ibland kan utvecklare eller kodägare oavsiktligt lägga konfidentiell information i ett offentligt arkiv, vilket kan få allvarliga konsekvenser.
Det finns många exempel på att konfidentiell data har läckt ut på GitHub. Mänskliga misstag är oundvikliga, men det finns åtgärder som kan vidtas för att minska risken.
Hur kan du säkerställa att ditt arkiv inte innehåller lösenord eller nycklar?
Det enkla svaret är: Lagra dem inte alls i arkivet.
En bra praxis är att använda programvara för hemlig hantering för att lagra all känslig information.
Men om du arbetar i ett team kan du inte alltid kontrollera alla andras agerande.
Om du använder Git för att initiera och distribuera din applikation skapas en .git-mapp. Om denna mapp är tillgänglig via internet kan den avslöja känslig information, vilket du bör undvika genom att blockera .git URI.
Följande lösningar kan hjälpa dig att hitta fel i ditt arkiv.
Hemlighetsgranskning
GitHubs hemlighetsgranskning är ett effektivt verktyg för att upptäcka oavsiktliga hemligheter som gömmer sig i koden. Detta skyddar mot dataläckor och säkerhetsintrång. Den fungerar både för publika och privata arkiv och undersöker noggrant alla hörn och vrår för att hitta eventuella hemligheter.
Verktygets funktioner går dock längre än så. När en hemlighet upptäcks vidtar GitHub åtgärder genom att varna relevanta tjänsteleverantörer, vilket uppmanar dem att snabbt minska potentiella risker. I privata arkiv meddelar GitHub organisationsägare eller administratörer så att rätt personer i ditt team genast blir medvetna om problemet.
För att ge kontinuerlig insyn visas varningar tydligt i arkivet. Detta signalerar till dig och ditt team att snabbt vidta åtgärder. GitHubs hemlighetsgranskning agerar som en pålitlig partner och arbetar aktivt för att säkerställa att ingen hemlighet missas och att dina projekt är säkra.
Utnyttja hemlighetsgranskningens kapacitet och koda med trygghet, med vetskap om att din känsliga information är skyddad.
Git Secrets
Vi presenterar Git Secrets, ett verktyg som kan rädda dig från pinsamheten att av misstag lägga till hemligheter i dina Git-arkiv. Det söker igenom commits, commit-meddelanden och sammanslagningar för att förhindra att hemligheter läcker ut i koden.
För att installera verktyget i Windows kör du helt enkelt install.ps1 PowerShell-skriptet. Det kopierar nödvändiga filer till en installationskatalog och lägger till dem i din användar-PATH. Detta gör Git Secrets lättillgängligt i din utvecklingsmiljö.
När Git Secrets är installerat kontrollerar det om någon commit, commit-meddelande eller sammanslagningshistorik matchar de konfigurerade förbjudna mönstren. Om en matchning hittas, avvisas kommandot för att förhindra att känslig information smiter igenom.
Du kan justera Git Secrets genom att lägga till reguljära uttrycksmönster till en .gitallowed-fil i arkivets rotkatalog. Detta kan filtrera bort rader som kan utlösa en varning men som är legitima, vilket skapar en balans mellan säkerhet och bekvämlighet.
När Git Secrets skannar en fil extraherar den alla rader som matchar förbjudna mönster och ger detaljerad information, inklusive filsökvägar, radnummer och matchade rader. Den kontrollerar även om de matchade raderna motsvarar registrerade tillåtna mönster. Om tillåtna mönster tar bort alla markerade rader anses commit eller sammanslagning vara säker. Men om det finns matchade rader som inte matchar ett tillåtet mönster blockerar Git Secrets processen.
Det är viktigt att vara försiktig när man använder Git Secrets. Förbjudna mönster bör inte vara för breda och tillåtna mönster bör inte vara för tillåtande. Testning av mönster med hjälp av ad-hoc-anrop till `git secrets –scan $filnamn` säkerställer att de fungerar som de ska.
Om du är intresserad av att lära dig mer om Git Secrets eller vill bidra till dess utveckling finns projektet på GitHub. Det är ett projekt med öppen källkod som uppmuntrar bidrag från samhället. Gå med och gör en skillnad!
Med Git Secrets kan du koda med trygghet, i vetskap om att oavsiktliga hemligheter inte kommer att äventyra dina projekt. Använd detta verktyg för att skydda din känsliga information.
Repoövervakare
Repoövervakare är ett kraftfullt verktyg som kan upptäcka hemligheter och lösenord i din kod. Installationen är enkel: lägg till en webhook i ditt GitHub-arkiv. Repoövervakare har två lägen: att skanna pull-förfrågningar på GitHub eller att skanna lokala kataloger från kommandoraden. Välj det som passar dig bäst.
För att komma igång med Git Secrets, besök GitHub-arkivet och ladda ner den senaste versionen. Där hittar du paket som är anpassade för AWS Lambda-distribution och ett användarvänligt CLI-läge. Med CLI-läget kan du starta direkt utan extra installation, medan pull-request-läget kräver implementering med AWS Lambda. Välj det alternativ som bäst passar dina behov och börja använda kraften i Git Secrets för att stärka säkerheten i din kodbas!
I CLI-läge anger du en katalog som ett argument. Repoövervakare skannar sedan filtyper som stöds och bearbetar varje fil med en tokenizer specifik för typen. Den genomför säkerhetskontroller på de extraherade strängarna och ger tydliga rapporter i vanlig text eller JSON-format.
I pull-request-läge behandlar Repoövervakare webhook-nyttolaster, extraherar ändrade filer och utför säkerhetskontroller av de extraherade strängarna. Om problem hittas anges CI-statusen till misslyckad med en länk till rapporten. Inga problem innebär en lyckad CI-status.
Repoövervakare är en utmärkt kodgranskare som hjälper till att hålla hemligheter och lösenord säkra. Det säkerställer integriteten i vår kodbas, vilket är avgörande i våra professionella liv.
Testa Repoövervakare! Installera det, konfigurera webhooken och låt det söka efter hemligheter och lösenord. Njut av det extra säkerhetslagret!
Truffle Hog
Truffle Hog är ett utmärkt verktyg som fungerar som en pålitlig kodkompis och flitigt letar efter känslig information som gömmer sig i dina arkiv. Truffle Hog är mästerlig på att gräva djupt i projektets historik och söka efter potentiella läckor av hemligheter som API-nycklar och lösenord.
Med ett stort antal högentropikontroller och regex-mönster är detta verktyg utrustat för att upptäcka dolda skatter och säkerställa att din kod är säker. Säg adjö till hemliga läckor och välkomna det vakande skyddet från Truffle Hog!
Den senaste versionen av Truffle Hog innehåller många nya kraftfulla funktioner. Den har nu över 700 referensdetektorer som aktivt kontrollerar respektive API:er. Den stöder även genomsökning av GitHub, GitLab, filsystem, S3, GCS och Circle CI, vilket gör den otroligt mångsidig.
Dessutom har TruffleHog inbyggt stöd för omedelbar verifiering av privata nycklar mot miljontals GitHub-användare och miljarder TLS-certifikat med sin banbrytande Driftwood-teknik. Den kan även söka igenom binärfiler och andra filformat för att lämna inget osökt.
TruffleHog finns även tillgänglig som en GitHub Action och en pre-commit hook, vilket ger en sömlös integration i ditt utvecklingsarbetsflöde. Verktyget är enkelt och användarvänligt och ger ett extra lager säkerhet utan krångel.
Med Truffle Hog i din verktygslåda kan du tryggt skydda koden från oavsiktlig exponering och se till att hemligheter förblir säkra. Testa Truffle Hog och låt den göra sitt jobb för att skydda dina projekt.
Git Hound
GitHound går utöver begränsningarna för andra verktyg genom att använda GitHub-kodsökning, mönstermatchning och sökning i commit-historik. Den kan söka igenom hela GitHub, inte bara specifika arkiv, användare eller organisationer.
Git Hound använder GitHub/Gist-kodsökning för att leta reda på känslig information som lagrats på GitHub av vem som helst. Det är som att ha en skattkarta för att hitta potentiella sårbarheter.
GitHound upptäcker känslig data med hjälp av mönstermatchning, kontextuell information och strängentropi. Den går även djupt in i historiken för att hitta felaktigt raderade hemligheter.
För att göra det enklare innehåller GitHound ett poängsystem som filtrerar bort vanliga falska positiva resultat och optimerar sökandet efter känslig information. Det är utformat för att spara tid och ansträngning.
Git Hound kan även detektera och avkoda base64, vilket gör det möjligt att hitta hemligheter kodade i detta format.
Dessutom har GitHound alternativ för integration i större system. Du kan generera JSON-utdata och anpassa regexer enligt dina specifika behov.
I företagsvärlden är GitHound ovärderligt för att söka efter exponerade kund-API-nycklar och skydda känslig information och säkerställa hög säkerhetsnivå.
För buggjägare är Git Hound en revolution. Det gör det möjligt att söka efter läckta API-tokens för anställda, vilket hjälper till att hitta sårbarheter och tjäna pengar.
Gitleaks
Gitleaks är ett lättanvänt verktyg som upptäcker hemligheter, oavsett om de är gömda i kodens historia eller i nuvarande skick. Verktyget minskar risken att exponera lösenord, API-nycklar eller tokens i dina projekt.
Installation av Gitleaks är enkelt. Du kan använda Homebrew, Docker eller Go. Verktyget erbjuder flexibla implementationsalternativ. Du kan ställa in det som en pre-commit hook direkt i ditt arkiv eller dra nytta av Gitleaks-Action för att integrera det i dina GitHub-arbetsflöden.
Gitleaks har kommandot ”detect” som du kan använda för att söka i arkiv, kataloger och enskilda filer. Oavsett om du jobbar på din egen dator eller i en CI-miljö hjälper Gitleaks till att se till att inga hemligheter smiter igenom.
Dessutom finns kommandot ”protect” som du kan använda för att söka efter icke-commit-ändringar i dina Git-arkiv. Detta skyddar dig från att oavsiktligt skicka in hemligheter och håller din kod ren och säker.
Gitleaks sponsras av Tines, ett pålitligt namn i branschen. Med deras stöd fortsätter Gitleaks att utvecklas och förbättras och ger dig de bästa hemlighetsdetekteringsfunktionerna.
Låt inte hemligheter äventyra dina projekt. Installera Gitleaks, konfigurera det och låt det göra grovjobbet med att söka igenom och skydda dina arkiv.
Repo Security Scanner
Repo Security Scanner är ett kommandoradsverktyg som du kan använda för att identifiera känslig information som lösenord, tokens, privata nycklar och andra hemligheter som av misstag har skickats in i ditt Git-arkiv.
Detta verktyg hjälper dig att proaktivt upptäcka och åtgärda potentiella säkerhetsproblem som uppstår på grund av att konfidentiell information har inkluderats i din kodbas. Genom att använda Repo Security Scanner kan du säkerställa integriteten i ditt arkiv och skydda känslig data från obehörig åtkomst.
Repo Security Scanner går djupt in i arkivets hela historik och ger dig snabbt omfattande sökningsresultat. Genom att utföra grundliga genomsökningar kan du identifiera och snabbt åtgärda potentiella säkerhetsbrister som kan uppstå på grund av exponerade hemligheter i programvara med öppen källkod.
Git Guardian
GitGuardian är ett verktyg som utvecklare, säkerhets- och efterlevnadsteam kan använda för att övervaka GitHub-aktivitet i realtid och hitta sårbarheter som orsakas av exponerade hemligheter som API-tokens, säkerhetscertifikat och databasuppgifter.
Med GitGuardian kan teamen tillämpa säkerhetspolicyer i privat och offentlig kod och andra datakällor.
GitGuardians huvudfunktioner är:
- Verktyget hjälper till att hitta känslig information som hemligheter i privat källkod.
- Identifiera och åtgärda läckor av känslig data på offentliga GitHub.
- Det är ett effektivt, transparent och lättkonfigurerat verktyg för att hitta hemligheter.
- Bred täckning och omfattande databas för att inkludera nästan all känslig information som är utsatt för risk.
- Avancerad mönstermatchningsteknik för att förbättra detekteringsprocessen och effektiviteten.
Slutsats
Jag hoppas att den här informationen har gett dig en bild av hur man hittar känslig data i GitHub-arkiv. Om du använder AWS kan du läsa den här artikeln för att söka igenom AWS-säkerhet och felkonfigurationer. Håll utkik efter fler spännande verktyg som kan förbättra ditt professionella liv. Lycka till med kodningen och glöm inte att skydda dina hemligheter! 🔒