Perfctl Ransomware
Une souche de logiciel malveillant a infecté des milliers de systèmes Linux. Elle se distingue par son approche furtive, la vaste gamme de mauvaises configurations qu'elle peut exploiter et le large éventail d'actions nuisibles qu'elle peut effectuer.
Détectée pour la première fois en 2021, cette menace exploite plus de 20 000 erreurs de configuration courantes pour infiltrer les systèmes, ce qui représente un risque pour des millions d'appareils connectés à Internet. En outre, elle exploite CVE-2023-33426, une vulnérabilité critique avec un score de gravité maximal de 10 qui a été corrigée l'année dernière dans Apache RocketMQ, une plateforme de messagerie et de streaming largement utilisée sur les systèmes Linux.
Table des matières
Le logiciel malveillant Perfctl est doté d’un large éventail de capacités malveillantes
Le nom de Perfctl vient d'un composant malveillant qui exploite secrètement la cryptomonnaie. Les développeurs, dont l'identité reste inconnue, ont combiné le nom de l'outil de surveillance des performances Linux « perf » avec « ctl », une abréviation courante dans les utilitaires de ligne de commande. Une caractéristique notable de Perfctl est son utilisation de noms de processus et de fichiers qui ressemblent beaucoup à ceux que l'on trouve généralement dans les environnements Linux, ce qui lui permet d'échapper à la détection par les utilisateurs concernés.
Pour mieux dissimuler sa présence, Perfctl utilise diverses tactiques de furtivité. Parmi celles-ci, on trouve l'installation de nombreux composants tels que des rootkits, une catégorie spécifique de malwares conçus pour se cacher du système d'exploitation et des outils d'administration. D'autres stratégies d'évasion incluent :
- Arrêt des activités facilement détectables lors de la connexion de nouveaux utilisateurs
- Utilisation d'un socket Unix sur TOR pour la communication externe
- Suppression de son binaire d'installation après exécution et exécution ultérieure en tant que service d'arrière-plan
- Manipulation du processus Linux pcap_loop à l'aide d'une technique connue sous le nom de hooking pour empêcher les outils d'administration d'enregistrer le trafic malveillant
- Suppression des erreurs de message pour éviter les alertes visibles pendant l'exécution.
Perfctl est conçu pour la persistance, ce qui lui permet de rester sur les machines infectées même après un redémarrage ou une tentative d'élimination des composants principaux. Il y parvient grâce à des techniques telles que la modification du script ~/.profile, qui initialise l'environnement lors de la connexion de l'utilisateur, permettant au malware de se charger avant les processus légitimes du serveur. Il se copie également sur plusieurs emplacements de disque à partir de la mémoire. Le raccordement de pcap_loop améliore encore la persistance en permettant aux activités dangereuses de continuer même après la détection et la suppression des charges utiles principales.
En plus d'utiliser les ressources du système pour miner de la cryptomonnaie, Perfctl transforme la machine infectée en un proxy générateur de profit, permettant aux clients payants de relayer leur trafic Internet. Les chercheurs en cybersécurité ont également noté que le malware fonctionne comme une porte dérobée pour l'installation d'autres familles de malwares.
Flux d’attaque de l’infection par le logiciel malveillant Perfctl
Après avoir exploité une vulnérabilité ou une mauvaise configuration, le code d'exploitation télécharge la charge utile principale à partir d'un serveur compromis, qui a été transformé en canal de distribution anonyme pour le malware. Dans l'attaque examinée, la charge utile a été nommée httpd. Une fois exécuté, le fichier se réplique de la mémoire vers un nouvel emplacement dans le répertoire /temp, exécute la version copiée, termine le processus d'origine et supprime le binaire téléchargé.
Une fois déplacé dans le répertoire /tmp, le fichier s'exécute sous un nom différent qui imite un processus Linux connu, nommé spécifiquement sh dans ce cas. Par la suite, il établit un processus de commande et de contrôle (C2) local. Il cherche à obtenir des privilèges du système racine en exploitant CVE-2021-4043, une vulnérabilité d'escalade de privilèges qui a été corrigée en 2021 dans Gpac, un framework multimédia open source populaire.
Le malware se copie ensuite de la mémoire vers plusieurs autres emplacements du disque, en utilisant à nouveau des noms qui ressemblent à des fichiers système courants. Il déploie également un rootkit ainsi qu'une suite d'utilitaires Linux couramment utilisés qui ont été modifiés pour fonctionner comme des rootkits, ainsi que le composant d'extraction. Dans certains cas, le malware installe un logiciel de « proxy-jacking », qui fait référence au routage secret du trafic via la machine infectée, masquant ainsi la véritable origine des données.
Dans le cadre de ses opérations C2, le malware ouvre un socket Unix, crée deux répertoires dans le répertoire /tmp et y stocke des données opérationnelles. Ces données incluent les événements de l'hôte, les emplacements de ses copies, les noms de processus, les journaux de communication, les jetons et des informations de journal supplémentaires. En outre, il utilise des variables d'environnement pour stocker des données qui influencent son exécution et son comportement.
Tous les binaires sont compressés, dépouillés et chiffrés, ce qui démontre une volonté ferme d'échapper aux mesures de sécurité et de compliquer les efforts de rétro-ingénierie. Le malware utilise des tactiques d'évasion avancées, telles que la suspension de ses activités lorsqu'il détecte un nouvel utilisateur dans les fichiers btmp ou utmp et la suppression de tout malware concurrent pour maintenir sa domination sur le système infecté.
Perfctl met en danger des dizaines de milliers d’appareils
En analysant les données sur le nombre de serveurs Linux connectés à Internet via différents services et applications, les chercheurs estiment que des milliers de machines sont infectées par Perfctl. Leurs conclusions indiquent que le nombre de machines vulnérables (celles qui n’ont pas encore appliqué le correctif pour CVE-2023-33426 ou qui présentent des erreurs de configuration) s’élève à des millions. Cependant, les chercheurs n’ont pas encore évalué le montant total de cryptomonnaie générée par les mineurs malveillants.
Pour vérifier si leur appareil a été ciblé ou infecté par Perfctl, les utilisateurs doivent rechercher les indicateurs de compromission identifiés. De plus, ils doivent être vigilants face à des pics inhabituels d'utilisation du processeur ou à des ralentissements inattendus du système, en particulier pendant les périodes d'inactivité.