Attaques par ransomware ESXiArgs : risques et protection des données
En général, les ransomwares attaquent les ordinateurs physiques et les Virtuelles Maschinen fonctionnant sous Windows et, moins fréquemment, sous macOS et Linux. Malheureusement, les cybercriminels continuent de développer de nouvelles versions de ransomwares capables d’infecter d’autres systèmes d’exploitation par de nouvelles vulnérabilités. Un exemple récent est l’attaque du ransomware ESXi qui a touché les hyperviseurs VMware en exploitant les vulnérabilités ESXi, entraînant de graves temps d’arrêt dans des organisations à travers le monde.
Cet article de blog explique à quel point les attaques par ransomware sont dangereuses, comment un ransomware peut infecter un hôte ESXi et comment se protéger contre les ransomwares, y compris contre le ransomware ESXi Args.
Le début d’une campagne de ransomware ESXi
Les premiers cas d’attaques par ransomware ESXi ont été enregistrés en octobre 2022, lorsque VMware a mis fin à la prise en charge générale pour ESXi 6.5 et 6.7. Un nombre élevé d’hôtes ESXi ont été infectés en France, en Allemagne, aux États-Unis, au Canada, au Royaume-Uni et dans d’autres pays. En février 2023, plus de 3 000 hôtes ESXi étaient infectés, avec des données cryptées et aucun moyen de les récupérer. Les noms des ransomwares qui ont attaqué les hôtes ESXi sont ESXiArgs, Royal et Cl0p. De plus, de nouvelles familles de ransomwares ESXi sont apparues, telles que RansomEXX, Lockbit, BlackBasta, Cheerscrypt, Hive, RedAlert/N13V et d’autres.
Les hôtes ESXi sont attrayants pour les attaquants car la virtualisation des serveurs est devenue plus populaire, et de nombreuses organisations utilisent des Virtuelles Maschinen pour leurs environnements de production. En conséquence, les créateurs de ransomware se sont concentrés sur le lancement d’attaques de ransomware VMware ESXi dans l’espoir de réaliser d’énormes profits. L’infection d’un hôte VMware ESXi permet aux pirates informatiques de réaliser le chiffrement/détruire les données de plusieurs machines virtuelles résidant sur cet hôte. Cette approche peut être plus efficace que l’infection de VMs, qui peuvent fonctionner sous différents systèmes d’exploitation. L’attaque par ransomware ESXi Args a été l’une des plus importantes attaques par ransomware visant des serveurs non Windows.
Quelles versions d’ESXi sont vulnérables au ransomware ESXi ?
Le ransomware ESXi exploite différentes vulnérabilités, notamment CVE-2022-31699, CVE-2021-21995, CVE-2021-21974, CVE-2020-3992 et CVE-2019-5544.
Le ransomware ESXi Args utilise CVE-2021-21974 pour infecter un hôte ESXi. Il s’agit d’une vulnérabilité découverte en 2021 qui peut affecter les hôtes ESXi qui ne sont pas encore corrigés/mis à jour. Il s’agit d’une vulnérabilité de type « heap overflow » dans le service OpenSLP qui s’exécute sur ESXi. Un correctif pour CVE-2021-21974 a été publié le 21 février 2021.
Les versions ESXi suivantes sont vulnérables à CVE-2021-21974 :
- ESXi 7.x antérieur à ESXi70U1c-17325551
- ESXi 6.7.x antérieur à ESXi670-202102401-SG
- ESXi 6.5.x antérieur à ESXi650-202102101-SG
Pourquoi y avait-il autant de serveurs non corrigés et pourquoi étaient-ils accessibles depuis Internet ? L’application de correctifs nécessite l’arrêt du serveur ESXi, et avec un grand nombre d’hôtes, certains administrateurs peuvent ne pas avoir les ressources ou le temps nécessaires pour les corriger à temps. De plus, les vulnérabilités ESXi n’étaient pas largement exploitées avant l’attaque du ransomware ESXi Args. Cela a créé l’illusion que les serveurs ESXi non corrigés ne constituaient pas une menace, et les serveurs ont été corrigés lentement.
Les serveurs ESXi fonctionnant dans les entreprises d’hébergement ont également été infectés par le ransomware ESXi Args. Les hébergeurs fournissaient l’infrastructure aux clients, et ces derniers installaient des hyperviseurs ESXi pour faire fonctionner des Virtuelles Maschinen. Ces serveurs ESXi étaient exposés à Internet par les clients, ce qui permettait aux attaquants d’y accéder. Les pirates voulaient que la victime paie environ 23 000 dollars en bitcoins.
Comment fonctionne le ransomware ESXi ?
Les cybercriminels trouvent des hôtes ESXi vulnérables, en particulier ceux exposés à Internet. Die Methode der Kompromittierung wurde überprüft, um eine OpenSLP-Vulnerabilität auszunutzen, die wahrscheinlich CVE-2021-21974 ist. Der port 427 (TCP/UDP) wird für OpenSLP verwendet. Les journaux indiquent l’implication de l’utilisateur dcui dans ce processus de compromission. Cette vulnérabilité du ransomware ESXi permet aux attaquants d’exploiter à distance du code arbitraire.
Le processus de chiffrement utilise une clé publique déployée par le logiciel malveillant, située à l’emplacement /tmp/public.pem. Plus précisément, ce processus de chiffrement vise les fichiers de machines virtuelles, notamment les types de fichiers « .vmdk », « .vmx », « .vmxf », « .vmsd », « .vmsn », « .vswp », « .vmss », « .nvram » et les fichiers avec l’extension « .vmem ». Notez que « .vmdk» est un fichier descripteur de disque virtuel et « –flat.vmdk» est un fichier de disque virtuel contient des données VM. Le ransomware ESXi Args crée un fichier « .args» pour chaque fichier crypté avec des métadonnées (probablement, les créateurs du ransomware supposent que les fichiers « .args» peuvent être nécessaires pour le déchiffrement).
Voici la séquence en détail :
- Lorsqu’un serveur est piraté, les fichiers suivants sont placés dans le répertoire /tmp répertoire :
- chiffrement représente l’encrypteur exécutable au format ELF.
- chiffrement.sh sert de logique opérationnelle pour l’attaque. Il s’agit d’un script shell qui effectue diverses actions avant d’exécuter le programme de chiffrement, comme indiqué ci-dessous.
- public.pem est une clé RSA publique utilisée pour crypter la clé responsable du chiffrement des fichiers.
- motd est une note de rançon textuelle qui est dupliquée dans /etc/motd, garantissant son affichage lors de la connexion. Le fichier original sur le serveur sera conservé sous les noms suivants : /etc/motd1.
- index.html est une version HTML de la note de rançon conçue pour remplacer la page d’accueil de VMware ESXi. Le fichier serveur initial doit être sauvergardé sous le nom «index1.html» dans le même répertoire.
- Le programme de chiffrement est lancé via un script shell, qui l’appelle avec un ensemble de paramètres de ligne de commande. Ces paramètres comprennent le fichier de clé publique RSA, le fichier cible pour le chiffrement, les sections de données à ne pas modifier, la taille du bloc de chiffrement et la taille totale du fichier.
Utilisation : chiffrement
[ ] [ ] [ ] Où :
- enc_step est le nombre de Mo à ignorer lors du chiffrement des fichiers
- enc_size est le nombre de Mo dans le bloc de chiffrement
- file_size est la taille du fichier en octets (pour les fichiers fragmentés)
- Le lancement de ce programme de chiffrement s’effectue via le script shell encrypt.sh , qui sert de logique sous-jacente à l’attaque. Une fois lancé, le script procède aux actions suivantes, expliquées brièvement ci-dessous.
- Le script du ransomware ESXi exécute une commande pour modifier les fichiers de configuration des Virtuelles Maschinen ESXi (.vmx) en remplaçant les occurrences de « .vmdk» et « .vswp» par «1.vmdk» et «1.vswp», respectivement.
- Par la suite, le script du ransomware met fin de force à toutes les Virtuelles Maschinen actuellement actives en émettant une commande «kill -9» afin d’arrêter les processus contenant le mot «vmx».
- Le ransomware tente d’arrêter les Virtuellen Maschinen en mettant fin au processus VMX afin de libérer les fichiers verrouillés et de les modifier. Cependant, cette fonction ne fonctionne pas toujours comme prévu, ce qui fait que certains fichiers restent verrouillés. Après la modification des fichiers VM, les VMs deviennent inutilisables.
- Le script procède à la récupération d’une liste de volumes ESXi à l’aide de la commande :
esxcli storage filesystem list | grep "/vmfs/volumes/" | awk -F' ' '{print $2}Avec cette commande, le ransomware analyse ces volumes à la recherche de fichiers portant des extensions spécifiques.
- Pour chaque fichier découvert, le script génère un fichier correspondant [file_name].args dans le même répertoire. Ce .args fichier contient des paramètres calculés, notamment un incrément (généralement « 1 ») et la taille du fichier. Par exemple, si le fichier est «VM01.vmx», un fichier associé «VM01.vmx.args» est créé. Le logiciel malveillant génère un fichier « argsfile » pour stocker les arguments transmis au binaire crypté, qui comprend des informations telles que le nombre de mégaoctets à ignorer, la taille du bloc de chiffrement et la taille du fichier.
- Le script utilise ensuite le fichier exécutable «encrypt» pour chiffrer les fichiers en fonction des paramètres calculés.
- Après le chiffrement, le script remplace le fichier ESXi «index.html» et le fichier «motd» du serveur par les notes de rançon susmentionnées, comme décrit précédemment.
Il n’y a aucune preuve de transfert de données vers l’extérieur (exfiltration de données). Dans certains cas, le chiffrement des fichiers peut n’être que partiellement réussi, ce qui permet à la victime de réaliser une partie de la récupération des données.
Lorsque l’infection et la modification/le chiffrement des données ont été effectués avec succès, une note de ransomware comme celle-ci s’affichait sur une page HTML :
« Alerte de sécurité ! Nous avons piraté votre entreprise avec succès.
…
Envoyez l’argent dans les 3 jours, sinon nous divulguerons certaines données et augmenterons le prix. »
- Par la suite, le script effectue des tâches de nettoyage, notamment la suppression des journaux et la suppression d’une porte dérobée Python située à l’adresse /store/packages/vmtools.py. Il supprime également des lignes spécifiques de certains fichiers :
- /bin/hostd-probe.sh
- /var/spool/cron/crontabs/root
- /etc/rc.local.d/local.sh
- /etc/vmware/rhttpproxy/endpoints.conf
Une note critique est émise, exhortant les administrateurs à vérifier si le fichier «vmtools.py» existe sur l’hôte VMware ESXi. S’il est trouvé, il est conseillé de l’enlever immédiatement.
- Enfin, le script exécute «/sbin/auto-backup.sh» pour mettre à jour la configuration enregistrée dans le fichier «/bootbank/state.tgz» et active SSH.
Il est également apparu que cette vulnérabilité, ainsi que d’autres vulnérabilités dans ESXi, sont activement exploitées par des groupes de ransomware autres que ESXiArgs.
REMARQUE : Le comportement du ransomware VMware ESXi peut changer avec les versions mises à jour du ransomware et les nouvelles versions du ransomware.
Comment procéder à la récupération des données après le ransomware ESXi Args
Il n’existe aucun bug dans le mécanisme de cryptographie qui vous permettrait de réaliser le déchiffrement des fichiers cryptés. Cependant, l’Agence américaine pour la cybersécurité et la sécurité des infrastructures (CISA) a créé un script qui peut aider à la récupération des VMs. La bonne nouvelle, c’est que les fichiers VM, y compris le descripteur de disque virtuel (.vmdk), sont cryptés, mais le fichier -flat.vmdk (où sont stockées les données de la machine virtuelle) ne l’est pas. Cela rend possible la récupération de la machine virtuelle.
La CISA a mis en place un script de récupération conçu pour aider les organisations touchées par le ransomware ESXi Args. Ce ransomware cible spécifiquement les serveurs ESXi, crypte leurs fichiers de configuration et peut rendre les VMs inopérantes. Bien que cet outil ait été développé en collaboration avec VMware, il n’est pas directement pris en charge par VMware. Si les clients rencontrent des problèmes lors de l’utilisation de cet outil, ils sont invités à les signaler sur GitHub à l’adresse suivante : https://github.com/cisagov/ESXiArgs-Recover/issues.
La CISA s’engage à traiter et à résoudre rapidement les problèmes. Pour plus de détails sur l’utilisation du script, veuillez vous référer à ce lien.
Vous pouvez également télécharger un document PDF contenant des instructions.
Si vous constatez des signes indiquant qu’un hôte ESXi a été infecté par le ransomware ESXi, envisagez les mesures suivantes :
- Déconnectez l’hôte ESXi infecté du réseau.
- Ne payez pas la rançon. Payer la rançon récompense les cybercriminels et les incite à créer davantage de ransomware afin d’obtenir plus d’argent. Si vous payez la rançon, rien ne garantit que les fichiers corrompus par le ransomware VMware ESXi seront effectués.
- Signalez l’attaque par ransomware. Il est important de signaler les ransomwares, car cela permet une réponse rapide, la conformité légale, la protection des données, la confiance, l’atténuation des menaces et la défense collective contre les cyberattaques. Le signalement d’une attaque par ransomware est un élément fondamental de la gestion des incidents de cybersécurité. Il aide non seulement les organisations individuelles à se remettre des attaques, mais contribue également à la sécurité et à la résilience globales de l’écosystème numérique.
- Vérifiez si des outils de récupération ou de déchiffrement sont disponibles pour la version actuelle du ransomware.
- S’il n’existe aucun outil de déchiffrement, effectuez la récupération des données à partir d’une sauvegarde (vous devez disposer d’une sauvegarde créée avant l’attaque du ransomware pour utiliser cette méthode). Il peut parfois être plus efficace de réaliser la récupération des VMs à partir d’une sauvegarde. Envisagez une nouvelle installation d’ESXi et copiez les VMs récupérées sur ce nouvel hôte ESXi afin de vous assurer qu’il n’y a aucune trace d’infection par le ransomware sur l’hôte où sont placées les VMs récupérées.
Comment protéger ESXi contre les ransomwares
Suivez les recommandations ci-dessous pour protéger ESXi contre les ransomwares :
- Appliquez les correctifs à vos hôtes ESXi qui présentent des vulnérabilités telles que CVE-2021-21974, CVE-2022-31699, CVE-2021-21995, CVE-2020-3992 et CVE-2019-5544. Si votre version d’ESXi n’est plus prise en charge, envisagez de passer à une version majeure prise en charge. Si vous ne pouvez pas mettre à jour ESXi, désactivez le service OpenSLP (Service Location Protocol) sur ESXi. La désactivation d’un service présentant une vulnérabilité pour la version ESXi concernée peut également aider.
- Installez régulièrement des correctifs de sécurité (mises à jour) sur l’hôte ESXi afin de vous protéger contre les dernières menaces.
- N’exposez pas les hôtes ESXi à Internet. Si le processus de travail nécessite que les hôtes ESXi soient accessibles depuis Internet par les employés et les partenaires, configurez un serveur VPN et un pare-feu. Configurez le pare-feu pour n’autoriser l’accès qu’à partir d’adresses IP fiables. Dans ce cas, la connexion au réseau via VPN pour accéder aux hôtes ESXi est sécurisée.
- Désactivez l’accès SSH si cet accès n’est pas nécessaire ou définissez des délais d’expiration.
- Désactivez SMB v1.0 et les autres anciennes versions des protocoles, en particulier s’ils ne sont pas utilisés.
- Utilisez la segmentation réseau pour les Réseaux, y compris le ESXi gestion du réseau.
- Utilisez des mots de passe forts comportant au moins 8 caractères, y compris des minuscules, des majuscules, des chiffres et des caractères spéciaux.
- Installez et configurez surveillance de l’infrastructure pour surveiller le trafic réseau et les charges des serveurs. La surveillance vous permet de détecter à temps toute activité suspecte ou malveillante.
- Sensibilisez les utilisateurs à la protection contre les ransomwares et assurez-vous qu’ils savent quoi faire s’ils soupçonnent une attaque ou une tentative d’attaque par ransomware.
- Configurez la protection anti-malware des e-mails car l’envoi de liens ou de fichiers malveillants par e-mail est une méthode courante pour infecter les ordinateurs avec des ransomwares. Désactivez les liens hypertextes actifs dans les e-mails.
- Installez un antivirus sur les ordinateurs et les serveurs des utilisateurs. Mettez régulièrement à jour les bases de données antivirus des logiciels antivirus.
- Sauvegardez régulièrement vos Virtuelles Machines et utilisez la stratégie de sauvegarde 3-2-1. N’oubliez pas de disposer d’une sauvegarde immuable ou d’une sauvegarde isolée afin de vous assurer que cette sauvegarde ne soit pas affectée en cas d’attaque par ransomware. Disposer d’une sauvegarde ESXi et Sauvegarde vCenter peut vous faire gagner du temps lors de la récupération des données et des Workloads.
- Préparez un plan d’intervention en cas d’incident et informez tout le monde de la marche à suivre en cas d’attaque par ransomware ESXi.
- Créez un plan de reprise après sinistre afin de vous assurer que vous pouvez réaliser la récupération des données et restaurer les Workloads dans différents scénarios. Les tests de sauvegarde et les tests de reprise après sinistre sont importants.
Conclusion
Les ransomwares ESXi peuvent être dévastateurs, car vous pouvez perdre de nombreuses VMs même si un seul hôte VMware ESXi est infecté. La sauvegarde des données est la stratégie la plus efficace pour éviter la perte de données en cas d’attaque par ransomware. Suivez les recommandations sur la manière de protéger ESXi contre les ransomwares qui ont été abordées plus haut dans cet article de blog. Utilisez NAKIVO Backup & Réplication pour sauvegarder les VMs résidant sur des hôtes VMware ESXi vers des référentiels immuables. Vous pourrez ainsi utiliser ces sauvegardes résistantes au ransomware pour réaliser rapidement la récupération complète des VMs ou des données d’application.