GitLab corrige une faille de sécurité critique

GitLab a publié plusieurs versions mises à jour de son logiciel, 19.4.2, 19.3.5 et 19.2.8, afin de corriger une vulnérabilité de sécurité critique. Cette faille, classée au niveau de gravité le plus élevé possible (10 sur 10), permet à un attaquant sans compte d'exécuter du code malveillant sur un serveur en insérant une expression régulière nuisible dans une configuration CI/CD.

Les détails de la vulnérabilité restent flous

GitLab explique que la vulnérabilité peut être exploitée « dans certaines conditions », sans toutefois préciser lesquelles. L'entreprise n'indique pas non plus comment un attaquant non authentifié parviendrait à faire traiter sa configuration CI/CD falsifiée par une instance de serveur. Les détails techniques de la faille, notamment un dépassement d'entier dans le compilateur d'expressions régulières et une validation insuffisante des expressions, ne seront pas divulgués avant environ 90 jours, conformément aux pratiques standard en matière de sécurité.

Une série de vulnérabilités similaires

Il s'agit de la dernière d'une série de failles à haute gravité touchant les logiciels de GitLab ces dernières semaines. Des problèmes similaires avaient été signalés fin septembre, dont deux autres failles classées 9,9 sur 10. Elles avaient également été découvertes par le même chercheur, joaxcar, et nécessitaient un compte pour être exploitées. Une autre vulnérabilité, classée 10 sur 10, permettait aux attaquants de lire des fichiers sur le serveur sans avoir besoin de compte.

De nombreuses versions sont concernées

Les instances GitLab auto-hébergées exécutant les versions 19.2 antérieures à 19.2.8, 19.3 antérieures à 19.3.5 et 19.4 antérieures à 19.4.2 sont vulnérables. Cela inclut la version 19.4.1, publiée fin septembre, qui ne suffisait pas à résoudre le problème. GitLab.com est déjà à jour, et les utilisateurs de clients de serveurs dédiés ne courent aucun risque. En revanche, aucun correctif temporaire ni solution de contournement n'est proposé : seule une mise à jour est recommandée.

La mise à jour peut entraîner une interruption de service

Pour les utilisateurs qui exploitent des instances GitLab à nœud unique, la mise à jour vers la dernière version peut provoquer une interruption de service. En effet, le correctif comprend des migrations de base de données qui nécessitent un redémarrage du serveur. Il est conseillé aux utilisateurs de prévoir d'éventuelles interruptions de service lors de l'application de la mise à jour.