Latrodectus, également connu sous le nom de BlackWidow, a été développé par les mêmes créateurs du malware IcedID, notoirement reconnu sous le nom de LUNAR SPIDER. Les chercheurs de Walmart l’ont découvert pour la première fois en octobre 2023. Ils pensent qu’il remplace le malware IcedID et que les acteurs malveillants comme TA577 et TA578 l’utilisent largement, comme le rapporte Proofpoint.

Il agit comme un chargeur/loader de malware, avec son module initial distribué aux victimes, chargé du téléchargement et de l’installation des étapes ultérieures de la charge virale, ainsi que d’autres familles de malware utilisées ou en prévision d’être utilisées par les acteurs malveillants.

Sur le terrain, Latrodectus a été observé en train d’être distribué via des campagnes de phishing. Au cours de notre analyse, nous avons noté que de nombreux échantillons disponibles sur MalwareBazaar se faisaient passer pour des DLL tierces légitimes, suggérant ainsi qu’ils pouvaient également être distribués via des publicités malveillantes (malvertising) et du SEO Poisoning.

Swachchhanda Shrawan Poudel
Swachchhanda Shrawan Poudel

Security Research

Latrodectus: The Wrath of Black Widow Featured Image
Jump To Section

Modus Operandi

Latrodectus est un malware de chargement sophistiqué principalement distribué dans le cadre de campagnes de phishing. Voici un aperçu global de son fonctionnement :

  1. Infection initiale 
    • Emails de phishing : ce malware est principalement distribué aux cibles via des emails de phishing qui semblent provenir de sources fiables. Latrodectus a été découvert, distribué via des emails de phishing par chaîne de réponse, dans lesquels les acteurs malveillants exploitent des comptes de messagerie volés pour détourner un fil de discussion et envoyer des fichiers malveillants.
  2. Techniques trompeuses :
    • Liens et pièces jointes malveillants: ces emails contiennent des pièces jointes telles que des fichiers PDF ou des liens intégrés vers de faux sites Web qui incitent les utilisateurs à télécharger la charge virale de l'étape suivante. Dans certaines campagnes de phishing, Microsoft Azure et Cloudflare Lures ont été utilisés pour avoir l’air légitimes. Parfois, le fait de cliquer sur un lien vous dirige vers une fausse page captcha. La résolution du captcha déclenche alors le téléchargement d'un fichier JavaScript malveillant.
  3. Distribution de la charge virale :
    • Fichier JavaScript: le fichier JavaScript téléchargé lance le téléchargement et l'installation des principaux composants du malware. Ces fichiers javascript sont fortement obfusqués par de nombreux commentaires inutiles, augmentant apparemment la taille du fichier de script et entravant la capacité des outils automatisés d'analyse de malware.
    • Charges virales supplémentaires : le processus implique le téléchargement de charges virales supplémentaires telles que des fichiers exécutables (EXE) et des bibliothèques de liens dynamiques (DLL) nécessaires au fonctionnement du malware. Le code JavaScript télécharge généralement ces fichiers depuis des serveurs hébergés à distance. Il télécharge notamment un fichier MSI. Lors de l'exécution de la charge virale .msi, un fichier exécutable portable EXE et une DLL sont diffusés, se faisant passer pour des binaires tiers légitimes provenant de sociétés comme Nvidia, Bitdefender et Avast.
  4. Installation d’une backdoor :
    • Accès à distance : une fois installé, Latrodectus agit comme une backdoor, permettant aux attaquants de contrôler le système infecté à distance.
    • Exécution de commandes : le malware peut exécuter des commandes, télécharger davantage de malwares et effectuer d'autres activités malveillantes.
  5. Techniques d'évasion :
    • Latrodectus peut détecter s'il s'exécute dans un environnement sandbox et modifier son comportement pour éviter d'être détecté. Il utilise également le chiffrement RC4 pour ses communications via HTTP, rendant ainsi plus difficile la détection et l'analyse de son trafic par les outils de sécurité.
  6. Dégâts supplémentaires
    • Comme mentionné précédemment, Latrodectus sert de chargeur pour d'autres malwares. Des charges virales malveillantes supplémentaires telles que IcedID, Lumma Stealers et Danabot ont été observées en cours de déploiement via le malware Latrodectus.
Latrodectus Infection Chain

Lactrodectus-Image-00

Chaîne d'infection de Latrodectus

Documents de Phishing

Lors d'une récente campagne du malware Latrodectus, un document de phishing a été déguisé en fichier prétendument transmis via DocuSign et protégé par des mesures de sécurité avancées. Le contenu du document indique qu'il comprend un lien sécurisé vers DocuSign, et la victime doit visiter cette page Web pour obtenir le document réel. Mais en réalité, il télécharge une charge virale pour déclencher la prochaine étape de Latrodectus, qui est un fichier Javascript très obfusqué et inhabituellement volumineux.

Lactrodectus-Image-01

Analyse du fichier Javascript

À première vue, le fichier Javascript semble contenir principalement des commentaires inutiles qui ne fournissent pas d'informations précieuses sur le code. Un obfuscateur a été utilisé pour empêcher les analystes ou les contrôles de sécurité de détecter facilement le contenu malveillant présent dans le fichier.

Lactrodectus-Image-02

En supprimant tous ces commentaires, il ne nous reste que 46 lignes de code.

Lactrodectus-Image-03

En y regardant de plus près, la fonction a() est vide, ce qui est suspect. L'hypothèse est que ce fichier télécharge la charge virale de l'étape suivante à partir d'un serveur distant, mais aucune ligne de ce fichier ne le laisse sous-entendre. Un examen plus approfondi de ces fonctions montre que la fonction r() semble intéressante. Il renvoie une expression courante qui recherche les lignes d'une chaîne contenant précisément quatre barres obliques consécutives (////), c'est-à-dire un double commentaire. Vérifions le contenu original du fichier et recherchons ces barres obliques si nous pouvons trouver du contenu intéressant.

Lactrodectus-Image-04

Il semble qu'une nouvelle fonction soit définie après ces commentaires à quatre barres obliques. Modifions un peu notre regex pour qu'elle corresponde aux lignes qui commencent par exactement deux barres obliques, mais ignorons les lignes qui commencent par plus de deux barres obliques. Cette approche nous donne les lignes manquantes de ce code. Comme on le soupçonnait, il contient la partie vitale du code qui télécharge et exécute la charge virale ultérieure, c'est-à-dire un fichier MSI.

Lactrodectus-Image-05

L’image globale du code est limpide lorsque p(a) est exécuté. Il convertit function(a) en chaîne, signifiant ainsi que le code qui vient d'être récupéré et qui commence par quatre barres obliques va être converti en chaîne littérale. Ensuite, une regex a été utilisée pour extraire ces lignes de code, qui ont été commentées avec quatre barres obliques. Après cela, ces chaînes sont extraites en chaînes uniques et exécutées dynamiquement.

Analyse de l'exécutable MSI

À des fins d'analyse, le fichier MSI a été téléchargé séparément. Un fichier MSI (Microsoft Installer) est un package d'installation Windows qui comprend des fichiers et des instructions pour l'installation du logiciel. Les auteurs du malware exploitent fréquemment les fichiers MSI comme méthode de diffusion en raison de leur fiabilité dans Windows, de leur capacité à regrouper plusieurs fichiers et à automatiser les étapes d'installation avec une implication minimale de l'utilisateur. Malheureusement, les fichiers MSI malveillants peuvent se faire passer pour des logiciels légitimes tout en exécutant des charges virales malveillantes lors de l'installation.

Les fichiers MSI fonctionnent en interne comme des bases de données compactes organisées dans un format de stockage structuré. Les fichiers et les scripts sont prédéfinis d'une manière spécifique dans un fichier de package MSI. Pour extraire le contenu du MSI et examiner les fichiers intégrés, des outils tels que 7-zip peuvent être utilisés.
Lors de l'extraction, la structure de fichier résultante est prédéfinie et contient des tables de base de données. Les fichiers commençant par un point d'exclamation (!) représentent les tables de la base de données.

Lactrodectus-Image-06

De plus, les fichiers extraits incluent d'autres fichiers, tels que des images et des fichiers binaires, sous forme d'exécutables et de fichiers DLL, tels que Binary.viewer.exe et Binary.aicustact.dll. Ces fichiers sont associés au produit « Advanced Installer », un outil conçu pour créer des fichiers MSI personnalisés et développés par Caphyon.

Lactrodectus-Image-07

Le package contient également un fichier CAB nommé disk1.cab, qui comprend un fichier DLL appelé vierm_soft_x64.dll.

Lactrodectus-Image-08

Après une inspection plus approfondie des propriétés de ce fichier DLL, il a été identifié comme une bibliothèque de liens dynamiques (DLL) créée par NVIDIA Corporation. Le nom de fichier d’origine est PhysXCooking64.dll.

Lactrodectus-Image-09

Une recherche rapide sur Virustotal révèle qu'il s'agit d'un fichier malveillant signalé par la plupart des éditeurs comme malveillant.

Lactrodectus-Image-10

Ce fichier tente de se faire passer pour PhysXCooking64.dll légitime créé par Nvidia Corporation. Bien que ses métadonnées correspondent aux fichiers légitimes, une distinction clé est que ce binaire n'est pas signé numériquement.

Lactrodectus-Image-11

Après avoir découvert que le package MSI contenait une DLL malveillante, celui-ci est analysé à l'aide d'Orca, un outil conçu pour éditer et examiner les fichiers MSI, afin d'investiguer ses caractéristiques intrigantes et potentiellement suspectes. Une fois chargé dans Orca, divers détails internes de ce fichier MSI spécifique sont devenus visibles.

Lactrodectus-Image-12

Immédiatement, la table CustomAction est analysée pour examiner le modèle d'exécution de ce fichier MSI.

Lactrodectus-Image-13

En regardant ce tableau, il est clair que lorsque ce fichier MSI spécifique est exécuté, il utilise l'outil Windows rundll32.exe pour charger une DLL nommée "vierm_soft_x64.dll" et invoque une fonction appelée "GetDeepDVCState", qui est exportée par cette DLL.

Lors de l'exécution, Explorer.exe génère deux processus enfants notables : rundll32.exe et msiexec.exe, comme observé dans l'arborescence des processus Logpoint.

Lactrodectus-Image-14

Le processus msiexec.exe est responsable du chargement du fichier MSI malveillant qui avait été précédemment diffusé.

Lactrodectus-Image-15

Cependant, une observation plus critique concerne le processus rundll32.exe, qui exécute le fichier malveillant « vierm_soft_x64.dll » à l'aide de la commande suivante :

Fait intéressant, bien que msiexec.exe soit son processus parent, le processus rundll32.exe semble s'être injecté dans Explorer.exe.

Lactrodectus-Image-16

D'après l'arborescence des processus, il devient évident que rundll32.exe tente de charger "PhysXCooking64.dll", prétendument en provenance de Nvidia Corporation, mais ne dispose pas d'une signature numérique valide. La technique consistant à charger une DLL tout en se faisant passer pour une DLL légitime provenant d'un éditeur connu est une caractéristique du malware Latrodectus.

Lactrodectus-Image-17

Vous trouverez ci-dessous un tableau résumant les détails des DLL distribuées par le malware Latrodectus, déguisées en DLL légitimes provenant d’éditeurs bien connus, ainsi que leurs liens d'analyse VirusTotal respectifs :

File Name Vendor Product Description File Version Signed?
epplib.dll Emsisoft Ltd Emsisoft Protection Platform Emsisoft Protection Platform 2023.11.0.51821 No
NvCamera.dll

NVIDIA Corporation

NVIDIA Camera

Camera control and photo capture

7.1.0.0

No
Model.dll

Sophos Limited

Sophos Anti-Virus

Sophos Anti-Virus ML Model

3.3.0

No
Trusfos.dll

Bitdefender

Bitdefender Antivirus

Trufos API

2.5.4.62.761d05c

No
OEMUninstall.dll

Bitdefender

Bitdefender Security

OEMUninstall Dynamic Link Library

4.0.0.38

No
eppcom64.dll Emsisoft Ltd

Emsisoft Protection Platform

Emsisoft Protection Platform

2018.12.0.1641

No
nvxdsync.exe

NVIDIA Corporation

NVIDIA User Experience Driver Component

NVIDIA User Experience Driver Component

8.17.15.6081

No
overseer.exe

Avast Software

Avast Antivirus

Avast Overseer

1.0.486.0

No
NVPrxy.dll

NVIDIA Corporation

NVIDIA Install Application

NVIDIA Install Proxy

2.1002.418.0

No

Ce processus rundll32 génère un enfant rundll32.exe, qui semble communiquer avec un serveur C&C. Ceci est indiqué par les événements de connexion réseau et les requête DNS visibles dans l’arborescence des processus.

Lactrodectus-Image-18

L'examen des requêtes DNS révèle que le processus tente de résoudre trois domaines spécifiques. Les détails de la requête DNS mettent spécifiquement en évidence ces résolutions de domaine, comme le montre la capture d'écran.

Lactrodectus-Image-19

La vérification de ces domaines dans VirusTotal confirme qu'ils sont tous malveillants, comme le souligne la capture d'écran.

Lactrodectus-Image-20

En ce qui concerne le fonctionnement du réseau, ce processus implique d'établir des communications dédiées avec deux adresses IP différentes sur le port 8041. Il existe environ 1 000 connexions réseau depuis notre machine virtuelle, associée à 192.168.1.5, vers le serveur C&C malveillant affichant 80[.]78[.]24 [.]30 et 82[.]115[.]223[.]39.

Lactrodectus-Image-21

Un graphique à histogramme empilé de Logpoint SIEM peut être utilisé pour visualiser et analyser les données des séries chronologiques liées à cette connexion réseau.

Lactrodectus-Image-22

Stratégie de détection avec Logpoint SIEM

Lors de notre analyse du fichier malveillant Latrodectus, nous avons identifié plusieurs comportements pouvant être utilisés pour créer des règles de détection dans Logpoint à des fins d'alerte. Cette section décrit nos stratégies pour détecter les différentes activités suspectes associées au malware Latrodectus.

Il est essentiel d'activer une journalisation spécifique dans les systèmes endpoint pour faciliter la détection. Cela générera la télémétrie nécessaire pour une détection et une chasse aux menaces efficaces. Vous trouverez ci-dessous une liste de télémétrie nécessaire à notre stratégie de détection :

  1. Windows
    • Activez la création de processus avec un audit en ligne de commande.
  2. Windows Sysmon

Exécution potentielle du Script Dropper via un interpréteur de script

Nous rencontrons souvent des adversaires utilisant les utilitaires scrinterpreter de Windows tels que wscript.exe ou cscript.exe pour exécuter des scripts malveillants au niveau des répertoires utilisateur dans le cadre de vecteurs d'attaque de malware. Dans ce cas, le malware Latrodectus commence ses opérations avec un fichier JavaScript téléchargé à partir d'un email de phishing. Lorsque l'utilisateur clique sur la pièce jointe, le dropper est exécuté via wscript.exe ou cscript.exe.

Cette technique permet aux attaquants d'exploiter des processus Windows légitimes pour exécuter du code non fiable, les aidant ainsi à contourner les contrôles de sécurité. La mise en œuvre d'une logique de détection pour identifier les exécutions wscript/cscript de scripts à partir des répertoires utilisateur peut aider à identifier les menaces potentielles. Cependant, cette approche nécessitera probablement un réglage minutieux et l’exclusion des logiciels légitimes afin de minimiser les faux positifs. La surveillance d’un tel comportement pourrait fournir des indicateurs précoces de compromission.

Connexion réseau sortante de l'interpréteur de script

Dans l'exemple suivant, le fichier js se connecte à un domaine malveillant externe pour télécharger la charge virale suivante. Ainsi, examiner les signes indiquant que l’interpréteur de script établit une connexion réseau sortante vers des adresses publiques est également une bonne idée. Nous avons observé que cela générait des faux positifs en raison de services ou de logiciels légitimes sur les systèmes professionnels des entreprises. Veuillez ajouter l'exclusion suivante pour ce logiciel :

Rundll32 établit des connexions réseau

Nous observons fréquemment des attaquants abusant de rundll32.exe pour se fondre dans le système et établir des connexions sortantes vers des serveurs command & control (C&C). En tirant parti des techniques « living off the land», le malware utilise des processus système légitimes pour échapper à la détection. Compte tenu de cela, et en fonction de la nature de votre environnement, le développement d'une logique de détection qui surveille rundll32.exe et l'initiation de connexions sortantes vers des adresses IP externes sur des ports spécifiques peuvent aider à découvrir des activités malveillantes ou suspectes. Cependant, il est important de noter que des ajustements et des exclusions peuvent être nécessaires pour éviter les faux positifs provenant de logiciels légitimes.

Lactrodectus-Image-23

Rundll32 charge des DLL non signées

Les adversaires abusent fréquemment des utilitaires Windows tels que rundll32.exe pour charger des DLL non signées ou non fiables, leur permettant ainsi de lancer l'exécution de code malveillant en mode proxy. Dans le cas du malware Latrodectus, les attaquants vont plus loin en déguisant leurs DLL malveillantes en DLL légitimes, puis en manipulant les métadonnées lors de la compilation pour imiter des éditeurs bien connus. Cependant, ces DLL nécessitent des signatures numériques valides, compromettant ainsi leur tentative pour avoir l’air légitimes. Cette absence de signature valide constitue un point de détection crucial, permettant ainsi aux défenseurs d'identifier et de signaler ces fichiers malveillants malgré les efforts déployés pour échapper à la détection. Les défenseurs peuvent surveiller l'événement de chargement d'image rundll32, où il tente de charger des DLL non signées.

Lactrodectus-Image-24

Explorer.exe génère Rundll32.exe

Il est rare qu’explorer.exe lance rundll32.exe en tant que processus enfant dans des conditions typiques. Généralement, rundll32.exe exécute le code à partir de fichiers DLL et est fréquemment sollicité par d'autres processus, tels que cmd.exe ou powershell.exe, pour des tâches légitimes.
Cependant, Latrodectus a injecté le processus malveillant rundll32.exe dans explorer.exe. Si vous observez explorer.exe générer fréquemment rundll32.exe, mener une enquête approfondie est une bonne idée pour exclure toute activité malveillante potentielle.

Conclusion

Latrodectus constitue une menace importante en raison de ses liens avec des acteurs malveillants de premier plan. Il peut télécharger des charges virales de malware supplémentaires et échapper aux méthodes de détection traditionnelles, le rendant ainsi particulièrement dangereux. En utilisant des techniques de phishing et living-off-the-land, il peut fonctionner sans être détecté tout en compromettant les systèmes. Pour lutter contre cette menace, les stratégies de détection mentionnées ci-dessus peuvent être mises en œuvre dans Logpoint SIEM, qui offre des informations précieuses sur le comportement de ce malware et contribue à atténuer son impact.