Une vulnérabilité critique affecte certaines versions des produits GitLab Community et Enterprise Edition, qui pourraient être exploitées pour exécuter des pipelines comme n’importe quel utilisateur.
GitLab est une plate-forme Web populaire de gestion de projet et de suivi du travail basée sur un logiciel open source. Il compte environ un million d’utilisateurs de licences actifs.
Le problème de sécurité résolu dans la dernière mise à jour est suivi sous la référence CVE-2024-5655 et a un score de gravité de 9,6 sur 10. Dans certaines circonstances, que le fournisseur n’a pas définies, un attaquant pourrait en tirer parti pour déclencher un pipeline en tant qu’autre utilisateur.
Les pipelines GitLab sont une fonctionnalité du système d’Intégration Continue/Déploiement continu (CI/CD) qui permet aux utilisateurs d’exécuter automatiquement des processus et des tâches, en parallèle ou en séquence, pour créer, tester ou déployer des modifications de code.
La vulnérabilité affecte toutes les versions de GitLab CE/EE de 15.8 à 16.11.4, 17.0.0 à 17.0.2 et 17.1.0 à 17.1.0.
“Nous recommandons fortement que toutes les installations exécutant une version affectée par les problèmes décrits ci-dessous soient mises à niveau vers la dernière version dès que possible » – GitLab
GitLab a corrigé la vulnérabilité en publiant les versions 17.1.1, 17.0.3 et 16.11.5, et recommande aux utilisateurs d’appliquer les mises à jour dès que possible.
Le fournisseur informe également que la mise à niveau vers les dernières versions s’accompagne de deux changements de rupture dont les utilisateurs doivent être conscients:
- Les pipelines ne s’exécuteront plus automatiquement lorsqu’une demande de fusion est reciblée après la fusion de sa branche cible précédente. Les utilisateurs doivent démarrer manuellement le pipeline pour exécuter CI pour leurs modifications.
- CI_JOB_TOKEN est maintenant désactivé par défaut pour l’authentification GraphQL à partir de la version 17.0.0, avec cette modification rétroportée vers les versions 17.0.3 et 16.11.5. Pour accéder à l’API GraphQL, les utilisateurs doivent configurer l’un des types de jetons pris en charge pour l’authentification.
La dernière mise à jour de GitLab introduit également des correctifs de sécurité pour 13 autres problèmes, la gravité de trois d’entre eux étant jugée “élevée” (score CVSS v3.1: 7,5 – 8,7). Ces trois sont résumés comme suit:
- CVE-2024-4901: Vulnérabilité XSS stockée permettant à des notes de validation malveillantes de projets importés d’injecter des scripts, entraînant potentiellement des actions non autorisées et une exposition des données.
- CVE-2024-4994: Une vulnérabilité CSRF dans l’API GraphQL permettant aux attaquants d’exécuter des mutations arbitraires de GraphQL en incitant les utilisateurs authentifiés à effectuer des requêtes indésirables, entraînant potentiellement une manipulation des données et des opérations non autorisées.
- CVE-2024-6323: Faille d’autorisation dans la fonction de recherche globale de GitLab permettant aux attaquants d’afficher les résultats de recherche à partir de référentiels privés au sein de projets publics, entraînant potentiellement des fuites d’informations et un accès non autorisé à des données sensibles.