S'enregistre en tant que «Moniteur d'impression par défaut», mais c'est un téléchargeur malveillant. Rencontrez DePriMon – Bien choisir son serveur d impression

Author: Titanfall —

Short summary: Les chercheurs d'ESET ont découvert un nouveau téléchargeur avec un roman, jamais vu auparavant dans la technique d'installation sauvage DePriMon est un téléchargeur malveillant qui comporte plusieurs étapes et qui utilise de nombreuses techniques non traditionnelles. Pour assurer la persistance, le logiciel malveillant enregistre un nouveau moniteur de port local – une astuce relevant de […]

Quick overview

Site
Tutos GameServer
Canonical URL
https://tutos-gameserver.fr/2019/11/25/senregistre-en-tant-que-moniteur-dimpression-par-defaut-mais-cest-un-telechargeur-malveillant-rencontrez-deprimon-bien-choisir-son-serveur-d-impression/
LLM HTML version
https://tutos-gameserver.fr/2019/11/25/senregistre-en-tant-que-moniteur-dimpression-par-defaut-mais-cest-un-telechargeur-malveillant-rencontrez-deprimon-bien-choisir-son-serveur-d-impression/llm
LLM JSON version
https://tutos-gameserver.fr/2019/11/25/senregistre-en-tant-que-moniteur-dimpression-par-defaut-mais-cest-un-telechargeur-malveillant-rencontrez-deprimon-bien-choisir-son-serveur-d-impression/llm.json
Manifest
https://tutos-gameserver.fr/llm-endpoints-manifest.json
Estimated reading time
12 minutes (699 seconds)
Word count
2327

Key points

Primary visual

S'enregistre en tant que «Moniteur d'impression par défaut», mais c'est un téléchargeur malveillant. Rencontrez DePriMon

 – Bien choisir son serveur d impression
Main illustration associated with the content.

Structured content

Les chercheurs d'ESET ont découvert un nouveau téléchargeur avec un roman, jamais vu auparavant dans la technique d'installation sauvage

DePriMon est un téléchargeur malveillant qui comporte plusieurs étapes et qui utilise de nombreuses techniques non traditionnelles. Pour assurer la persistance, le logiciel malveillant enregistre un nouveau moniteur de port local – une astuce relevant de la technique «Moniteurs de port» de la base de connaissances MITRE ATT & CK. Pour cela, le logiciel malveillant utilise le nom «Moniteur d'impression par défaut de Windows»; c’est pourquoi nous l’avons nommé DePriMon. En raison de sa complexité et de son architecture modulaire, nous le considérons comme un framework. Selon notre télémétrie, DePriMon est actif depuis mars 2017 au moins. DePriMon a été détecté dans une entreprise privée basée en Europe centrale et dans des dizaines d'ordinateurs au Moyen-Orient. Certains des noms de domaine utilisés en tant que serveurs C & C contiennent des mots arabes, qui donnent une indication sur une campagne spécifique à une région. Cependant, DePriMon mérite une attention au-delà de la distribution géographique de ses cibles: il s’agit d’un malware soigneusement écrit, avec beaucoup de cryptage qui est utilisé correctement. Pour aider les défenseurs à se protéger de cette menace, nous avons analysé en détail ce logiciel malveillant récemment découvert, en nous concentrant sur le téléchargeur lui-même. Comme nous manquons d’étapes initiales, que nous appellerons ici «la première étape», nous ne connaissons pas la distribution initiale ni le vecteur de compromis. Le type de charge utile finale utilisé dans les attaques est une autre question à laquelle il reste à répondre. Toutefois, il convient de noter que, dans quelques cas, DePriMon a été détecté avec un logiciel malveillant ColoredLambert sur les mêmes ordinateurs dans un délai très court. ColoredLambert est utilisé par le groupe de cyberespionage Lamberts (aussi appelé Longhorn) et est lié à la fuite des capacités de la CIA dans Vault 7. Nos collègues de Symantec et de Kaspersky ont publié leurs analyses en avril 2017. Analyse technique Deuxième étape Les deuxième et troisième étapes de DePriMon sont livrées sur le disque de la victime lors de la première étape. La deuxième étape s’installe et charge la troisième étape à l’aide d’un chemin chiffré et codé en dur. L'une des explications possibles est qu'il a été configuré après la première étape de l'attaque. La technique d'installation décrite est unique. En principe, il est décrit dans la taxonomie de MITRE ATT & CK en tant que «contrôleurs de port», sous les tactiques de persistance et d’escalade de privilèges. Nous pensons que DePriMon est le premier exemple de malware utilisant cette technique jamais décrite publiquement. La deuxième étape enregistre la DLL de troisième étape en tant que moniteur de port en créant la clé de registre et la valeur suivantes: HKLM SYSTEM CurrentControlSet Control Print Moniteurs Moniteur d'impression par défaut WindowsPilote =% PathToThirdStageDLL% Des droits d'administrateur sont requis pour créer cette clé de registre. Au démarrage du système, la DLL enregistrée sera chargée par spoolsv.exe avec SYSTÈME les privilèges, qui, combinés avec le caractère unique de cette méthode, rendent cette technique très efficace pour les attaquants. La deuxième étape vérifie régulièrement s’il existe un fichier dans % system32% dossier portant le même nom que le fichier DLL du troisième étage mais sans l’extension «.dll». Ce fichier sert de déclencheur de désinstallation. Si DePriMon le trouve, il supprime à la fois ce fichier et ses propres composants de manière sécurisée en écrasant les fichiers binaires, puis en les supprimant. Étape trois La troisième étape, chargée de télécharger la ou les principales charges utiles des opérateurs de DePriMon, met également en œuvre des techniques intéressantes. Pour les communications C & C, il utilise l'implémentation Microsoft de SSL / TLS, Secure Channel, à la place des API communes telles que WinHTTP ou WinInet. Sa configuration est très complexe, de même que la façon dont le logiciel malveillant le gère. Enfin, les auteurs ont déployé des efforts considérables en matière de cryptage, rendant le logiciel malveillant DePriMon plus difficile à analyser. Communication C & C DePriMon communique en toute sécurité via TLS, mais pas à un niveau élevé comme dans le cas typique des programmes malveillants. La connexion est initialisée avec un socket Windows et peut continuer avec l'initialisation d'une session SSPI (Security Support Provider Interface) authentifiée avec le SSP Negotiate / NTLM. Après cela, DePriMon utilise Schannel. SSPI est utilisé / non utilisé en fonction d'un indicateur particulier dans le fichier de configuration et peut utiliser les paramètres de proxy locaux de la machine. L'implémentation est similaire à cet exemple fourni par Microsoft. L’implémentation de TLS via Malware via Schannel est semblable à cet exemple de Coast Research & Development. Cela inclut la création d'informations d'identification, la prise de contact du client et la vérification du certificat de serveur.

Figure 1. Partie de l'implémentation SSPI générée par le décompilateur Hex-Rays

Une fois la communication établie, la troisième étape chiffre et déchiffre les messages manuellement à chaque fois. Configuration Les données de configuration pour la troisième étape de DePriMon ont 27 membres, ce qui est un nombre inhabituellement élevé pour un téléchargeur. Il est crypté avec AES-256 et incorporé dans le binaire. Lors de la première exécution, la troisième étape de DePriMon (le programme de téléchargement lui-même) décrypte les données de configuration avec la clé 2 (voir la section IoC), les chiffre avec la clé 3 et stocke le fichier de configuration crypté dans un dossier temporaire. Le nom de fichier du fichier de configuration est créé selon le processus suivant: À partir du deuxième octet, la valeur de la clé 2 est transformée en un nombre en base 36 mais codé à l'aide de l'alphabet personnalisé «abc… xyz012… 789». L'extension du fichier de configuration est «.tmp». Un exemple de chemin de fichier de configuration: % temp% rb1us0wm99sslpa1vx.tmp. Lors de la deuxième exécution, le programme de téléchargement lit les données de configuration dans le fichier, et non à partir de lui-même. Ainsi, l'attaquant peut facilement mettre à jour la configuration. Grâce à sa conception sécurisée, la configuration n'est pas laissée en mémoire sous forme non chiffrée. Chaque fois que le téléchargeur doit utiliser un élément du fichier de configuration, il déchiffre le fichier de configuration, récupère le membre et le chiffre à nouveau. Cette conception protège la fonction principale du malware, la communication C & C, contre les analyses de mémoire.

Figure 2. Partie du code visible par le décompilateur Hex-Rays, qui illustre comment le programme malveillant DePriMon décrypte le fichier de configuration, enregistre quelques membres dans des variables locales et le chiffre à nouveau.

Le fichier de configuration présente un intérêt particulier:

Deux entrées pour les noms d'utilisateur et deux membres pour les mots de passe – pour le serveur proxy s'il est défini sur la machine. Cela signifie que les attaquants se préparent à poursuivre leur attaque via un proxy avec des informations d'identification. Cependant, nous n’avons pas vu de fonctionnalité permettant de voler ces détails, il semble donc que cela se fasse dans une autre phase de l’attaque. Trois entrées pour trois serveurs C & C, chacun utilisé à une occasion différente. Trois entrées pour trois ports, chacun utilisé à une autre occasion. Indicateurs indiquant si le téléchargeur initialise une connexion via SSPI (Security Support Provider Interface) avec un proxy possible ou uniquement avec un socket (décrit plus loin).

Il convient de noter qu’outre les serveurs C & C extraits d’exemples de logiciels malveillants, nous avons identifié des domaines et des serveurs supplémentaires susceptibles d’être associés à ce logiciel malveillant. Cryptage Le logiciel malveillant utilise l'algorithme de chiffrement AES avec trois clés différentes de 256 bits à des fins différentes (ces clés sont répertoriées dans la section IoC).

Clé 1: pour le décryptage de diverses chaînes sensibles dans le malware. Clé 2: Pour le cryptage et le décryptage des données de configuration en mémoire (comme décrit précédemment). Cette clé est également utilisée pour générer la troisième clé. Clé 3: Pour le cryptage et le décryptage du fichier de configuration sur le disque.

Cette clé n'est pas codée en dur, mais dérivée à l'aide d'un tableau de 32 octets qui est ensuite chiffré. Le tableau est généré comme suit: les 4 premiers octets sont le numéro de série du volume du lecteur système et les 28 octets restants contiennent les valeurs 5 à 32. Ce tableau est chiffré avec la clé 2, ce qui donne la clé 3. Conclusion DePriMon est un téléchargeur exceptionnellement avancé dont les développeurs ont déployé des efforts supplémentaires pour configurer l’architecture et concevoir les composants critiques. DePriMon est téléchargé en mémoire et exécuté directement à partir de celui-ci en tant que DLL à l'aide de la technique de chargement des DLL par réflexion. Il n'est jamais stocké sur le disque. Il possède un fichier de configuration étonnamment volumineux avec plusieurs éléments intéressants, son cryptage est correctement implémenté et protège efficacement la communication C & C. DePriMon est donc un outil puissant, flexible et persistant conçu pour télécharger et exécuter une charge utile, ainsi que pour collecter des informations de base sur le système et ses utilisateurs. Indicateurs de compromis (IoC) Noms de détection ESET Win32 / DePriMonWin64 / DePriMon SHA-1 hashes 02B38F6E8B54885FA967851A5580F61C14A0AAB603E047DD4CECB16F513C44599BF9B8BA82D0B7CB0996C280AB704E95C9043C5A250CCE077DF9C8B215EBE328A501B1D603E66762FBB4583D73E109F71911F6E8B05E38A3C994048C759C5EA2B95CE5F72B30BE3F39DEF1F404264D8858B89769E6C032D92D80B235CDF41E09D055DD1B01FD690E13BE0AC76DB79671A3F31F7A9BB870151792A56276619DC16FAB7AA0479D41700981983A39F962F28CCFBE297D0B08654B47329AD6AE44B8FF158105EA736BC37E8A7273C5A0D49DFE6DA04FEF963E30D52588148B4F3A06BA41F859E4CC394985BB788D5F76C85C94C0BE25077D9A76F14A63CBF7A774A96E8006B8968B52550062848A717027C512AFEDED19254F589C4BADE47865E8111DD3EEE6C5C4BC83F2489F5BAA59CB6715CFFF545579861E5E77308F6CAEAC36C2388C2B2ED6063EACBA8A4021CE32EB0929FAD2CA34050771678C65040065822729F44B35C87B0CD38045B42C7E87C199993AB929AD92ADE4F82398E272FDA0E9BA1A1B8EF444FF5F2E8EE419746384E2D39E290201010F49652EE6116FD9B35C9AD882F413EEE3CFD85A60D7AFC4D4ECC4445BB1F0B8BC Domaines

Domaine adresse IP

img.dealscienters[.]net 138.59.32.72

teknikgorus[.]com 88.119.179.17

wnupdnew[.]com 190.0.226.147

babmaftuh[.]com 185.56.89.196

Alwatantrade[.]com 188.241.60.109

Shayalyawm[.]com 5.226.168.124

elehenishing[.]com 185.225.17.77

almawaddrial[.]com 46.151.212.202

Mdeastserv[.]com 46.151.212.201

Clés – exemple Clé 1: C097CF17DC3303BC8155534350464E50176ACA63842B0973831D8C6C8F136817Clé 2: 8D35913F80A23E820C23B3125ABF57901BC9A7B83283FB2B240193ABDEDE52B9Touche 3: dérivée comme décrit précédemment. Noms de fichiers dpnvmrs.dllhp3mlnv.dllhp4mlnv.dllhp5nhd.dllhp6nhd.dllhpjdnb64.dllhpmdnel3b.dllifssvc.dllifssvcmgr.dllmsprtmon64.dllmsptromn.dllplamgr.dllppcrlchk.dllppcrlupd.dllprntapt.dllprntqdl64.dllpscript6f.dllpscript6s.dllshprn64.dllstprn32.dllwinmnprt.dll Techniques MITRE ATT & CK

Tactique ID prénom La description

Persistance T1013 Moniteurs de port DePriMon installe l'un de ses composants en tant que moniteur de port pour assurer la persistance.

Défense Evasion T1036 Mascarade DePriMon place ses composants dans le dossier System32 avec des noms imitant les DLL système courantes.

T1107 Suppression de fichier DePriMon peut se supprimer en toute sécurité en écrasant ses fichiers avec des données aléatoires, puis en les supprimant.

T1112 Modifier le registre DePriMon ajoute une entrée de registre dans HKLM SYSTEM CurrentControlSet Control Print Monitors pour atteindre la persistance.

T1134 Manipulation de jetons d'accès DePriMon obtient un jeton utilisateur pour obtenir des informations sur les paramètres de proxy sur la machine.

T1140 Désobfuscation / décodage de fichiers ou d'informations DePriMon chiffre certaines de ses chaînes et son fichier de configuration en utilisant AES-256.

Découverte T1007 Découverte du service système DePriMon peut répertorier les services enregistrés sur le système.

T1057 Découverte de processus DePriMon peut répertorier les processus en cours d'exécution sur le système.

T1082 Découverte d'informations système DePriMon collecte diverses informations sur le système.

T1124 Découverte de l'heure du système DePriMon vérifie régulièrement l'heure du système et effectue diverses actions, telles que la désinstallation.

Commander et contrôler T1043 Port couramment utilisé DePriMon utilise les ports 443 et 8080 pour la communication C & C.

T1071 Protocole de couche d'application standard DePriMon utilise HTTP pour la communication C & C.

T1090 Proxy de connexion DePriMon utilise les paramètres de proxy locaux pour rendre ses communications moins suspectes.

ESET Recherche 21 novembre 2019 – 11h30

Click to rate this post! [Total: 0 Average: 0]

Topics and keywords

Themes: Serveur d'impression

License & attribution

License: CC BY-ND 4.0.

Attribution required: yes.

Manifest: https://tutos-gameserver.fr/llm-endpoints-manifest.json

LLM Endpoints plugin version 1.1.2.