Cette nouvelle porte dérobée Python permet d’accéder à distance aux serveurs VMware ESXi

Des chercheurs en sécurité ont fait la découverte d'une nouvelle porte dérobée Python qui cible les serveurs VMware ESXi. Grâce à elle, l'attaquant peut exécuter des commandes à distance sur le système compromis.

Les serveurs VMware ESXi sont très populaires en entreprise puisqu'ils permettent de mettre en place une plateforme de virtualisation afin de faire tourner un ensemble de machines virtuelles. Une cible idéale pour différentes souches malveillantes, que ce soit des portes dérobées, mais aussi des ransomwares : en compromettant un serveur, l'attaquant peut compromettre l'ensemble des machines virtuelles.

Dans le cas présent, il s'agit d'une porte dérobée Python, non documentée, découverte par les chercheurs en sécurité de chez Juniper Networks. Ils l'ont identifié sur un serveur VMware ESXi, et malheureusement, ils n'ont pas pu déterminer comment le serveur a été compromis à cause de la rétention des logs. Malgré tout, ils ont émis une hypothèse : les pirates auraient exploité deux vulnérabilités situées dans le service OpenSLP : CVE-2019-5544 et CVE-2020-3992. 

Cette nouvelle souche malveillante semble destinée à cibler les serveurs VMware ESXi, mais elle pourrait tout à fait cibler les serveurs Linux de manière générale avec quelques adaptations : "Bien que le script Python utilisé dans cette attaque soit multiplate-forme et puisse être utilisé avec peu ou pas de modifications sur Linux ou d'autres systèmes de type UNIX, plusieurs éléments indiquent que cette attaque a été conçue spécifiquement pour cibler ESXi."

Comment détecter cette porte dérobée ?

D'après les chercheurs en sécurité, cette porte dérobée ajoute 7 lignes au fichier "/etc/rc.local.d/local.sh" dont le contenu est exécuté à chaque démarrage. Toutefois, en règle général, ce fichier est vide, à l'exception de quelques commentaires et une commande de sortie. Dans le cas présent, les lignes suivantes sont ajoutées :

Porte dérobée VMware ESXi - Python - Décembre 2022
Source : Juniper Networks

On peut remarquer sur la troisième ligne qu'un script Python nommé "/store/package/vmtools.py" est exécuté. Pour éviter d'éveiller les soupçons, les pirates ont essayé de le rendre le plus officiel possible : "Le fichier commence par un copyright VMware conforme aux exemples disponibles publiquement et est repris, caractère pour caractère, d'un fichier Python existant fourni par VMware.", indiquent les chercheurs de chez Juniper.

Toutefois, ce script démarre un serveur Web sur le serveur ESXi et ce dernier est conçu pour accepter uniquement des requêtes POST protégé par un mot de passe. Ces requêtes, exécutées par l'attaquant, peuvent contenir une commande à exécuter ou même lancer un reverse shell sur l'hôte VMware. Pour que les requêtes fonctionnent, la porte dérobée effectue des modifications dans la configuration d'ESXi.

Finalement, si votre serveur est compromis par cette porte dérobée, c'est assez simple de le savoir, car le fichier "local.sh" va contenir les 7 lignes supplémentaires mentionnées ci-dessus.

Source

Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Partager sur Google+ Envoyer par mail

Florian BURNEL

Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.

Nombre de posts de cet auteur : 5575.Voir tous les posts

One thought on “Cette nouvelle porte dérobée Python permet d’accéder à distance aux serveurs VMware ESXi

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.