La campagne de cheval de Troie bancaire Ursnif passe au niveau supérieur avec de nouvelles techniques d’évitement des sandbox...

Share with your network!

Cette semaine chez Proofpoint, des chercheurs ont observé plusieurs changements notables dans les macros utilisées par un auteur que nous appelons TA530, à propos duquel nous avions déjà investigué en ce qui concerne les campagnes malveillantes personnalisées à grande échelle [4][5]. Cette nouvelle campagne inclut de nouvelles macros de contournement et démontre l'évolution continue de leurs outils et techniques, particulièrement l'adaptation des attaquants au progrès des défenses et à la généralisation des sandbox.

Auparavant, nous décrivions comment la macro recherche l’adresse IP publique de l’ordinateur infecté dans la pièce jointe au document à l’aide de MaxMind [3] et vérifie le nombre de fichiers Microsoft Word récemment consultés. Le 19 septembre, nous avons observé plusieurs ajouts à ces contrôles d'évitement des sandbox. Lors de ces contrôles, la macro :

  1. Vérifie si le nom de fichier contient uniquement des caractères hexadécimaux devant son extension
  2. Veille à ce qu’il y ait au moins 50 processus en exécution avec une interface graphique via la propriété Application.Tasks.Count [1]
  3. Comprend une liste noire de processus via la propriété Application.Tasks [2]
  4. Élargit la liste de chaînes qu'elle vérifie à l’aide de MaxMind

Un autre changement notable est l’utilisation d’un contrôle Painted Event [3] observé sous forme de Img_Painted pour l’exécution de la macro, lorsque le document est ouvert. Il s’agit d’un contrôle ActiveX sous les grandes options « Microsoft Inkpicture Control ».  Cette méthode se distingue des options autorun habituelles pour l’exécution de la macro sous forme de méthode Document_Open(). À la fin août, Joe Security a décri une macro similaire à l’aide d’une technique très proche.

Campagne d’e-mails

Ne changeant rien à son comportement habituel [2], le 19 septembre, TA530 a envoyé des messages personnalisés (Figure 1) en exploitant des noms de sociétés, de personnes, des fonctions, etc., pour livrer les documents Word (Figure 2). Ces documents servent d'appâts, de manière assez générique mais commune, pour inciter l’utilisateur à activer les macros grâce au message, « Ce document est protégé contre toute utilisation non autorisée. Pour lire son contenu, activez l'édition. » Dans cette campagne, la charge utile livrée est Ursnif ID « 30030 », qui cible les sites des banques australiennes avec ses injections [6].

fig-1_1.png

Figure 1 : E-mail transmetant le document malveillant

fig-2_0.png

Figure 2 : Document malveillant contenant des macros

Analyse des macros

Le premier de la série des nouveaux contrôles des macros examine le nom du fichier Microsoft Word lui-même. Il vérifie si ce nom de fichier contient uniquement des caractères hexadécimaux (« 0123456789ABCDEFabcdef ») devant son extension. Dans l’affirmative, la macro ne cherche pas à infecter la victime. Il s’agit d’un phénomène courant avec les fichiers soumis aux sandbox, qui utilisent souvent le hachage SHA256 ou MD5 comme nom de fichier, contennant uniquement des caractères hexadécimaux. Si d'autres caractères sont présents, tels que des lettres après le « f », des traits de soulignement ou des espaces, cette vérification réussit et la macro continue. En outre, les noms de fichier doivent avoir un «.», suivi de n’importe quelle extension.

fig-3_1.png

Figure 3 : Recherche des caractères hexadécimaux dans le nom de fichier

La deuxième nouvelle vérification s'assure qu’il y a 50 processus ou plus en cours d’exécution avec une interface graphique via la propriété Microsoft Word Application.Tasks.Count [1]. Une vérification rapide d’un système réel montre qu’il est fréquent d’avoir plus de 50 tâches, tandis que les systèmes de sandbox sont optimisés pour en avoir aussi peu que possible.

fig-4_0.png

Figure 4 : Recherche du nombre de processus en exécution

La macro vérifie ensuite, sans tenir compte de la casse, la liste noire des processus susceptibles d'être en cours d’exécution sur le système hôte, à l’aide de la propriété Application.Tasks de Microsoft Word [2]. Les processus en liste noire incluent actuellement des outils d’analyse et d’autres processus communs qui peuvent être détectés en cours d’exécution dans un environnement de sandbox : "fiddler", "vxstream", "vbox", "tcpview", "vmware", "process explorer", "vmtools", "autoit", "wireshark", "visual basic" et "process monitor".

fig-5_0.png

Figure 5 : Vérification par rapport à la liste noire de processus

Dans notre précédente publication, nous avons démontré que cette macro interroge MaxMind, un service de géolocalisation bien connu, et vérifie les résultats renvoyés par ce service. Cette campagne cible l'Australie, donc la macro mise à jour s’appuie sur une vérification pour s’assurer qu'elle s'exécute dans la région correcte. Plus précisément, elle vérifie que les résultats incluent « Océanie », région comprenant les îles de l’océan Pacifique et l’Australie.

fig-6_0.png

Figure 6 : Requête à MaxMind pour voir si la chaîne « OCEANIA » est renvoyée

Enfin, les résultats de la requête à MaxMind sont comparés (sans tenir compte de la casse) à une liste élargie des réseaux sur liste noire. Si le résultat de MaxMind indique que ce document est ouvert sur un réseau appartenant à l’un de ces fournisseurs, la machine n’est pas infectée. Logiquement, de nombreux fournisseurs de sécurité sont inclus dans cette liste, mais il est intéressant de noter que les réseaux appartenant aux domaines « hôpital », « université », « école », « science », « armée », « anciens combattants », « gouvernement » et « nucléaire » sont également épargnés par l'infection. Nous ne pouvons pas être certains des raisons exactes, mais il est plausible qu’il s’agisse d’une tentative de minimiser l’exposition aux chercheurs et militaires ou aux agences gouvernementales.

fig-7_0.png

Figure 7 : Liste noire des entités réseau

Conclusion

TA530, l’auteur d'un certain nombre d’attaques personnalisées à grande échelle, continue d'élaborer de nouvelles techniques de fraude dans les macros malveillantes des campagnes récentes. Les dernières techniques que nous avons observées portent principalement sur la prévention de l’exécution dans les systèmes de sandbox, la géolocalisation et l'évitement des réseaux associés aux fournisseurs de sécurité (ainsi qu'aux institutions universitaires, médicales et gouvernementales). Au cours de ces dernières années, les sandbox de malware ont été largement déployés dans les organismes et les entreprises pour protéger leurs données et leurs utilisateurs. Comme le montrent les exemples de cette analyse, les auteurs des menaces concentrent leurs recherches et leurs innovations sur l’évitement des sandbox de malware dans le but de garder une longueur d'avance sur les défenses de leurs victimes.

Indicateurs de compromission (IOC)

IOC

Type d'IOC

Description

6464cf93832a5188d102cce498b4f3be0525ea1b080fec9c4e12fae912984057

SHA256

Pièce jointe au document

hxxp://deekayallday[.]com/data/office

URL

Charge utile téléchargée

0b05fb5b97bfc3c82f46b8259a88ae656b1ad294e4c1324d8e8ffd59219005ac

SHA256

Chargeur Ursnif/Dreambot (téléchargé par le doc)

hxxp://62.138.9[.]11/30030u

URL

Mise à jour Ursnif

hxxp://62.138.9[.]11/vnc32.dll

URL

Ursnif VNC

hxxp://62.138.9[.]11/vnc64.dll

URL

Ursnif VNC

62.138.9[.]9

IP

Ursnif Loader C2

62.75.195[.]103

IP

Ursnif C2

62.75.195[.]117

IP

Ursnif C2

ca-tda[.]com

Domaine

Ursnif Webinjects C2

au-tdc[.]com

Domaine

Ursnif Webinjects C2

au-tda[.]com

Domaine

Ursnif Webinjects C2

109.236.87[.]82:443

IP

Ursnif Socks

Références :

[1]https://msdn.microsoft.com/en-us/library/office/ff198203.aspx
[2]https://msdn.microsoft.com/en-us/library/office/ff839740.aspx
[3]https://msdn.microsoft.com/en-us/library/aa510893.aspx
[4]https://www.proofpoint.com/us/threat-insight/post/phish-scales-malicious-actor-target-execs
[5]https://www.proofpoint.com/us/threat-insight/post/malicious-macros-add-to-sandbox-evasion-techniques-to-distribute-new-dridex
[6]https://www.proofpoint.com/us/threat-insight/post/ursnif-variant-dreambot-adds-tor-functionality