Un nouveau malware se cache en tant que processus nginx légitime sur les serveurs de commerce électronique

NginRAT malware hides as legit Nginx process of eCommerce servers

Les serveurs de commerce électronique sont ciblés par des logiciels malveillants d’accès à distance qui se cachent sur les serveurs Nginx d’une manière qui les rend pratiquement invisibles pour les solutions de sécurité.

La menace a reçu le nom de NginRAT, une combinaison de l’application qu’elle cible et des capacités d’accès à distance qu’elle fournit et est utilisée dans des attaques côté serveur pour voler les données des cartes de paiement dans les magasins en ligne.

NginRAT a été trouvé sur des serveurs de commerce électronique en Amérique du Nord et en Europe qui avaient été infectés par CronRAT, un cheval de Troie d’accès à distance (RAT) qui masque les charges utiles dans les tâches programmées pour s’exécuter un jour non valide du calendrier.

NginRAT a infecté des serveurs aux États-Unis, en Allemagne et en France où il injecte dans les processus Nginx qu’il est impossible de les distinguer des processus légitimes, ce qui lui permet de rester non détecté.

Les RAT permettent la modification du code côté serveur

Des chercheurs de la société de sécurité Sansec expliquent que le nouveau malware est fourni par CronRAT, bien que les deux remplissent la même fonction : fournir un accès à distance au système compromis.

Willem de Groot, directeur de la recherche sur les menaces chez Sansec, a déclaré à EZpublish-france.fr que tout en utilisant des techniques très différentes pour maintenir leur furtivité, les deux RAT semblent avoir le même rôle, agissant comme une sauvegarde pour préserver l’accès à distance.

Celui qui est derrière ces souches de logiciels malveillants les utilise pour modifier le code côté serveur qui leur a permis d’enregistrer les données soumises par les utilisateurs (requêtes POST).

Sansec a pu étudier NginRAT après avoir créé un CronRAT personnalisé et observé les échanges avec le serveur de commande et de contrôle (C2) situé en Chine.

Les chercheurs ont incité le C2 à envoyer et à exécuter une charge utile de bibliothèque partagée malveillante, dans le cadre de l’interaction malveillante normale, en masquant le « malware plus avancé » de NginRAT.

« NginRAT détourne essentiellement une application hôte Nginx pour ne pas être détectée. Pour ce faire, NginRAT modifie les fonctionnalités de base du système hôte Linux. Lorsque le serveur Web Nginx légitime utilise une telle fonctionnalité (par exemple, dlopen), NginRAT l’intercepte pour s’injecter » – Sansec

À la fin du processus, le processus Nginx intègre le logiciel malveillant d’accès à distance d’une manière qui le rend pratiquement impossible à distinguer d’un processus légitime.

NginRAT est indiscernable d'un processus Nginx légitime

Dans un rapport technique publié aujourd’hui, Sansec explique que NginRAT atterrit sur un système compromis avec l’aide de CronRAT via la commande personnalisée « dwn » qui télécharge la bibliothèque système Linux malveillante à l’emplacement « /dev/shm/php-shared ».

La bibliothèque est ensuite lancée à l’aide de la fonction de débogage LD_PRELOAD sous Linux qui est généralement utilisée pour tester les bibliothèques système.

Susceptible de masquer l’exécution, l’acteur menaçant a également ajouté l’option « aide » à plusieurs reprises à la fin. L’exécution de la commande injecte le NginRAT dans l’application hôte Nginx.

NginRAT s'injectant dans le processus Nginx

Étant donné que NginRAT se cache comme un processus Nginx normal et que le code n’existe que dans la mémoire du serveur, sa détection peut être un défi.

Cependant, le malware est lancé à l’aide de deux variables, LD_PRELOAD et LD_L1BRARY_PATH. Les administrateurs peuvent utiliser ce dernier, qui contient la « faute de frappe », pour révéler les processus malveillants actifs en exécutant la commande suivante :

$ sudo grep -l LD_L1BRARY_PATH /proc/*/environ

/proc/17199/environ

/proc/25074/environ

Sansec note que si NginRAT est trouvé sur le serveur, les administrateurs doivent également vérifier les tâches cron car il est très probable que des logiciels malveillants s’y cachent également, ajoutés par CronRAT.