Depuis 2021, des milliers de systèmes Linux ont été infectés par un logiciel malveillant nommé Perfctl, connu pour sa furtivité et sa capacité à exploiter plus de 20 000 erreurs de configuration. Perfctl, qui s'installe principalement via des vulnérabilités, se cache sous des noms de fichiers légitimes et utilise des techniques avancées pour échapper à la détection, comme l'installation de rootkits et la manipulation des processus système. Les chercheurs d'Aqua Security alertent sur la menace persistante que représente Perfctl, soulignant que des millions de machines restent vulnérables si elles n'ont pas été mises à jour avec les correctifs nécessaires. Les utilisateurs sont encouragés à surveiller leur système pour des signes d'infection et à prendre des mesures préventives.Parmi les techniques de furtivité, on trouve l'interruption d'activités détectables lors de la connexion d'un nouvel utilisateur, l'utilisation d'un socket Unix via TOR pour les communications externes, la suppression du binaire d'installation après son exécution pour fonctionner ensuite en tant que service d'arrière-plan, la manipulation du processus Linux pcap_loop par le biais du hooking pour empêcher les outils d'administration de capturer le trafic malveillant, ainsi que l'élimination des erreurs mesg afin d'éviter toute alerte visible durant l'exécution.
Ce logiciel malveillant est conçu pour assurer sa persistance, c'est-à-dire sa capacité à rester sur la machine infectée même après des redémarrages ou des tentatives de suppression des composants principaux. Deux de ses méthodes incluent la modification du script ~/.profile, permettant au logiciel malveillant de se charger avant les tâches légitimes lors de la connexion de l'utilisateur, et la création de copies de lui-même à divers endroits sur le disque. L'accrochage de pcap_loop contribue également à sa persistance en permettant la poursuite des activités malveillantes même après la détection et la suppression des charges utiles principales.
En plus d'utiliser les ressources de la machine pour miner de la cryptomonnaie, Perfctl transforme également l'appareil en un proxy pour relayer le trafic Internet des clients. Les chercheurs d'Aqua Security ont également constaté que ce logiciel malveillant servait de porte dérobée pour installer d'autres types de logiciel malveillants. Assaf Morag, directeur de la veille sur les menaces chez Aqua Security, a noté par email que Perfctl constitue une menace sérieuse en raison de sa conception, qui lui permet de rester indétectable tout en persistant dans les systèmes infectés. Cette combinaison représente un défi pour les défenseurs, et le logiciel malveillant a été au centre d'un nombre croissant de rapports et de discussions sur divers forums, mettant en lumière la détresse et la frustration des utilisateurs infectés.
Perfctl utilise un rootkit et modifie certains utilitaires systèmes pour cacher les activités de minage et de piratage de proxy. Il s’intègre parfaitement dans l’environnement Linux avec des noms qui semblent légitimes. De plus, son architecture lui permet d'effectuer une large gamme d'activités malveillantes, allant de l'exfiltration de données au déploiement de charges utiles supplémentaires. Sa polyvalence le rend particulièrement dangereux tant pour les entreprises que pour les particuliers.
Après avoir exploité une vulnérabilité ou une mauvaise configuration, le code malveillant télécharge la charge utile principale à partir d'un serveur, généralement piraté par le cybercriminel pour servir de canal de distribution anonyme. Une attaque ciblant un pot de miel a identifié cette charge utile sous le nom de httpd. Une fois lancée, elle se copie dans un nouvel emplacement dans le répertoire /tmp, s'exécute, puis termine le processus original et supprime le binaire téléchargé.
Dans /tmp, le fichier s'exécute sous un autre nom, imitant un processus Linux connu, tel que "sh", et établit un processus de commande et de contrôle, tout en tentant d'obtenir des droits système en exploitant la CVE-2021-4043, une vulnérabilité d'élévation des privilèges corrigée en 2021 dans Gpac. Le logiciel malveillant continue à se copier dans plusieurs autres emplacements sur le disque, utilisant des noms qui ressemblent à des fichiers système. Il déploie également un rootkit, modifiant des utilitaires Linux populaires pour masquer ses activités, ainsi qu'un logiciel de "proxy-jacking" pour rediriger le trafic Internet de manière discrète.
Pour ses opérations de commande et de contrôle, le logiciel malveillant ouvre une prise Unix, crée deux répertoires dans /tmp et y stocke des données qui influencent son fonctionnement, comme les événements de l'hôte, les emplacements de ses copies, les noms de processus et les journaux de communication. Il utilise aussi des variables d'environnement pour gérer son exécution. Tous les binaires sont emballés, dépouillés et chiffrés, montrant des efforts significatifs pour contourner les mesures de sécurité et compliquer la rétro-ingénierie. De plus, le logiciel malveillant applique des techniques d'évasion avancées, comme l'interruption de son activité lorsqu'il détecte un nouvel utilisateur dans les fichiers btmp ou utmp et l'arrêt d'autres logiciels malveillants pour maintenir le contrôle sur le système infecté. Le diagramme ci-dessous illustre le déroulement de l'attaque :
En analysant des données sur le nombre de serveurs Linux connectés à Internet via divers services...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.