Une faille critique dans GPUStack (CVSS 9.8) permet à des attaquants non authentifiés de prendre le contrôle total de serveurs d'inférence IA. Exploitation active confirmée en novembre 2026.
En bref
- CVE-2026-102895 (CVSS 9.8) : contournement total d'authentification dans GPUStack avant 2.2.0 — tout attaquant distant accède à l'API avec les droits administrateur.
- Systèmes affectés : toutes instances GPUStack 2.1.x et antérieures exposées sur un réseau, avec ou sans reverse proxy.
- Action urgente : mettre à jour vers GPUStack 2.2.2 immédiatement et faire pivoter toutes les clés API et secrets cloud.
Les faits
GPUStack, plateforme open source de déploiement et de gestion de modèles d'inférence IA (Large Language Models, modèles de vision, modèles de diffusion), est affectée par une vulnérabilité critique d'authentification identifiée sous la référence CVE-2026-102895, avec un score CVSS 3.1 de 9.8 sur 10. La faille a été divulguée au cours de la première semaine de novembre 2026 et son exploitation active dans la nature a rapidement été confirmée par des chercheurs en sécurité, faisant de ce CVE l'une des menaces IA les plus pressantes du moment.
La vulnérabilité repose sur une logique d'autorisation défaillante héritée du paramètre force_auth_localhost. Dans les versions antérieures à 2.2.0, lorsque ce paramètre est désactivé — ce qui constitue la configuration par défaut — toute requête dont l'adresse source semble provenir de l'interface de bouclage (127.0.0.1) est automatiquement traitée par l'application comme émanant de l'administrateur intégré. Ce comportement, initialement conçu pour faciliter les accès locaux légitimes, ouvre une surface d'attaque critique dès lors que l'instance est accessible depuis un réseau.
Un attaquant distant peut exploiter cette logique de deux manières principales. La première consiste à passer par un reverse proxy hébergé sur le même hôte que GPUStack : dans ce cas, les requêtes atteignent l'application avec une adresse source locale, satisfaisant ainsi la condition de confiance implicite. La seconde, encore plus triviale, consiste à injecter l'en-tête HTTP X-GPUStack-Real-IP avec la valeur 127.0.0.1 : GPUStack honore cet en-tête sans vérification de l'origine réelle de la connexion, permettant à n'importe quel client distant de se faire passer pour un accès localhost. Les identifiants CWE associés sont CWE-287 (authentification incorrecte), CWE-290 (contournement par usurpation d'adresse) et CWE-346 (validation d'origine insuffisante).
L'impact de ce contournement est maximal. Une fois authentifié en tant qu'administrateur, l'attaquant peut créer des utilisateurs arbitraires, modifier les modèles en service, générer des clés API persistantes avec des droits permanents, accéder aux secrets des workers et des fournisseurs cloud configurés dans la plateforme (AWS, GCP, Azure, Alibaba Cloud), et surtout exécuter du code arbitraire via le point d'accès POST /v2/inference-backends/from-yaml. Ce dernier vecteur permet de charger un backend d'inférence malveillant sous forme de YAML, aboutissant à une exécution de commandes avec les privilèges du processus GPUStack sur le serveur hôte — compromission complète de la machine.
Une vulnérabilité complémentaire, CVE-2026-102894 (CVSS 9.1), a été divulguée simultanément. Elle concerne un contournement d'authentification par capture et rejeu dans le flux de rappel SAML (CWE-294) : un attaquant peut forger une réponse SAML valide pour usurper l'identité de n'importe quel compte, y compris les administrateurs, sans connaître leurs identifiants. Les deux failles combinées offrent de multiples chemins parallèles vers une compromission complète, même dans des configurations ayant activé une authentification SSO d'entreprise.
L'exploitation active de CVE-2026-102895 a été confirmée par le chercheur Javier Sixto du cabinet ulex.fr, qui a documenté des attaques ciblant des instances GPUStack en version 2.1.1 dans des environnements de production. Les indicateurs d'exploitation observés dans les journaux incluent des requêtes POST vers /v1/users et /v1/api-keys sans en-tête Authorization, ainsi que des appels vers /v2/inference-backends/from-yaml avec des payloads YAML malveillants. Un code d'exploitation (PoC) a été indexé sur la plateforme Sploitus peu après la divulgation publique. Au 5 novembre 2026, Ostorlab confirmait que CVE-2026-102895 n'avait pas encore été ajouté au catalogue KEV de la CISA, mais l'exploitation in-the-wild confirmée le rend éligible à très court terme.
GPUStack est notamment déployé dans des environnements d'IA privés et d'inférence on-premise, souvent connectés à des GPU coûteux (NVIDIA A100, H100, RTX 4090) et à des clés API de modèles de fondation (OpenAI, Anthropic, Mistral, Cohere). La compromission de ces plateformes représente un risque financier direct — utilisation frauduleuse des GPU pour du cryptomining ou de l'inférence non autorisée aux frais de la victime — et un risque de fuite des secrets d'accès aux fournisseurs cloud configurés dans GPUStack. Les modèles fine-tunés et les données d'entraînement propriétaires stockés sur ces serveurs sont également en danger.
Le correctif est disponible depuis la version 2.2.0, avec la version 2.2.2 recommandée car elle corrige simultanément CVE-2026-102895 et CVE-2026-102894. L'upgrade seul ne supprime pas les utilisateurs ou clés API créés frauduleusement pendant la fenêtre d'exploitation : un audit exhaustif des comptes et clés existants est impératif après mise à jour. Selon Ostorlab, les organisations doivent également revoir l'ensemble des workers et des configurations de fournisseurs cloud, car des modifications silencieuses peuvent avoir été effectuées par des attaquants avant la détection.
Impact et exposition
Toute instance GPUStack en version 2.1.x ou antérieure exposée sur un réseau — même interne — est vulnérable. L'exposition est particulièrement critique pour les déploiements accessibles depuis Internet sans WAF ou filtrage IP en amont. Les configurations utilisant un reverse proxy Nginx ou Caddy sur le même hôte constituent un vecteur d'exploitation direct, car les requêtes proxy arrivent avec une adresse source locale. Les environnements de démonstration partagés via des services de tunneling (ngrok, Cloudflare Tunnel) sont également à risque immédiat.
L'exploitation ne requiert aucune authentification préalable, aucun compte valide, ni aucune connaissance préalable de l'environnement cible. La simple connaissance de l'adresse IP ou du nom de domaine de l'instance suffit. Le délai de compromission après identification de la cible est estimé à quelques secondes pour un attaquant disposant du PoC public. La faille touche tous les modes de déploiement GPUStack sans exception : bare metal, Docker, Kubernetes, et toutes les distributions Linux, macOS et Windows (via WSL).
Les organisations utilisant GPUStack comme backend pour des applications d'IA internes, des pipelines RAG, des chatbots d'entreprise ou des plateformes LLMOps sont particulièrement exposées, car ces architectures impliquent souvent une ouverture réseau étendue et un accès à de nombreux secrets. L'existence de CVE-2026-102894 en parallèle signifie que même les instances ayant déployé une authentification SAML/SSO restent vulnérables via ce second vecteur.
Recommandations immédiates
- Mettre à jour GPUStack vers la version 2.2.2 — GPUStack Security Advisory GHSA-GPUStack-2026-102895 (sans délai, exploitation active confirmée)
- Si mise à jour impossible immédiatement : activer
force_auth_localhost: truedans la configuration et isoler l'instance derrière un pare-feu strict - Supprimer ou bloquer l'en-tête
X-GPUStack-Real-IPau niveau du reverse proxy (Nginx :proxy_set_header X-GPUStack-Real-IP "";) - Après mise à jour : auditer tous les comptes utilisateurs et clés API — supprimer tout compte ou clé non reconnu
- Faire pivoter tous les secrets de fournisseurs cloud (AWS, GCP, Azure) et toutes les clés API de modèles (OpenAI, Anthropic, Mistral, etc.) configurés dans GPUStack
- Chercher des requêtes suspectes dans les logs : POST vers
/v1/users,/v1/api-keys,/v2/inference-backends/from-yamlsans en-tête Authorization valide - Appliquer le correctif pour CVE-2026-102894 (inclus dans 2.2.2) si l'authentification SAML est activée
⚠️ Urgence maximale
CVE-2026-102895 est activement exploité dans la nature avec un PoC public disponible. Des instances GPUStack exposées sur Internet ont déjà été compromises. Toute instance non mise à jour doit être considérée comme potentiellement compromise. Mettre à jour immédiatement vers la version 2.2.2 et faire pivoter tous les secrets.
Comment savoir si mon instance GPUStack est vulnérable ?
Vérifiez votre version via gpustack --version ou dans l'interface web (menu About). Toute version antérieure à 2.2.0 est vulnérable. Pour tester l'exposition : exécutez curl -s http://[IP-GPUSTACK]/v1/users depuis une machine externe sans fournir de token — si vous obtenez une réponse JSON avec une liste d'utilisateurs, l'instance est exposée.
Votre infrastructure IA est-elle exposée ?
Ayi NEDJIMI réalise des audits ciblés pour identifier et corriger vos vulnérabilités sur les plateformes d'inférence IA, GPU et LLM.
Demander un auditÀ propos de l'auteur
Ayi NEDJIMI
Auditeur Senior Cybersécurité & Consultant IA
Expert Judiciaire — Cour d'Appel de Paris
Habilitation Confidentiel Défense
ayi@ayinedjimi-consultants.fr
Ayi NEDJIMI est un vétéran de la cybersécurité avec plus de 25 ans d'expérience sur des missions critiques. Ancien développeur Microsoft à Redmond sur le module GINA (Windows NT4) et co-auteur de la version française du guide de sécurité Windows NT4 pour la NSA.
À la tête d'Ayi NEDJIMI Consultants, il réalise des audits Lead Auditor ISO 42001 et ISO 27001, des pentests d'infrastructures critiques, du forensics et des missions de conformité NIS2 / AI Act.
Conférencier international (Europe & US), il a formé plus de 10 000 professionnels.
Domaines d'expertise
Ressources & Outils de l'auteur
Testez vos connaissances
Mini-quiz de certification lié à cet article — propulsé par CertifExpress
Articles connexes
CVE-2026-20253 : Splunk Enterprise RCE pré-auth CVSS 9.8 — CISA KEV
CVE-2026-20253 (CVSS 9.8) : Splunk Enterprise expose un sidecar PostgreSQL sans authentification permettant une RCE en 5 requêtes HTTP. CISA KEV — première vulnérabilité Splunk jamais cataloguée. Exploitation active confirmée.
CVE-2026-118423 : WP Libre Form upload RCE, CVSS 10 — PoC public
CVE-2026-118423 (CVSS 10.0) : WP Libre Form ≤ 1.5.0.1 permet à tout visiteur anonyme d'uploader un fichier PHP et d'exécuter du code arbitraire. PoC public, aucun patch disponible, désinstallation immédiate requise.
CVE-2026-73098 : Apache Juneau quatre failles CVSS 10
Quatre vulnérabilités CVSS 10.0 dans Apache Juneau (CVE-2026-73098, CVE-2026-96677) exposent les applications Java à des attaques RCE sans authentification et à des injections XSS critiques. Mise à jour vers 9.2.1 impérative.
Un projet cybersécurité ? Parlons-en.
Pentest, conformité NIS 2, ISO 27001, audit IA, RSSI externalisé… nos experts répondent sous 24h pour évaluer votre besoin et vous proposer un accompagnement sur mesure.
Commentaires
Aucun commentaire pour le moment. Soyez le premier à commenter !
Laisser un commentaire