Code-ondertekeningscertificaten zijn cruciaal voor het waarborgen van de authenticiteit en integriteit van software. Toch kan diefstal ervan cybercriminelen in staat stellen om kwaadaardige code te verspreiden onder het mom van legitimiteit, mits ze ook de bijbehorende privésleutels compromitteren. Het compromitteren van de bijbehorende privésleutels maakt namelijk daadwerkelijk kwaadaardige ondertekening mogelijk. Deze certificaten zijn aantrekkelijke doelwitten voor aanvallers omdat ze het vertrouwen genieten van gerenommeerde organisaties, waardoor ondertekende malware beveiligingscontroles op systemen zoals Windows en macOS kan omzeilen.
Op 31 januari 2023 meldde GitHub, een toonaangevend platform voor codehosting, een ernstig beveiligingslek waarbij aanvallers drie versleutelde codeondertekeningscertificaten stalen. Dit incident bracht de kwetsbaarheden in zelfs de meest robuuste softwareontwikkelingsecosystemen aan het licht en de verwoestende potentie van gestolen certificaten.
In deze blog gaan we dieper in op het GitHub-inbreukonderzoek. We bespreken de uitdagingen waarmee de hackers te maken kregen, de impact van de diefstal en hoe deze had kunnen worden voorkomen.
Bedrijfsoverzicht
Microsoft is eigenaar van GitHub, 's werelds grootste platform voor versiebeheer en collaboratieve softwareontwikkeling, dat meer dan 100 miljoen repositories host en in 2023 meer dan 94 miljoen ontwikkelaars bedient. GitHub, gevestigd in San Francisco, biedt tools voor codehosting, versiebeheer en pijplijnen voor continue integratie/continue implementatie (CI/CD)., die miljoenen open-source- en enterprise-projecten ondersteunt. Deze CI/CD- en DevOps Integraties zijn weliswaar krachtig, maar vormen ook potentiële aanvalsoppervlakken die cybercriminelen kunnen misbruiken om de softwaretoeleveringsketen in gevaar te brengen.
De cruciale rol van het platform in het wereldwijde software-ecosysteem maakt het een waardevol doelwit voor aanvallers die vertrouwde certificaten willen misbruiken voor kwaadaardige doeleinden. GitHub fungeert als een cruciale schakel in de vertrouwensketen van software, waar de certificaten de legitimiteit van de software die via het platform wordt verspreid, garanderen. Deze cruciale positie maakt het een buitengewoon aantrekkelijk doelwit voor aanvallers, omdat het hacken van de certificaten van GitHub hen in staat zou stellen schadelijke code te injecteren in een breed scala aan vertrouwde software, wat de basis van softwarebeveiliging voor miljoenen gebruikers effectief zou ondermijnen.
Aard en tijdlijn van de inbreuk
De inbraak werd mogelijk gemaakt door een gecompromitteerde Personal Access Token (PAT), die de aanvallers ongeautoriseerde toegang verleende. Het is een wachtwoordachtig veld gekoppeld aan een machine-account, ontworpen voor geautomatiseerde tools en scripts om te communiceren met GitHub. De PAT werd waarschijnlijk misbruikt vanwege ontoereikende beveiligingsmaatregelen, hoewel de exacte methode van de inbraak onduidelijk blijft. Aanvallers hadden ongeveer een dag toegang voordat de inbraak werd gedetecteerd. De gestolen certificaten omvatten:
- Één Apple Developer ID-certificaat, geldig tot 2027.
- Twee door DigiCert uitgegeven certificaten, met vervaldatums van respectievelijk 4 januari 2023 en 1 februari 2023.
Belangrijk is dat alle gestolen certificaten versleuteld en met een wachtwoord beveiligd waren; er was geen bewijs dat de aanvallers ze hadden gedecodeerd of kwaadwillig hadden gebruikt. Deze versleuteling beperkte waarschijnlijk de onmiddellijke risico's, maar de kans op misbruik bleef een belangrijke zorg.
Het incident verliep als volgt:
- December 6, 2022 : Aanvallers gebruikten de gecompromitteerde PAT om repositories te klonen, waaronder die met codeondertekeningscertificaten.
- December 7, 2022 : GitHub detecteerde de ongeautoriseerde toegang en heeft de gecompromitteerde PAT onmiddellijk ingetrokken, waardoor verdere toegang niet meer mogelijk is.
- 31 januari 2023: GitHub maakte het incident openbaar via een blogpost, waarin de diefstal werd onthuld en de responsmaatregelen werden uiteengezet.
- 2 februari 2023:Als voorzorgsmaatregel heeft GitHub de drie gestolen certificaten onmiddellijk ingetrokken.
Het feit dat de aanvallers ongeautoriseerde toegang kregen en behielden vóórdat ze werden ontdekt, wijst op een mogelijke lacune in de realtime monitoring- en waarschuwingssystemen van GitHub voor verdachte activiteiten die verband houden met machine-accounts en PAT's. Hoewel GitHub snel reageerde nadat de toegang was geïdentificeerd, onderstreept deze periode van onopgemerkte toegang het cruciale belang van sterke anomaliedetectie en continue beveiligingsmonitoring, met name voor een kritieke infrastructuuromgeving zoals GitHub.
Challenges
Het GitHub-codeondertekeningscertificaat bracht een aantal belangrijke uitdagingen met zich mee:
-
Ongeautoriseerde toegang tot certificaten
Op 6 december 2022 kregen aanvallers ongeautoriseerde toegang tot bepaalde GitHub-repositories en stalen ze drie versleutelde codeondertekeningscertificaten: één Apple Developer ID-certificaat en twee door DigiCert uitgegeven certificaten. Hoewel de certificaten met een wachtwoord waren beveiligd, bracht de diefstal het risico met zich mee dat aanvallers deze zouden proberen te decoderen en misbruiken om schadelijke code te ondertekenen.
-
Vertraagde detectie
De inbreuk bleef onopgemerkt tot 7 december 2022, toen GitHub verdachte activiteit identificeerde. Deze vertraging stelde aanvallers in staat de certificaten te exfiltreren, wat de uitdaging van realtime monitoring in complexe ontwikkelomgevingen benadrukt.
-
Kwetsbaarheden in certificaatbeheer
Het incident bracht zwakke plekken in certificaatopslag en toegangscontrole aan het licht. Een goede RBAC zorgt ervoor dat accounts, zoals het gecompromitteerde account, alleen de minimaal noodzakelijke rechten hebben om hun toegewezen taken uit te voeren, waardoor brede toegang tot gevoelige informatie zoals codeondertekeningscertificaten wordt voorkomen.
Hoewel de certificaten versleuteld waren, werden ze opgeslagen in opslagplaatsen die toegankelijk waren voor de aanvallers, wat erop wijst dat er onvoldoende gebruik wordt gemaakt van veilige opslagoplossingen zoals Hardware-beveiligingsmodules (HSM's), omdat het speciaal ontworpen cryptografische apparaten zijn die cryptografische sleutels in een fraudebestendige omgeving bewaren, zodat de sleutels het apparaat nooit verlaten, zelfs niet tijdens ondertekening. Onderzoek van GitHub bevestigde dat er geen sprake was van kwaadwillig gebruik, maar de mogelijkheid van misbruik bleef een punt van zorg.
-
Herroeping en reactiecomplexiteit
Het intrekken van de gestolen certificaten vereiste coördinatie met certificeringsinstanties (CA's) zoals DigiCert en Apple, een tijdrovend proces dat de werking van GitHub verstoorde. Het Apple Developer ID-certificaat, geldig tot 2027, vormde een bijzondere uitdaging, omdat Apple toezicht moest houden op misbruik van ondertekende uitvoerbare bestanden. Dergelijke intrekkingsprocessen kunnen zeer complex en tijdrovend zijn; daarom zou het gebruik van geautomatiseerde oplossingen de detectie van gecompromitteerde certificaten aanzienlijk kunnen stroomlijnen, het intrekkingsproces kunnen versnellen en de operationele verstoring die door dergelijke incidenten wordt veroorzaakt, kunnen minimaliseren.
Deze uitdagingen brengen een aantal grotere problemen in de sector aan het licht. Slecht certificaatbeheer en onvoldoende beveiligingsmaatregelen kunnen ertoe leiden dat organisaties met aanzienlijke risico's worden geconfronteerd.
Impact
De diefstal van de codeondertekeningscertificaten van GitHub had verstrekkende gevolgen, ook al werd er geen kwaadaardig gebruik bevestigd:
-
Potentieel voor malwaredistributie
Als de aanvallers de gestolen certificaten hadden ontsleuteld, hadden ze schadelijke software kunnen ondertekenen en daarmee de beveiligingscontroles op Windows- en macOS-systemen kunnen omzeilen. Volgens het IBM Cost of Data Breach-rapport van 2024 bedragen de gemiddelde wereldwijde kosten van een datalek ongeveer 4.9 miljoen dollar, wat de potentiële ernst van dergelijke aanvallen weerspiegelt.
-
reputatieschade
De reputatie van GitHub als betrouwbaar platform stond op het spel, omdat de inbreuk het vertrouwen van de 94 miljoen gebruikers had kunnen ondermijnen. Uit onderzoek blijkt dat malware-aanvallen die mogelijk worden gemaakt door gestolen certificaten de geloofwaardigheid van een organisatie aanzienlijk kunnen schaden, wat mogelijk kan leiden tot omzetverlies.
-
Operationele verstoring
GitHub reageerde hierop door op 2 februari 2023 de gestolen certificaten in te trekken en nieuwe certificaten uit te geven, wat de ontwikkelworkflows verstoorde.
-
Regelgevings- en nalevingsrisico's
De inbreuk leidde tot zorgen over de naleving van normen zoals GDPR en de vereisten van het CA/B Forum, aangezien gestolen certificaten bij misbruik tot datalekken kunnen leiden.
-
Zorgen binnen de hele sector
Het incident onderstreepte de groeiende dreiging van diefstal van codeondertekeningscertificaten, met een toename van 742% in aanvallen op de toeleveringsketen, zoals gerapporteerd door een onderzoek in de afgelopen jaren. Het leidde tot hernieuwde aandacht voor het beveiligen van privésleutels en certificaten binnen de software-industrie. Naast de technische implicaties kunnen dergelijke inbreuken het vertrouwen van ontwikkelaars in platforms zoals GitHub ernstig ondermijnen, omdat ze direct van invloed zijn op het vertrouwen dat gebruikers stellen in dergelijke tools en platforms, waarop ze dagelijks vertrouwen.
Bovendien had het incident een indirecte maar significante impact op de enorme gemeenschap van open-sourcebijdragers, die afhankelijk zijn van de integriteit van GitHub als basis voor hun samenwerking en de distributie van hun projecten.
De mogelijkheid dat de inbreuk wijdverspreide malwareverspreiding mogelijk maakt, onderstreept hoe cruciaal het is om sterke certificaatbeschermingsmaatregelen te treffen. De intrekking van de certificaten had directe gevolgen voor gebruikers van de getroffen applicaties:
- GitHub Desktop voor Mac: Versies 3.0.2 tot en met 3.1.2 zijn ongeldig verklaard, omdat deze waren ondertekend met de gecompromitteerde certificaten. Gebruikers werd geadviseerd om te updaten naar de nieuwste versie, uitgebracht op 4 januari 2023, die nieuwe certificaten bevatte.
- Atoom: Versies 1.63.0 en 1.63.1 werden eveneens ongeldig verklaard en van de releasepagina verwijderd. Gebruikers werden geïnstrueerd om te downgraden naar versie 1.60.0, met de opmerking dat Atom in december 2022 officieel was stopgezet.
- Niet-beïnvloede applicaties: GitHub Desktop voor Windows werd niet beïnvloed, omdat het andere ondertekeningsmechanismen gebruikte.
Hoe kan encryptieconsultancy dit helpen voorkomen?
De CodeSign Secure-oplossing van Encryption Consulting biedt uitgebreide tools om incidenten zoals de certificaatdiefstal van GitHub te voorkomen. Zo had het de risico's kunnen beperken:
-
Veilige sleutelopslag met HSM's
In plaats van te vertrouwen op potentieel kwetsbare repository-opslag, CodeSign Secure maakt gebruik van FIPS 140-2 Level 3-conform Hardware-beveiligingsmodules (HSM's)Dit is cruciaal omdat HSM's een geïsoleerde, fraudebestendige omgeving bieden waar persoonlijke sleutels worden gegenereerd en gebruikt, zodat ze nooit het apparaat verlaten.
Voor diefstal van een GitHub-codeondertekeningscertificaat zou dit betekenen dat, zelfs als aanvallers toegang zouden krijgen tot opslagplaatsen met versleutelde certificaten, de bijbehorende privésleutels, die essentieel zijn voor de daadwerkelijke ondertekening, veilig en volstrekt ontoegankelijk zouden blijven binnen de HSM's.
-
Aangepaste sleutelopslagprovider (KSP)
De gepatenteerde KSP van Encryption Consulting maakt client-side hashing mogelijk, waarbij de cryptografische hash van de code lokaal wordt berekend zonder de privésleutel aan de gebruiker of applicatie bloot te stellen. Dit zorgt ervoor dat ondertekeningsbewerkingen veilig binnen de HSM plaatsvinden, waardoor het risico op openbaarmaking van de privésleutel wordt geëlimineerd, zelfs bij diefstal van certificaten.
-
Geautomatiseerde ondertekening en controle
Handmatige ondertekeningsprocessen zijn foutgevoelig en bieden minder inzicht. CodeSign Secure automatiseert het ondertekeningsproces rechtstreeks binnen CI/CD-pipelines, waardoor alleen geautoriseerde code consistent wordt ondertekend. Belangrijker nog, er worden uitgebreide audit trails gegenereerd voor elke ondertekeningsbewerking, waardoor GitHub ongeautoriseerde toegang in realtime had kunnen detecteren en diefstal mogelijk had kunnen voorkomen voordat deze plaatsvond.
-
Toegangscontrole en monitoring
CodeSign Secure implementeert strikte, op rollen gebaseerde toegangscontroles, waardoor alleen geautoriseerde personen en geautomatiseerde processen ondertekeningsoperaties kunnen initiëren. Bovendien zorgt de integratie met Beveiligingsinformatie en gebeurtenisbeheer (SIEM) Systemen zoals Splunk maken gecentraliseerde, realtime monitoring en waarschuwingen mogelijk.
-
Naleving van industriestandaarden
Onze CodeSign Secure-oplossing helpt u ook om te zorgen voor naleving van CA / B-forum en AVG-vereisten en helpen uw organisatie veilige certificaat- en ondertekeningspraktijken te handhaven.
Conclusie
De diefstal van het GitHub-codeondertekeningscertificaat in 2023 is een belangrijke herinnering aan de kwetsbaarheden in softwareontwikkelingsecosystemen. De diefstal van drie versleutelde certificaten bracht aanzienlijke risico's met zich mee, met mogelijke kosten en schade voor de organisatie. De reactie van GitHub beperkte de onmiddellijke schade, maar de inbreuk onderstreepte de noodzaak van sterkere certificaatbeveiliging.
Encryptie Consulting's CodeSign Secure, met HSM-gebaseerde opslag, geautomatiseerde ondertekening en robuuste monitoring, biedt een proactieve verdediging tegen dergelijke bedreigingen. Omdat cybercriminelen zich richten op codeondertekeningscertificaten, moeten organisaties prioriteit geven aan veilig sleutelbeheer om hun software, gebruikers en reputatie te beschermen. Het beveiligen van de softwaretoeleveringsketen is immers niet uitsluitend de verantwoordelijkheid van individuele bedrijven, maar een gedeelde sectorale verplichting. Dit vereist samenwerking en de implementatie van best practices om digitaal vertrouwen te behouden.
