Aller au contenu

CVE-2023-36424 : Contournement d'Authentification VMware vCenter Server

L’exploitation de la CVE-2023-36424 représente un risque majeur pour les infrastructures virtualisées. En exploitant une faille dans la gestion des API internes de VMware vCenter Server, des acteurs distants non autorisés peuvent contourner totalement les mécanismes d’authentification, obtenant ainsi un contrôle administratif complet de l’environnement vSphere. Cela permet un compromis total du centre de données virtualisé, incluant la manipulation des machines virtuelles (VM), l’exfiltration de données ou le déploiement de ransomwares sur l’ensemble du cluster.

La vulnérabilité réside dans la couche d’authentification de l’API interne du serveur vCenter. Dans un flux de requête standard, le serveur valide un jeton de session ou un en-tête d’authentification avant d’accorder l’accès aux points de terminaison privilégiés. Cependant, une faille logique dans les gestionnaires d’API permet à certaines requêtes de sauter cette phase de validation.

Le problème est lié à une hypothèse de confiance inappropriée au sein des gestionnaires d’API internes. Lorsque des requêtes HTTP spécifiquement forgées sont envoyées vers des endpoints sensibles, le serveur ne parvient pas à vérifier l’identifiant de session. Cela traite effectivement la requête non authentifiée comme une session administrative approuvée.

Le “Code Path” implique la séquence suivante :

  1. L’attaquant identifie un endpoint d’API administratif sensible.
  2. Une requête est forgée avec des en-têtes spécifiques ou des anomalies structurelles qui déclenchent la logique de contournement.
  3. Le gestionnaire autorise l’action sans rediriger vers la page de connexion SSO (Single Sign-On).

Le processus d’exploitation est direct une fois la cible identifiée, ce qui explique la forte prévalence de cette vulnérabilité dans la nature.

  1. Reconnaissance : l’attaquant identifie une interface de gestion VMware vCenter Server accessible (généralement sur le port 443).
  2. Forgeage du Payload : en utilisant des PoC publics (disponibles sur GitHub), l’attaquant forge une requête HTTP ciblant les endpoints d’API internes.
  3. Exécution du Contournement : la requête est envoyée au serveur vCenter. En raison de la faille, le serveur traite la requête comme ayant une autorité administrative.
  4. Élévation de Privilèges : l’attaquant utilise la session contournée pour créer de nouveaux comptes administratifs ou modifier les configurations vSphere existantes.
  5. Post-Exploitation : l’attaquant obtient un contrôle total sur les hôtes ESXi et les machines virtuelles gérés par vCenter.

La détection de cette vulnérabilité nécessite une combinaison d’analyse de logs et de surveillance comportementale, car le contournement laisse souvent peu de traces évidentes dans les logs de sécurité standards.

La source principale de preuves est le système de journalisation interne de vCenter.

  • vpxd.log (/var/log/vmware/vpxd/vpxd.log) : Recherchez des actions administratives provenant d’adresses IP n’ayant aucun enregistrement de connexion réussie dans la même fenêtre temporelle.
  • Logs d’Audit (/var/log/vmware/audit/) : Analysez les logs pour des opérations privilégiées (ex: création d’utilisateur, suppression de VM, modification de snapshots) survenues sans événement LoginSuccessful préalable.
  • Artefacts Système de Fichiers : Inspectez /tmp et /var/tmp pour des scripts shell ou des binaires suspects. Vérifiez les modifications des fichiers de configuration de vCenter pouvant indiquer l’établissement d’une persistance.

Surveillez l’apparition inattendue de shells. Dans un environnement sain, le processus vpxd ou les services d’API basés sur Java ne devraient pas lancer de shells sh ou bash. Toute occurrence de ce type est un indicateur haute fidélité d’une exécution de code à distance (RCE) faisant suite au contournement d’authentification.

Pour se défendre contre cette menace, les organisations doivent implémenter les stratégies de détection suivantes.

Pour ceux utilisant un système de gestion de logs centralisé (Splunk/ELK), utilisez la logique suivante : index=vmware_logs process=vpxd | search "administrative action" AND NOT "successful authentication"

  • Source de Log : vCenter API/Audit Logs
  • Sélection :
    • http.response.status_code: 200
    • http.request.path: /api/*
    • http.request.headers.authorization: (null or empty)
  • Condition : la sélection correspond et la requête cible une opération privilégiée.

Une action immédiate est requise pour sécuriser l’environnement.

Patching

Mettez à jour vCenter Server vers la dernière version patchée publiée par VMware. C’est la seule correction permanente.

Isolation Réseau

Restreignez l’accès à l’Interface de Gestion vCenter (Port 443) à un VLAN de gestion dédié ou à un Jump Host de confiance.

Mise en œuvre du MFA

Implémentez l’authentification multi-facteur (MFA) pour tous les comptes administratifs afin de réduire l’impact des attaques basées sur les identifiants, bien que cela ne puisse pas arrêter ce contournement spécifique.