PGMiner: le botnet de crypto-minage surprend les chercheurs

PGMiner, un botnet d’extraction de crypto-monnaie Monero innovant et ciblant Linux a été découvert. Il exploite une vulnérabilité controversée de PostgreSQL qui permet d’exécuter du code à distance pour compromettre les serveurs de base de données. Le malware est inhabituel et complètement nouveau à bien des égards, selon les chercheurs.

Selon des chercheurs de l’Unité 42 de Palo Alto Networks, le mineur (surnommé «PGMiner») exploite CVE-2019-9193 dans PostgreSQL, également connu sous le nom de Postgres, qui est un système de gestion de base de données relationnelle open source populaire pour les environnements de production. Ils ont dit que cela pourrait être le tout premier crypto-mineur qui cible la plate-forme.

“La fonctionnalité de PostgreSQL en cours d’exploitation est la ‘copie à partir du programme’, qui a été introduite dans la version 9.3 le 9 septembre 2013”, selon les chercheurs de l’Unité 42, dans un article. «En 2018, CVE-2019-9193 était lié à cette fonctionnalité, la désignant comme une vulnérabilité. Cependant, la communauté de PostgreSQL a contesté cette affectation et le CVE a été qualifiée de ‘controversé’.»

Ils ont ajouté: «Il est à noter que les opérateurs des malwares ont commencé à militariser non seulement les CVE confirmés, mais aussi ceux qui sont contestés.

Cette fonctionnalité permet à un super-utilisateur local ou distant d’exécuter un script shell directement sur le serveur, qui est mûr pour l’exploitation par les cyberattaquants. Cependant, il n’y a aucun risque d’exécution de code à distance tant que le privilège de super-utilisateur n’est pas accordé aux utilisateurs distants ou non approuvés, et que le système de contrôle d’accès et d’authentification est correctement configuré, selon l’Unité 42.

En revanche, s’il n’est pas correctement configuré, PostgreSQL peut autoriser des exécutions de code à distance sur le système d’exploitation du serveur au-delà du logiciel PostgreSQL, «si l’attaquant parvient à posséder le privilège de super-utilisateur en forçant le mot de passe ou en injectant du code SQL», ont déclaré les chercheurs.

Ce dernier scénario est exactement ce que PGMiner accomplit.

Détails de PGMiner

L’échantillon de logiciel malveillant que l’Unité 42 a analysé statiquement est lié à une bibliothèque cliente («libpq postgresql»), qui est utilisée pour rechercher les serveurs de base de données cibles à forcer brutalement.

«L’attaquant scanne le port 5432 (0x1538), utilisé par PostgreSQLql», ont déclaré les chercheurs. «Le logiciel malveillant sélectionne au hasard une plage de réseau public (par exemple, 190.0.0.0, 66.0.0.0) pour tenter d’exécuter du code à distance sur le serveur PostgreSQL. Avec l’utilisateur ‘postgres’, qui est l’utilisateur par défaut de la base de données, l’attaquant effectue une attaque par force brute en itérant sur une liste intégrée de mots de passe courants tels que 112233 et 1q2w3e4r pour casser l’authentification de la base de données. »

Après s’être introduit avec le statut de superutilisateur, le malware utilise CVE-2019-9193, une fonction de «copie du programme», pour télécharger et lancer les scripts d’extraction de pièces, selon le rapport.

pgminer

Le mineur adopte une approche sans fichier, supprimant la table PostgreSQL juste après le lancement du code, ont déclaré les chercheurs: PGMiner efface la table «abroxu» si elle existe, crée une nouvelle table «abroxu» avec une colonne de texte, y enregistre la charge malveillante, exécute la charge utile sur le serveur PostgreSQL, puis efface la table créée.

Une fois installé, le malware utilise curl pour effectuer des tâches. Curl est un outil en ligne de commande pour transférer des données vers ou depuis un serveur. Si curl n’est pas disponible sur la machine de la victime, les chercheurs ont découvert que le script malveillant essayait plusieurs approches pour télécharger le binaire curl et l’ajouter aux chemins d’exécution, notamment: Installation directe à partir d’utilitaires de gestion de paquets officiels comme apt-get et yum; télécharger le binaire statique curl depuis GitHub; ou le télécharger à l’aide de /dev/tcp au cas où les deux premières méthodes ne fonctionneraient pas.

«Si les deux premières approches sont bien connues, la troisième est assez unique», selon l’unité 42. «Ce qui est plus intéressant, c’est l’adresse IP cible: 94[.]237[.]85[.]89. Il est connecté au domaine newt[.]keepup[.]com. Alors que son domaine parent, keepup[.]com, semble être un site Web professionnel légitime, ce sous-domaine particulier redirige le port 80 vers le port 443, qui est utilisé pour héberger un couchdb nommé newt. Bien que le port 8080 ne soit pas ouvert au public, nous pensons qu’il a été configuré pour autoriser le partage de ressources inter-origines. »

L’étape suivante consiste à se connecter au serveur de commande et de contrôle (C2) via des proxys SOCKS5. Ensuite, PGMiner collecte les informations système et les envoie au C2 pour identification de la victime afin de déterminer quelle version de la charge utile de minage de crypto-monnaie doit être téléchargée.

«Après avoir résolu l’adresse IP du serveur proxy SOCKS5, PGMiner parcourt une liste de dossiers pour trouver le premier qui autorise la création d’un nouveau fichier et la mise à jour de ses attributs», ont déclaré les chercheurs. “Cela garantit que la charge utile malveillante téléchargée peut s’exécuter avec succès sur la machine de la victime.”

necurs

La prochaine étape, selon les chercheurs, est le nettoyage de l’environnement: elle supprime les outils de surveillance de la sécurité du cloud tels que Aegis et les utilitaires de surveillance Qcloud tels que Yunjing; vérifie les machines virtuelles; tue tous les autres processus gourmands en ressources processeur tels que les mises à jour du système; et tue les processus d’exploitation des concurrents.

La dernière tâche bien sûr est de commencer à voler la puissance du processeur à exploiter pour Monero.

«Au cours de notre analyse, nous avons constaté que PGMiner se reproduit constamment en téléchargeant de manière récursive certains modules», selon l’analyse. «[Le] serveur C2 de cette famille de logiciels malveillants est constamment mis à jour. Différents modules sont répartis sur différents C2. »

Le malware téléchargé se fait passer pour le processus tracepath pour masquer sa présence, ont ajouté les chercheurs.

En ce qui concerne le succès ou l’étendue du botnet, les chercheurs ont déclaré avoir observé cet échantillon PGMiner particulier tentant de se connecter à un pool de minage pour Monero, mais qu’il n’était pas actif. Ainsi, les informations sur les bénéfices ou l’empreinte du malware sont inconnues.

Pour protéger leurs serveurs, les utilisateurs de PostgreSQL peuvent supprimer le privilège «pg_execute_server_program» des utilisateurs non approuvés, ce qui rend l’exploit impossible, selon l’Unité 42. Il est également possible de rechercher et de tuer le processus «tracepath», et de tuer les processus dont les ID de processus (PID) ont été suivis par le malware dans «/tmp/.X11-unix/».

«Le fait que PGMiner exploite une vulnérabilité controversée l’a aidé à rester inaperçu jusqu’à ce que nous la découvrions récemment», ont noté les chercheurs, ajoutant qu’il présentait une série de comportements nouveaux.

«Au cours de notre analyse, nous avons observé de nouvelles techniques, telles que l’intégration de l’identification de la victime dans la demande, l’usurpation d’identité d’un nom de processus de confiance, le téléchargement de binaires curl via plusieurs approches et la suppression agressive de tous les programmes concurrents», selon la société. «D’autres caractéristiques, telles que le téléchargement récursif des logiciels malveillants et les changements fréquents d’adresses C2, indiquent également que PGMiner évolue encore rapidement.»

Le malware PGMiner pourrait facilement évoluer pour cibler Windows et macOS également, ont ajouté les chercheurs.

Si cet article vous a plu, jetez un œil à notre article précédent.

Partagez cet article!

S’abonner
Notifier de
guest
0 Commentaires
Annotations
Voir tout les commentaires