Présentation
Le 21 octobre 2026, GitLab a publié plusieurs correctifs critiques (versions 19.5.1, 19.4.3, 19.3.6, 19.2.9, 19.1.9, 19.0.10, 18.11.13) pour son édition Community et Enterprise. Parmi ces correctifs figure la vulnérabilité CVE‑2026‑110264, classée CVSS 10.0, qui résulte d’un débordement d’entier dans le compilateur d’expressions régulières utilisé par le serveur GitLab.
Mécanisme de la vulnérabilité
Le compilateur d’expressions régulières analyse les motifs fournis par les utilisateurs afin de générer des automates internes. Lors du calcul de la taille des structures de données, le code effectue une multiplication entre la longueur du motif et un facteur de facteur d’expansion. Si le motif est spécialement conçu, le produit dépasse la capacité d’un entier 32 bits, provoquant un overflow. L’entier débordé est ensuite utilisé comme taille d’allocation mémoire sans validation supplémentaire. Cette erreur conduit à un dépassement de tampon (buffer overflow) qui, dans un contexte non authentifié, permet l’injection de code arbitraire dans le processus GitLab.
Impact et exploitation
Le vecteur d’attaque est entièrement non authentifié : un attaquant distant peut soumettre une expression régulière malveillante via n’importe quel point d’entrée acceptant du texte (par exemple, les filtres de recherche ou les hooks). Le dépassement de tampon déclenche l’exécution de code contrôlé par l’attaquant avec les privilèges du processus GitLab, généralement gitlab-www ou root selon la configuration. Le score CVSS 3.1 (AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H) reflète la gravité maximale : accès réseau, aucune authentification requise, impact total sur la confidentialité, l’intégrité et la disponibilité.
Corrections et recommandations
GitLab a intégré un correctif qui introduit une vérification d’overflow avant toute allocation et utilise des types d’entier 64 bits pour les calculs de taille. Le correctif a été rétroporté aux versions 18.11.13, 19.0.10, 19.1.9, 19.2.9, ainsi qu’aux versions majeures récentes (19.3.6, 19.4.3, 19.5.1). Les installations auto‑gérées doivent impérativement mettre à jour vers l’une de ces versions. GitLab.com et les locataires Dedicated sont déjà à jour. En complément, il est conseillé de désactiver temporairement les fonctionnalités qui acceptent des expressions régulières personnalisées jusqu’à la mise à jour, afin de réduire la surface d’exposition. Enfin, la surveillance des journaux d’erreurs du compilateur d’expressions régulières peut aider à détecter des tentatives d’exploitation avant le déploiement du correctif.