CVE-2026-61560 : Trois vulnérabilités critiques dans GitLab-MCP
Ce texte a été généré par l'intelligence artificielle (IA).Pour le paquet npm @zereight/mcp-gitlab trois vulnérabilités critiques ont été publiées le 15 septembre 2026: CVE-2026-61560, CVE-2026-61568 et CVE-2026-61559. Le paquet fournit un serveur Model-Context-Protocol pour GitLab et peut être exploité via SSE ou HTTP diffusé. Les vulnérabilités CVE-2026-61560 et CVE-2026-61559 ont été découvertes par Pluto Security et divulguées de manière coordonnée.
Les avis concernent des fonctions MCP non sécurisées, le partage de tokens GitLab via des appels API redirigés ainsi que l'absence de vérifications effectives de Host- et Origin-en-têtes. Une mise à jour vers la version 2.1.30 ou supérieure corrige les trois CVEs publiés.
CVE-2026-61560: Transport SSE non authentifié et accès aux fichiers
Selon l'avis de sécurité GitHub concernant CVE-2026-61560 (GHSA-cv3r-c5h8-f4g5), la vulnérabilité (CVSS 9,8, CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H) concerne les versions antérieures à 2.1.27. En mode SSE avec SSE=true , tous les outils MCP étaient accessibles sans authentification.
De plus, l'outil upload_markdown traite un paramètre insuffisamment nettoyé. file_path. Cela a permis à l'outil de lire n'importe quel fichier local du système de fichiers du serveur et de le télécharger dans un projet GitLab. L'avis mentionne /proc/self/environ comme chemin cible possible.
S'il y a un GITLAB_PERSONAL_ACCESS_TOKEN, un attaquant non authentifié accessible via le réseau peut lire le token. L'avis décrit comme conséquence possible la prise de contrôle du compte GitLab associé.
Pour les déploiements Docker, cette constatation est particulièrement pertinente : le mode SSE y est activé par défaut selon l'avis. La version 2.1.27 contient un correctif pour CVE-2026-61560.
CVE-2026-61559 : fuite de token via des cibles API dynamiques
CVE-2026-61559 (GHSA-2h44-8472-frjj) atteint un score CVSS de 9.6 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N) et concerne les versions à partir de 0.0.1 et avant 2.1.27, lorsque ENABLE_DYNAMIC_API_URL=true est défini. Le serveur prend dans cette configuration l'en-tête HTTP X-GitLab-API-URL comme adresse de base pour les appels API GitLab dans la demande respective.
L'adresse est vérifiée au format d'URL valide, mais sans liste blanche ni restriction sur des noms d'hôtes spécifiques. Le serveur ajoute son Private-Token aux requêtes API sortantes. Un appelant ayant accès au transport HTTP peut ainsi transmettre une adresse cible contrôlée ; lors d'un appel API GitLab suivant, le token peut être transmis à cette adresse.
Version 2.1.27 contient un correctif pour CVE-2026-61559. Jusqu'à ce que la mise à jour soit appliquée, il convient de ENABLE_DYNAMIC_API_URL=true rester désactivé, sauf si la fonction est nécessaire.
CVE-2026-61568 : DNS Rebinding contre des écouteurs locaux MCP.
CVE-2026-61568 (GHSA-vmp7-252j-cwp7) atteint un score CVSS de 9.6 (CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H) et concerne les versions antérieures à 2.1.30. La vulnérabilité se trouve dans le transport HTTP Streamable. Selon l'avis de sécurité GitHub, une liste d'autorisation efficace manquait pour Host- et Origin-en-têtes.
Un site web malveillant peut rediriger des requêtes de navigateur vers un écouteur MCP local de la victime lors d'une attaque par rebond DNS, tout en conservant des Host- et Origin-valeurs contrôlées par l'attaquant. Le serveur concerné acceptait ces en-têtes et atteignait le chemin d'initialisation MCP.
Ce chemin d'attaque concerne particulièrement les services MCP accessibles localement. La version 2.1.30 contient un correctif pour CVE-2026-61568.
Mesures pour les déploiements concernés
Les recommandations fournies se concentrent sur la gestion des correctifs, la restriction d'accès et la protection des tokens GitLab utilisés :
@zereight/mcp-gitlab mettre à jour vers la version 2.1.30 ou supérieure. Cette version traite les trois CVEs publiés.
Désactiver ou sécuriser le SSE, si une mise à jour n'a pas encore été effectuée.
ENABLE_DYNAMIC_API_URL=true désactiver, à moins que cette configuration ne soit absolument nécessaire.
GITLAB_PERSONAL_ACCESS_TOKEN faire tourner, si le service était accessible sans authentification.
Limiter l'accès réseau à des clients de confiance, par exemple via des règles de pare-feu ou un binding local du service.
Vérifier et patcher en priorité les déploiements Docker, car le mode SSE y est activé par défaut.
Faire fonctionner le serveur MCP derrière une couche d'authentification.
La vérification des correctifs doit inclure les paramètres techniques d'exploitation : mode de transport actif, accessibilité réseau, variables d'environnement définies et tokens GitLab utilisés. La version du paquet installée seule ne montre pas si un service est accessible par SSE ou si ENABLE_DYNAMIC_API_URL=true a été défini.
Les organisations en Allemagne et en Autriche qui exploitent des services CI/CD basés sur MCP dans le cadre de processus soumis à la NIS-2 devraient vérifier si un jeton GitLab compromis doit être signalé en tant qu'incident de sécurité. Selon l'art. 33 du RGPD, en cas de violation de la protection des données personnelles, il existe une obligation de déclaration de 72 heures auprès de l'autorité de contrôle compétente. Pour les opérateurs en Suisse, la loi révisée sur la cybersécurité (ISG) s'applique ; les incidents à signaler doivent être adressés au Bureau fédéral de la cybersécurité (BACS).
Visibilité pour les services MCP exposés
Le cas est pertinent pour la gestion de la surface d'attaque externe, car @zereight/mcp-gitlab peut être exploité en tant que service HTTP avec transport SSE et HTTP en continu. De tels services peuvent être accessibles sous des domaines d'entreprise ou dans des environnements informatiques associés - même s'ils n'ont pas été inventoriés de manière centralisée.
LocateRisk peut, dans le contexte de l'EASM, fournir une vue sur les services accessibles de l'extérieur, les points de terminaison HTTP inattendus et l'infrastructure CI orpheline. Cette visibilité ne remplace pas l'examen de la version de paquet spécifique, de la configuration de transport active ou des autorisations d'un jeton GitLab.
En complément, la gestion des risques des fournisseurs de cybersécurité de LocateRisk aide à surveiller en permanence le niveau de sécurité des tiers et à détecter tôt les changements pertinents en matière de sécurité. Pour les dépendances npm et les services MCP exploités, cela permet de considérer la disponibilité technique et les risques de dépendance dans des voies d'audit séparées.
Suis-je concerné ?
Concerné est @zereight/mcp-gitlab dans les versions mentionnées ci-dessus ; la vulnérabilité a été corrigée dans 2.1.27, 2.1.30. Ceux qui veulent savoir si @zereight/mcp-gitlab est visible dans leur propre infrastructure accessible de l'extérieur peuvent consulter le Vérification rapide CVE à consulter à la fin de cet article : il présente les systèmes exposés et les logiciels identifiables depuis l'extérieur.
Il n'est pas toujours possible de déterminer la version effectivement installée à partir d'éléments externes — il est essentiel de la comparer avec l'avis de sécurité du fabricant.
@zereight/mcp-gitlab est un paquet npm qui fournit un serveur de Model-Context-Protocol (MCP) pour GitLab. Il permet l'interaction avec des projets GitLab via un transport SSE ou HTTP en continu et est utilisé notamment dans des environnements Docker où le mode SSE est activé par défaut.
CVE-2026-61560 et CVE-2026-61559 concernent toutes les versions avant 2.1.27 ; CVE-2026-61568 concerne toutes les versions avant 2.1.30. Une mise à niveau vers la version 2.1.30 ou supérieure corrige les trois vulnérabilités en une seule étape. Jusqu'à ce que la mise à jour soit appliquée, SSE et ENABLE_DYNAMIC_API_URL=true doivent être désactivés et les GITLAB_PERSONAL_ACCESS_TOKENvaleurs utilisées doivent être renouvelées.
CVE-2026-61568 (DNS-Rebinding) concerne le transport HTTP en continu et est indépendant du mode SSE. CVE-2026-61559 s'applique lorsque ENABLE_DYNAMIC_API_URL=true est défini. Un déploiement est donc également potentiellement vulnérable sans SSE activé, à condition que l'une des autres configurations soit présente et que la version respective ne soit pas patchée.
État : 16.09.2026. Cet article est destiné à des fins d'information générale et ne constitue pas une consultation juridique, de sécurité ou de recommandations d'action dans un cas particulier. La situation de sécurité et la disponibilité des correctifs peuvent avoir changé depuis la publication ; le fabricant Advisory lié est toujours déterminant. Malgré des recherches approfondies, nous ne garantissons pas l'actualité, l'exactitude et l'exhaustivité.
Vérification rapide CVE
Vérifiez en quelques minutes si votre surface d'attaque visible depuis l'extérieur présente des indices liés à une vulnérabilité CVE actuelle.
Une estimation approximative en quelques minutes par e-mail.
Pour en savoir plus, contactez gratuitement un consultant LocateRisk.
Vous recevrez cela par e-mail
EntreprisesVotre société GmbH
CVE vérifiésCVE-2026-61560
Évaluation passive
Remarques concernant le CVEtrouvé ou non trouvé
En savoir plus, réserver une démo ou simplement échanger quelques mots ? Nous nous en réjouissons !
Nous utilisons des cookies pour optimiser notre site web et nos services.
Fonctionnel
Always active
le stockage technique ou l'accès est strictement nécessaire dans le but légitime de permettre l'utilisation d'un service spécifique expressément demandé par l'abonné ou l'utilisateur, ou dans le seul but d'effectuer la transmission d'une communication par la voie d'un réseau de communications électroniques
Préférences
le stockage ou l'accès technique est nécessaire aux fins légitimes de la conservation des préférences qui n'ont pas été demandées par l'abonné ou l'utilisateur.
Statistiques
le stockage ou l'accès technique, à des fins exclusivement statistiques.le stockage ou l'accès technique, utilisé uniquement à des fins statistiques anonymes. En l'absence d'une citation, d'un accord volontaire de ton fournisseur d'accès à Internet ou d'enregistrements supplémentaires de tiers, les informations stockées ou consultées à cette seule fin ne peuvent généralement pas être utilisées pour t'identifier.
Marketing
Le stockage technique ou l'accès est nécessaire pour créer des profils d'utilisateurs, pour envoyer des publicités ou pour suivre l'utilisateur sur un site web ou sur plusieurs sites web à des fins de marketing similaires.