Recherche de problème : Exploitation de la Plateforme de résolution des problèmes Windows (WTP) pour la propagation de logiciels malveillants

Share with your network!

Présentation

les chercheurs de Proofpoint ont démasqué une nouvelle technique de propagation par les pièces jointes. Dans la campagne observée, les auteurs de l'attaque détournent une fonction de Windows intitulée Plateforme de résolution des problèmes Windows (WTP, Windows Troubleshooting Platform), destinée à résoudre les problèmes, pour inciter les destinataires à exécuter un logiciel malveillant par piratage psychologique.

L'attaque s'avère particulièrement redoutable puisque l'exécution de WTP ne s'accompagne d'aucun avertissement de sécurité et que les utilisateurs ont l'habitude d'exécuter cet utilitaire de résolution des problèmes lorsqu'il s'affiche dans Windows. Dans ce cas toutefois, son exécution entraîne l'installation du code de LatentBot [4], bot (ou robot) modulaire bien connu, utilisé pour la surveillance, le vol d'informations et l'accès à distance.

Figure 1 : Diagramme de la Plateforme de résolution des problèmes Windows (WTP) [5]

Analyse

Le document-leurre arrive dans ce cas sous forme de pièce jointe à un courrier électronique, bien que cette méthode soit exploitable avec n'importe quelle technique de propagation de documents malveillants. Lorsque l'utilisateur ouvre le fichier, le document qui s'affiche est en réalité un leurre qui l'invite à « double-cliquer pour détecter automatiquement le jeu de caractères ». S'il suit ces instructions, le destinataire ouvre alors un objet OLE incorporé. Cet objet est un fichier DIAGCAB signé numériquement, c'est-à-dire qu'il porte porte l'extension des packages de résolution des problèmes Windows [1][2][3]. À l'ouverture de ce package, une autre fenêtre également très convaincante est présentée à l'utilisateur (Figure 2). Lorsque l'utilisateur clique sur « Suivant » dans cette boîte de dialogue, l'application lance les scripts associés au package de dépannage. Dans ce cas, l'exécution d'une commande PowerShell télécharge et lance la charge utile malveillante.

Figure 2 : Document leurre ; piratage psychologique employé pour amener l'utilisateur à double-cliquer sur le lien et lancer à son insu l'objet OLE

Figure 3 : Package de résolution des problèmes, signé par du code ; notez que l'éditeur indiqué sur le certificat n'était pas impliqué, mais qu'un certificat valide compromis a été utilisé pour propager cette attaque.

Figure 4 : Le Package de résolution des problèmes télécharge la charge utile du logiciel malveillant en arrière-plan, à l'insu de l'utilisateur, par le biais d'un script PowerShell.

Comme le montrent les Figures 3 et 4, le package de dépannage permet de personnaliser l'apparence de la boîte de dialogue, et les actions et les scripts qu'elle exécute via la mise en forme XML. Par exemple, le formatage XML définit le titre de la boîte de dialogue sur « Détection d'encodage » et désigne « l'utilitaire de résolution des problèmes » en tant que script PowerShell « TS_1.ps1 » contenant les instructions suivantes :

Figure 5 : Package de diagnostic référençant un fichier PowerShell malveillant en tant que script

Le script PowerShell qui télécharge la charge utile dans cette campagne est illustré à la Figure 6 :

Figure 6 : Commande PowerShell utilisée pour télécharger la charge utile

Cette méthode d'exécution de logiciel malveillant échappe aux observations de la plupart des produits de sandbox existants, car l'activité malveillante a lieu à l'extérieur du binaire msdt.exe chargeant le fichier .diagcab.  Cela reflète la tendance actuelle des auteurs de logiciels malveillants à rechercher de nouvelles méthodes d'évitement du sandbox en utilisant un flux d'exécution non standard et non basé sur COM. WMI, l'interopérabilité Office, le Service de transfert intelligent en arrière-plan et le Planificateur de tâches étaient déjà des exemples de telles méthodes.  Dans cet exemple, via la création d'un objet COM IScriptedDiagnosticHost dans msdt.exe, le service DcomLaunch démarre l'hôte des diagnostics scriptés (sdiagnhost.exe) qui lancera à son tour les commandes shell et PowerShell illustrées ci-dessus.

Dans ce cas, la charge utile est une porte dérobée modulaire appelée LatentBot [4], analysée en détail par FireEye fin 2015. Lors de notre analyse, nous avons constaté le chargement des plugins de bot suivants, en vue de l'exfiltration et de l'accès à distance :

  • Bot_Engine
  • remote_desktop_service
  • send_report
  • security
  • vnc_hide_desktop

Conclusion

Les auteurs d'attaques continuent de rechercher de nouvelles manières d'exploiter les fonctionnalités Microsoft Windows intégrées afin d'échapper à la vigilance de leurs victimes et de les convaincre d'exécuter leurs charges utiles malveillantes. Dans ce cas, ils présentent une apparence de style « Windows » très familière, capable de leurrer les utilisateurs les plus expérimentés. Cette technique utilise par ailleurs une chaîne d'exécution inhabituelle qui échappe à l'observation de la plupart des produits de sandbox et rend toute détection bien plus difficile.

Références :

  1. https://msdn.microsoft.com/en-us/library/windows/desktop/dd323778(v=vs.85).aspx
  2. https://msdn.microsoft.com/en-us/library/windows/desktop/dd323712(v=vs.85).aspx
  3. https://msdn.microsoft.com/en-us/library/windows/desktop/dd323781(v=vs.85).aspx
  4. https://www.fireeye.com/blog/threat-research/2015/12/latentbot_trace_me.html
  5. https://msdn.microsoft.com/en-us/library/windows/desktop/dd323706(v=vs.85).aspx

Indicateurs de compromission (IOC)

IOC

Type d'IOC

Description

5cb5cfaec916d00dee34eb1b940f99a1a132307efea3a6315c81c82cf7844c91

SHA256

Document

0c3378468fecaf7885f15be0aed9b3a369d4aa66a0b0600c4362defa6997061d

SHA256

Document

ad15caf6071c5da93233a13806077ac82a5f9217d58cc2f3e08338574f5e79af

SHA256

Document

ec079e8946d1109395f230220d5cf9fcb93f98052edfe4eb11fe0da952843653

SHA256

Document

aadaf09aabd2825feb493320b2a1989e776f7dd5aa9f0e3680911bdf0a2cf4c1

SHA256

Document

hxxp://mnmassagetherapy[.]com/wp-content/uploads/2016/04/88th0310_nw.exe

URL

URL de la charge utile

hxxp://vipfarma[.]ru/images/tab/vip_upd/like/zlib.exe

URL

URL de la charge utile

hxxp://mnmassagetherapy[.]com/wp-content/uploads/2016/04/lib.exe'

URL

URL de la charge utile

b8561613832dce2f24b39dedeae3d66d4269f8ca0e8f490a64a1901303b77fcd

SHA256

LatentBot

89.35.178[.]112

IP

LatentBot C2

2021697 : Demande de téléchargement du fichier ET TROJAN EXE vers le dossier Wordpress probablement malveillant Signatures ET susceptibles de se déclencher sur un tel trafic :

2022239 : Demande de téléchargement du fichier ET TROJAN EXE vers le dossier Wordpress probablement malveillant
2019714 : Bref utilitaire de téléchargement alphanumérique ET CURRENT_EVENTS exécutable, très probablement malveillant
2020821 : ET TROJAN Win32/Hyteod CnC Beacon
2814214 : Téléchargement du module ETPRO TROJAN GrayBird
2814213 : Enregistrement C&C du TROJAN ETPRO GrayBird
2821712 : Enregistrement POST HTTP du TROJAN ETPRO LatentBot
2013926 : Trafic ET POLICY HTTP sur le port 443 (POST)

Règles ClamAV 0.99

Propre au DiagCab #OleNative
MiscreantPunch.OleNativePackageDiagCab;Target:2;(0);006c006500310030004e00610074006900760065*6469616763616200*4d534346*446961675061636b6167652e63617400::iwa

Extensions EXE #OleNative
MiscreantPunch.OleNativePackageEXEExt.InsideOLE;Target:2;(0&1&2);006c006500310030004e00610074006900760065;000200;1/\x00\x02\x00[^\x00]+\x00(?:[a-z]\x3a\x5c|\x5c\x5c)[^\x00]*\.(?:c(?:[ho]m|md|pl|rt)|m(?:s[cipt]|d[be])|p(?:yw?|cd|if|s1)|s(?:c[rt]|h[bs])|v(?:b(?:e|s(?:cript)?)?|xd)|a(?:d[de]|sp)|i(?:n[fs]|s[pu]|nx)|r(?:eg|gs|b)|j(?:se?|ar|ob)|3(?:86|gr)|d(?:iagcab|bx|ll)|h(?:lp|ta)|ws[cfh]?|ba[st]|gadget|exe|fon|lnk|ocx|u(?:3p|rl))\x00\x00\x00\x03\x00.{4}(?:[a-z]\x3a\x5c|\x5c\x5c)[^\x00]*\.(?:c(?:[ho]m|md|pl|rt)|m(?:s[cipt]|d[be])|p(?:yw?|cd|if|s1)|s(?:c[rt]|h[bs])|v(?:b(?:e|s(?:cript)?)?|xd)|a(?:d[de]|sp)|i(?:n[fs]|s[pu]|nx)|r(?:eg|gs|b)|j(?:se?|ar|ob)|3(?:86|gr)|d(?:iagcab|bx|ll)|h(?:lp|ta)|ws[cfh]?|ba[st]|gadget|exe|fon|lnk|ocx|u(?:3p|rl))\x00/si