GitLab heeft patches uitgebracht om een kritieke fout te verhelpen die van invloed is op Community Edition (CE) en Enterprise Edition (EE) en die kan leiden tot een omzeiling van de authenticatie.
De kwetsbaarheid is geworteld in de ruby-saml-bibliotheek (CVE-2024-45409, CVSS-score: 10,0), waardoor een aanvaller zich als willekeurige gebruiker kan aanmelden binnen het kwetsbare systeem. De beheerders hebben dit vorige week aangepakt.
Het probleem is het gevolg van het feit dat de bibliotheek de handtekening van de SAML Response niet goed verifieert. SAML, de afkorting van Security Assertion Markup Language, is een protocol dat single sign-on (SSO) en uitwisseling van authenticatie- en autorisatiegegevens tussen meerdere apps en websites mogelijk maakt.
“Een niet-geverifieerde aanvaller met toegang tot een ondertekend SAML-document (door de IdP) kan dus een SAML-respons/-assertie met willekeurige inhoud vervalsen, aldus een beveiligingsadvies. “Hierdoor kan de aanvaller inloggen als willekeurige gebruiker binnen het kwetsbare systeem.”
Het is de moeite waard om op te merken dat de fout ook gevolgen heeft voor omniauth-saml, dat een eigen update (versie 2.2.1) heeft uitgebracht om ruby-saml te upgraden naar versie 1.17.
De nieuwste patch van GitLab is ontworpen om de afhankelijkheden omniauth-saml bij te werken naar versie 2.2.1 en ruby-saml naar 1.17.0. Dit omvat versies 17.3.3, 17.2.7, 17.1.8, 17.0.8 en 16.11.10.
Om dit probleem te beperken, dringt GitLab er bij gebruikers van zelfbeheerde installaties op aan om tweefactorauthenticatie (2FA) in te schakelen voor alle accounts en de SAML-optie voor het omzeilen van tweefactorauthenticatie uit te schakelen.
GitLab maakt geen melding van misbruik van de fout, maar geeft wel aan dat er pogingen tot misbruik zijn gedaan of dat dit is gelukt. Dit suggereert dat kwaadwillenden actief proberen te profiteren van de tekortkomingen om toegang te krijgen tot kwetsbare GitLab-instanties.
“Succesvolle exploitatiepogingen zullen SAML-gerelateerde loggebeurtenissen activeren”, aldus het rapport. “Een succesvolle exploitatiepoging zal elke extern_id-waarde loggen die is ingesteld door de aanvaller die de exploitatie probeert uit te voeren.”
“Mislukte exploitatiepogingen kunnen een ValidationError genereren vanuit de RubySaml-bibliotheek. Dit kan verschillende redenen hebben die verband houden met de complexiteit van het maken van een werkende exploit.”
De ontwikkeling vindt plaats terwijl het Amerikaanse Cybersecurity and Infrastructure Security Agency (CISA) vijf beveiligingslekken heeft toegevoegd aan zijn catalogus met bekende misbruikte kwetsbaarheden (KEV), waaronder een onlangs bekendgemaakte kritieke bug met impact op Apache HugeGraph-Server (CVE-2024-27348, CVSS-score: 9,8), op basis van bewijs van actief misbruik.
Agentschappen van de Federal Civilian Executive Branch (FCEB) is aangeraden om de geïdentificeerde kwetsbaarheden vóór 9 oktober 2024 te verhelpen om hun netwerken te beschermen tegen actieve bedreigingen.