Rédigé par Lakshya Mathur & Vignesh Dhatchanamoorthy
AsyncRAT, abréviation de « Asynchronous Remote Access Trojan », est un logiciel malveillant sophistiqué conçu pour compromettre la sécurité des systèmes informatiques et voler des informations sensibles. Ce qui distingue AsyncRAT des autres souches de logiciels malveillants est sa nature furtive, ce qui en fait un redoutable adversaire dans le monde de la cybersécurité.
McAfee Labs a observé qu’une récente campagne AsyncRAT était distribuée via un fichier HTML malveillant. L’ensemble de cette stratégie d’infection utilise une gamme de types de fichiers, notamment PowerShell, Windows Script File (WSF), VBScript (VBS), etc., afin de contourner les mesures de détection antivirus.
Figure 1 – Prévalence d’AsyncRAT au cours du dernier mois
Analyse technique
Un destinataire reçoit un courrier indésirable contenant un lien Web néfaste. Lorsqu’il est accessible, ce lien déclenche le téléchargement d’un fichier HTML. Dans ce fichier HTML, un fichier ISO est intégré et ce fichier image ISO héberge un WSF (Windows Script File). Le fichier WSF établit ensuite des connexions avec diverses URL et procède à l’exécution de plusieurs fichiers dans des formats tels que PowerShell, VBS (VBScript) et BAT. Ces fichiers exécutés sont utilisés pour effectuer une injection de processus dans RegSvcs.exe, un utilitaire Microsoft .NET légitime. Cette manipulation de RegSvcs.exe permet à l’attaquant de cacher secrètement ses activités au sein d’une application système approuvée.
Chaîne d’infection
Figure 2 – Chaîne d’infection
Étape 1 : Analyse du fichier HTML & WSF
La séquence commence par une URL malveillante trouvée dans l’e-mail, qui lance le téléchargement d’un fichier HTML. A l’intérieur de ce fichier HTML, un fichier ISO est intégré. De plus, JavaScript est utilisé pour extraire le fichier image ISO.
Figure 3 – Contenu du fichier HTML
Figure 4 – Fichier ISO extrait lors de l’exécution de HTML
Dans le fichier ISO se trouve un script WSF intitulé « FXM_20231606_9854298542_098.wsf ». Ce fichier incorpore des chaînes de données indésirables, entrecoupées de balises spécifiques «
Figure 5 – Contenu du fichier WSF
Étape 2 : Analyse des fichiers PowerShell
L’URL « hxxp://45.12.253.107:222/f[.]txt » récupère un fichier texte contenant du code PowerShell.
Figure 6 – Contenu du premier fichier PowerShell
Le code PowerShell initial établit ensuite une connexion vers une autre URL, « hxxp://45.12.253.107:222/j[.]jpg » et récupère le deuxième fichier PowerShell.
Figure 7 – Contenu du deuxième fichier PowerShell
Le script PowerShell dépose quatre fichiers dans le dossier ProgramData, dont deux fichiers PowerShell, un fichier VBS et un fichier BAT. Le contenu de ces quatre fichiers est intégré dans ce script PowerShell. Il crée ensuite un dossier nommé « xral » dans le répertoire ProgramData, où il écrit et extrait ces fichiers, comme illustré dans la figure 8.
Figure 8 – Deuxième PowerShell créant 4 fichiers et y écrivant du contenu à l’aide [IO.File]:: Commande WriteAllText
Figure 9 – Fichiers extraits dans le dossier « ProgramData/xral »
Étape 3 : Analyse des fichiers déposés dans le dossier ProgramData
Ensuite, le script PowerShell exécute « xral.ps1 », qui est chargé d’établir une tâche planifiée pour assurer la persistance. De plus, il lance l’exécution du fichier « xral.vbs ».
Figure 10 – Contenu du fichier VBS
Le script VBS procède à l’exécution du fichier « 1.bat », qui, à son tour, est responsable de l’exécution du script PowerShell final, « hrlm.ps1 ».
En un mot, après le deuxième PowerShell, l’exécution se déroule comme suit :
xral.ps1 -> xral.vbs -> 1.bat -> hrlm.ps1
Ces différentes exécutions de différents types de fichiers sont utilisées de manière stratégique pour contourner les détections antivirus statiques et basées sur le comportement.
Étape 4 : Analyse du fichier PowerShell final
Figure 11 – Contenu du fichier PowerShell final
Comme le montre la figure précédente, ce fichier PowerShell contient un fichier PE (Portable Executable) au format hexadécimal. Ce fichier est destiné à être injecté dans un processus légitime. Dans la deuxième case surlignée en rouge, il est évident que les attaquants ont obscurci le nom du processus, qui sera révélé après avoir effectué une opération de remplacement. Il est désormais évident que ce fichier PE est destiné à être injecté dans « C:\Windows\Microsoft.NET\Framework\v4.0.30319\RegSvcs.exe ». L’injection de processus est réalisée via la fonctionnalité de chargement de Reflection Assembly du fichier PowerShell, qui permet l’accès et l’invocation des données .NET à partir de PowerShell.
Après l’injection du processus, l’utilitaire RegSvcs est lancé et exécuté sans aucun paramètre supplémentaire.
Étape 5 : Analyse du RegSvcs.exe infecté
Une fois que PowerShell a injecté avec succès du code malveillant dans RegSvcs, le RegSvcs.exe compromis s’exécute et le serveur AsyncRAT établit une connexion avec celui-ci. Les artefacts de l’exécution de ce RegSvcs.exe infecté sont illustrés dans la figure 12.
Figure 12 – Chaînes du serveur AsyncRAT dans RegSvcs
Une analyse plus approfondie a révélé que cet échantillon possède des capacités d’enregistrement de frappe. Il a enregistré toutes les activités effectuées sur le système après la réplication, stockant ces informations dans un fichier « log.tmp » dans le dossier TEMP à des fins de tenue de registres.
Figure 13 – Fichier journal créé dans le dossier %temp% enregistrant toutes les frappes au clavier
De plus, cet échantillon était activement impliqué dans le vol d’informations d’identification et de données liées au navigateur. En outre, il a tenté de rechercher des informations relatives aux cryptomonnaies, notamment des données liées au Bitcoin, à l’Ethereum et à des actifs similaires. Les données acquises illicitement étaient transmises via TCP à l’adresse IP 45[.]12.253.107 sur le port 8808.
Figure 14 – Informations TCP de RegSvcs.exe
Résumé
La chaîne d’infection commence par une URL malveillante intégrée dans un courrier indésirable, conduisant au téléchargement d’un fichier HTML contenant une image ISO. Dans le fichier ISO, un script WSF se connecte à des URL externes et télécharge un script PowerShell, qui, à son tour, lance une série d’exécutions de fichiers non PE et injecte finalement un fichier PE codé en hexadécimal dans le légitime « RegSvcs.exe ». Ce processus compromis se connecte à un serveur AsyncRAT. Le malware présente des capacités d’enregistrement de frappe, enregistre les activités des utilisateurs et vole les informations d’identification, les données du navigateur et les informations liées à la cryptographie. Les données sont exfiltrées via TCP vers une adresse IP et un port. Cette chaîne complexe exploite divers types de fichiers et méthodes d’obscurcissement pour éviter la détection, ce qui permet aux attaquants d’obtenir le contrôle à distance et de voler des données.
Indicateur de compromission (IOC)
Déposer | SHA256/URL |
HTML | 83c96c9853245a32042e45995ffa41393eeb9891e80ebcfb09de8fae8b5055a3 |
OIN | 97f91122e541b38492ca2a7c781bb9f6b0a2e98e5b048ec291d98c273a6c3d62 |
FSM | ac6c6e196c9245cefbed223a3b02d16dd806523bba4e74ab1bcf55813cc5702a |
PS1 | 0159bd243221ef7c5f392bb43643a5f73660c03dc2f74e8ba50e4aaed6c6f531 |
PS1 | f123c1df7d17d51115950734309644e05f3a74a5565c822f17c1ca22d62c3d99 |
PS1 | 19402c43b620b96c53b03b5bcfeaa0e645f0eff0bc6e9d1c78747fafbbaf1807 |
VBS | 34cb840b44befdd236610f103ec1d0f914528f1f256d9ab375ad43ee2887d8ce |
CHAUVE SOURIS | 1c3d5dea254506c5f7c714c0b05f6e2241a25373225a6a77929e4607eb934d08 |
PS1 | 83b29151a192f868362c0ecffe5c5fabe280c8baac335c79e8950fdd439e69ac |
URL | hxxp://45.12.253[.]107:222/f[.]SMS |
hxxp://45.12.253[.]107:222/j[.]jpg |