GitLab a publié des mises à jour de sécurité pour les éditions Community et Enterprise afin de remédier à deux vulnérabilités critiques, l’une d’elles permettant le détournement de compte sans interaction de l’utilisateur.
L’éditeur recommande vivement de mettre à jour dès que possible toutes les versions vulnérables de la plateforme DevSecOps (mise à jour manuelle requise pour les installations auto-hébergées) et prévient que s’il n’y a « pas de type de déploiement spécifique (omnibus, code source, graphique helm, etc.) d’un produit est mentionné, cela signifie que tous les types sont concernés.”
Détails de la vulnérabilité
Le problème de sécurité le plus critique corrigé par GitLab a le score de gravité maximal (10 sur 10) et est suivi sous la référence CVE-2023-7028. Une exploitation réussie ne nécessite aucune interaction.
Il s’agit d’un problème d’authentification qui permet d’envoyer des demandes de réinitialisation de mot de passe à des adresses électroniques arbitraires et non vérifiées, permettant la reprise de compte. Si l’authentification à deux facteurs (2FA) est active, il est possible de réinitialiser le mot de passe, mais le deuxième facteur d’authentification est toujours nécessaire pour une connexion réussie.
Le détournement d’un compte GitLab peut avoir un impact significatif sur une organisation, car la plate-forme est généralement utilisée pour héberger du code propriétaire, des clés API et d’autres données sensibles.
Un autre risque est celui des attaques de la chaîne d’approvisionnement où les attaquants peuvent compromettre les référentiels en insérant du code malveillant dans des environnements en direct lorsque GitLab est utilisé pour CI / CD (Intégration continue / Déploiement Continu).
Le problème a été découvert et signalé à GitLab par le chercheur en sécurité ‘Asterion’ via la plateforme HackerOne bug bounty et a été introduit le 1er mai 2023 avec la version 16.1.0.
Les versions suivantes sont impactées:
- 16.1 avant 16.1.5
- 16.2 avant 16.2.8
- 16.3 avant 16.3.6
- 16.4 avant 16.4.4
- 16.5 avant 16.5.6
- 16.6 avant 16.6.4
- 16.7 avant 16.7.2
La faille a été corrigée dans les versions 16.7.2, 16.5.6 et 16.6.4 de GitLab, et le correctif a également été rétroporté vers 16.1.6, 16.2.9 et 16.3.7.
GitLab dit n’avoir détecté aucun cas d’exploitation active de CVE-2023-7028 mais a partagé les signes suivants de compromission pour les défenseurs:
- Vérifiez gitlab-rails / production_json.connectez-vous pour les requêtes HTTP au chemin /users/password avec params.valeur.email composé d’un tableau JSON avec plusieurs adresses e-mail.
- Vérifiez gitlab-rails / audit_json.connectez-vous pour les entrées avec meta.caller.id de PasswordsController#create et target_details consistant en un tableau JSON avec plusieurs adresses e-mail.
Le deuxième problème critique est identifié comme CVE-2023-5356 et a un score de gravité de 9,6 sur 10. Un attaquant pourrait l’exploiter pour abuser de la plupart des intégrations Slack/Matter pour exécuter des commandes slash en tant qu’autre utilisateur.
Dans Mattermost, les commandes slash permettent d’intégrer des applications externes dans l’espace de travail et dans Slack, elles agissent comme des raccourcis pour appeler des applications dans la boîte de composition mesasge.
Le reste des défauts corrigés par GitLab dans la version 16.7.2 sont:
- CVE-2023-4812: Vulnérabilité de gravité élevée dans GitLab 15.3 et versions ultérieures, permettant de contourner l’approbation du PROPRIÉTAIRE DU CODE en apportant des modifications à une demande de fusion précédemment approuvée.
- CVE-2023-6955: Contrôle d’accès incorrect pour les espaces de travail existants dans GitLab avant 16.7.2, permettant aux attaquants de créer un espace de travail dans un groupe associé à un agent d’un autre groupe.
- CVE-2023-2030: Faille de validation de signature de validation impactant GitLab CE / EE versions 12.2 et ultérieures, impliquant la possibilité de modifier les métadonnées des validations signées en raison d’une validation de signature incorrecte
Pour obtenir des instructions et des ressources de mise à jour officielles, consultez la page de mise à jour de GitLab. Pour Gitlab Runner, visitez cette page Web.