Menu Fermer

Trojan LNK, Trojan.VBS et Malware PowerShell : Exemple d’une campagne visant la France

Dans un précédent article, je vous avais présenté les Trojan LNK ou LNK Malware en indiquant que leurs utilisations étaient en hausse.
Dans cet article, je vous présente une campagne trouvée à partir d’une désinfection sur le forum du site.
Les composantes utilisées dans cette campagne n’ont rien de vraiment nouveau mais cela reste tout de même assez intéressante à détailler.

Voici un exemple de campagne de Trojan LNK qui aboutit à un des scripts malveillants en PowerShell.

Trojan LNK, Trojan.VBS et Malware PowerShell : Exemple d'une campagne visant la France

Tout commence par un Trojan LNK

Tout commence par une demande de désinfection sur le forum où un utilisateur se plaint d’avoir exécuté un fichier LNK.
Dans les propriétés, il constate que ce dernier exécute un script PowerShell.

Trojan LNK

Pour la petite histoire, le fichier provient d’un site de leak (magasine, personnalité, etc).
Le message provient d’un compte nommé Simonlamona qui n’a qu’un seul message celui-ci.
Il propose de télécharger des photos de Marion Gagnot et surtout une vidéo. Tout cela, via un lien Anonfiles.
(Merci Parisien_entraide).

Trojan LNK

A noter que l’on trouve un procédé identique sur forum.cheat-gam3.com provenant de même pseudonyme utilisé aussi sur des forums tels que Marketplace et hackforums.net.
Bref =)

Dans l’archive, on trouve des photos et un fichier sextape.mp4.lnk7zip ici affiche correctement la double extension.

Trojan LNK

La technique la double extension est vieille comme le monde.
Il s’agit de tirer parti du fait que Windows masque l’extension des fichiers.
Le fichier sextape.mp4.lnk va en réalité s’afficher sexy.mp4. De plus, le cybercriminel a pris le soin de lui appliquer une icône standard de vidéo pour donner l’impression que l’on a affaire à un fichier vidéo (même si normalement chez l’utilisateur, l’icône du lecteur vidéo de l’application par défaut est censée s’afficher).
Toutefois, un œil attentif remarquera que Windows affiche bien l’icône de raccourci avec la flèche en bas à gauche.
Un clic droit propriétés sur le fichier permet de retrouver le code PowerShell mentionné par la victime sur forum.malekal.com.
Cet aspect de la sécurité, j’en parle dans cet article : Extensions de fichiers masquées sur Windows et les problèmes de sécurité

Trojan LNK

Windows Defender détecte bien le fichier LNK malveillant en Trojan:Script/Wacatac.B!ml.
C’est une bonne chose car cela coupe court à toute infection du PC.
Kaspersky le bloque aussi, par contre, Avast! laisse tout passer.

Trojan LNK détecté en Trojan:Script/Wacatac.B!ml par Windows Defender

D’ailleurs dans le même thread, un utilisateur mentionne que son antivirus a émis des alertes.

Trojan LNK

Trojan.VBS via un fichier HTA pour charger le payload

Le fichier LNK exécute mshta.exe et un script HTA distant à l’adresse suivante : http://193.42.33.121/videomagasin.hta (Xdeer Limited – NL).
Ce dernier est bloqué par Smartscreen et Google SafeBrowsing, certainement car cette IP a déjà été utilisée dans des campagnes de Phishing.
Notez que le nom de fichier est en Français.

Trojan.VBS via un fichier MHTA

Le fichier HTA contient du code HTML inutile mais surtout un VBS qui cherche à exécuter du code offusqué.

Trojan.VBS dans un fichier HTA

Une analyse VirusTotal donne quelques détections VBS:Electryon, Trojan.Script.Dinihou et des détections génériques Trojan.VBS.Encrypted : https://www.virustotal.com/gui/file/ed51da683be11c3b074dec69686b1641a86ca3bd726742426e7a015fc7b7e004?nocache=1

VBS:Electryon, Trojan.Script.Dinihou et des détections génériques de Trojan.VBS.Encrypted dans VirusTotal

Ce dernier exécute à son tour du code PowerShell caché.

Trojan PowerShell

Le script VBS effectue plusieurs opérations en cascade dont voici les grandes lignes :

La chaîne d'infection de Trojan LNK et Malware PowerShell

Tout d’abord, il ouvre sur l’application Photo, une photo leakée, histoire que quelque chose se passe et que le victime pense que tout fonctionne. Mais, il ne s’agit pas de la vidéo tant attendue.

Puis, le compilateur CSharp inclus dans le .NET Framework s’exécute pour compiler un malware :

"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe" /noconfig /fullpaths @"C:\Users\Mak\AppData\Local\Temp\uukdcfcv.cmdline"

Ensuite, il exécute cmstp.exe avec un fichier .inf associé :

"C:\Windows\system32\cmstp.exe" /au "C:\Users\Mak\AppData\Local\Temp\CMSTP.inf" 

Il semblerait que cela permet de contourner l’UAC ou AppLocker pour exécuter un EXE ou injecter une DLL.
On trouve d’ailleurs un exemple de fichier INF similaire sur cette page : UACBypass.inf
Cela permet ici d’exécuter ebook_SC.bat en administrateur.

cmstp.exe et Bypass UAC

Enfin notons cette simple commande Powershell qui ajoute tous les disques C et D en exception dans l’antivirus Windows Defender.
A partir de là, le malware devrait avoir la paix pour s’exécuter tranquillement sur le PC de la victime.

"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" add-mppreference -exclusionpath @('C:\','D:\')

Trojan PowerShell : la charge finale

Au bout du compte, le payload est droppé sur la machine de la victime.
Il se compose de plusieurs fichiers dont deux fichiers .bat ebook_SC.bat et mwXHS.bat qui sont des copies, un fichier mwXHS.vbs.
Les fichiers BAT ont l’attribut masqué.
La détection VirusTotal est à 9/60 est assez médiocre avec du Generic.BAT.Downloader.A provenant des antivirus utilisant le moteur BitDefender.

Le fichier VBS a pour but d’exécuter le fichier mwXHS.bat à chaque démarrage de Windows.
Pour cela, une tâche planifiée est créée afin de rendre le malware persistant.

Task: {3C14CEE9-D204-4CF7-86B7-E13994ACD3B8} - System32\Tasks\RuntimeBroker_mwXHS => C:\Users\Mak\AppData\Roaming\mwXHS.vbs [126 2023-02-19] () [Fichier non signé]
VBS qui charge un fichier BAT au démarrage du PC pour activer le payload

Voici le contenu du fichier BAT avec un commentaire en base64.
La fin du fichier est en partie offusquée avec des commentaires entre %.
Mais on peut distinguer tout à la fin qu’il exécute un fichier EXE.

Trojan PowerShell

Le code un peu nettoyé, on retrouve quelque chose de similaire à ce que l’on avait avec le code VBS du fichier HTA.

Trojan PowerShell

Ce bat rejoue presque l’intégralité de la chaîne malveillante.

Trojan PowerShell

Notamment, il recréé la tâche planifiée et le fichier VBS, dans le cas où un des deux est supprimé.

cmd.exe lance mwXHS.bat.exe qui est, en fait, une copie de powershell.exe.
Puis ce dernier lance une autre instance de powershell.exe.
De ce fait, tous les fichiers actifs en mémoires sont légitimes et sains à l’exception du fichier BAT.
Nous sommes à 0 détections antivirus sur VirusTotal.

Trojan PowerShell

mwXHS.bat.exe contacte un serveur srv-141-98-11-72.serveroffer.net (141.98.11.72 – UAB Host Baltic – LT) sur le port 4449.

Trojan PowerShell

L’instance de Powershell exécute le code suivant qui a pour but de supprimer le fichier lors de son arrêt :

"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" $a = [System.Diagnostics.Process]::GetProcessById(5236);$b = $a.MainModule.FileName;$a.WaitForExit();Remove-Item -Force -Path $b;

En conclusion

Comme vous pouvez le voir ici, l’attaquant n’utilise aucun exécutable (PE32) mais que des scripts.
Il mixte des scripts MSHTA, VBS, BAR et enfin PowerShell.
Le seul fichier exécutable utilisé est une copie de powershell.exe.

Elle est assez intéressante et montre que l’on peut créer des malwares assez efficaces avec des scripts relativement simples.
Le tout lancé au départ par un simple fichier LNK.
Par exemple, au moment où sont écrites ces lignes Avast! ne bloque aucun des scripts malveillants.

Il semblerait que l’attaquant ait utilisé Quantum Builder décrit dans cet article : https://www.zscaler.com/blogs/security-research/agent-tesla-rat-delivered-quantum-builder-new-ttps

Voici la chaîne d’infection simplifiée en quatre étapes.

Trojan LNK et Malware PowerShell

C’est pour cela, qu’il est fortement conseillé de bloquer les connexions sortant pour PowerShell.exe sur le pare-feu Windows Defender. Chose, que j’ai déjà expliqué, il y a fort longtemps dans cet article : Firewall – les bon réglages.
En autre désactiver Windows Script Hosting permet de bloquer l’exécution de fichier HTA et VBS (ainsi que JS).

BONUS :

Comme évoqué au début de cet article, le même cybercriminel Simonlamona a aussi posté sur un forum francophone de “cheat game” proposant un crack pour un bot Ankabot.

Trojan LNK et Malware PowerShell

Le schéma est ensuite, le même avec une archive protégée par un mot de passe et un fichier LNK se faisant cette fois passé pour un jpg.

Trojan LNK et Malware PowerShell