Il s’agit d’une campagne massive ayant ciblé un grand nombre d’entreprises à travers le monde. L’analyse de notre équipe donne de nouveaux détails sur le mode opératoire de cet attaquant.
Le principe est toujours le même, des mails contenant une pièce jointe malveillante, généralement un fichier Excel, sont envoyés aux victimes. En général, le sujet des mails, tout comme le nom des pièces jointes, restent très communs comme “Payment Remittance” ou “Price Request“.
Le document Office contient du code malveillant, qui, à son ouverture, va exécuter l’utilitaire Windows mshta.exe, avec, en paramètre, une URL “shortenée” redirigeant vers une URL blogspot.
L’URL blogspot est le stage 1 : elle contient du code malveillant qui va être exécuté par mshta. Son exécution va créer une clef de registre nommée WinUpdate dans HKCU\Software\Microsoft\Windows\CurrentVersion\Run\.
Figure 1 : Code malveillant contenu dans la page blogspot
Cette clef est associée à la commande mshta.exe qui a va requêter une URL pastebin. Cette commande sera exécutée au démarrage de la machine. Il s’agit d’une technique d’exécution et de persistance.
Figure 2 : Code exécuté par mshta – creation de la clef RUN
La page pastebin requêtée par la commande mshta de la clef run correspond au stage 2. Cette page contient également du code qui crée une tâche planifiée sur la machine de la victime. Il s’agit aussi d’une technique d’exécution et de persistance. Une fois encore, mshta requête une URL pastebin.
Figure 3 : Code exécuté par mshta – création de la tâche planifiée
Cette nouvelle URL est le stage 3. Elle contient du code qui va exécuter une commande PowerShell. Celle-ci va exécuter une DLL permettant de charger un payload en mémoire. La DLL ainsi que le payload sont récupérés sur pastebin.
Figure 4 : Extrait du code PowerShell d’injection du payload
La machine de la victime est compromise. L’attaque est dite fileless car tout est injecté en mémoire, le malware n’étant pas copié sur le système.
Note :
Jusqu’à présent, les URL pastebin sont accédées en HTTP. On remarque cependant que celles de la DLL et du payload sont requêtées en HTTPS. Par ce biais, l’attaquant essaye peut-être de se prémunir des mécanismes de sécurité (comme des proxies par exemple) qui bloquent les URL vues comme malveillantes.
Figure 5 : illustration de l’attaque
Actuellement, les pages du blog newandupdates1234.blogspot[.]com diffusent soit du code inactif soit les stealers Azorult ou Formbook. L’attaquant respecte une sorte de convention de nommage entre le nom de la page et les différents scripts pastebin.a
Figure 6 – récapitulatif payload par page
Notre équipe présume que l’attaquant va diffuser du code plus tard sur les pages actuellement inactives ou bien, qu’il s’agit d’une technique pour masquer ses cibles.
Lors de cette campagne, des documents différents ont été envoyés à de nombreuses entreprises. Beaucoup d’entre eux ont été détectés comme malveillants. En adressant les fichiers pointant vers les pages John et Workfine uniquement à ces cibles, l’attaquant peut ainsi les noyer dans la masse de sa campagne.
En parallèle de nos investigations menées sur les pages du blog, nous avons recherché d’autres liens pastebin récents appartenant à l’attaquant. Nous en avons identifié plusieurs et avons pu les lier au blogspot : asdiamecwecw8cew.blogspot[.]com. Sur ce blog, notre équipe a trouvé de nombreuses pages contenant du code malveillant. Le mode opératoire est exactement le même que celui décrit précédemment.
Ce blog doit être lié à une campagne datant de septembre car la plupart des scripts sont datés du 22 septembre 2019. Les pages distribuent principalement des malwares de type RAT. Nous avons ainsi identifié NanoCore, RemCos, AsyncRat et Revenge RAT mais aussi les stealers Azorult et Agent Tesla. Certains C2 sont d’ailleurs toujours actifs. A noter qu’une des pages diffuse également deux malwares : Azorult et le RAT Nanocore. Ces deux malwares ont le même C2.
Nous avons également remarqué que le code des payloads a en général été déposé le 8 octobre soit plus de deux semaines après le dépôt du code des stages 2 et 3. Nous supposons ainsi que l’attaquant diffuse dans un premier temps des malwares de type stealer/spyer avant d’injecter des RAT. Si cette hypothèse se confirme, notre équipe devrait détecter prochainement la diffusion de payloads de type RAT.
Le suivi des payloads (analyse et identification) a été effectué par notre laboratoire d’épidémiologie ainsi qu’avec notre sandbox (P2AA). Il a ainsi été possible de récupérer les adresses IP et noms de domaine des différents C2.
Figure 7 : Extract du C2 du payload Agent Tesla – source : Laboratoire d’épidémiologie d’Orange Cyberdefense
A l’aide de l’outil Shodan, notre équipe est parvenue à trouver des caractéristiques communes à ces serveurs. Pour chacun d’entre eux, c’est le système d’exploitation Windows server 2012 R2 qui est utilisé.
Les serveurs exposent les mêmes ports web (80, 443 Web Apache), 3306 MariaDB et le port RDP 3389. Les services web sont assurés via le logiciel WAMP. Nous avons également constaté des patterns communs dans le nom des machines. Les investigations menées sur les pages du asdiamecwecw8cew ont démontré que certains C2 servent pour plusieurs malwares.
Les TTP observés ont des similarités avec ceux observés par Palo Alto Networks lors de la campagne “Aggah”. Ce nom est très probablement un clin d’œil à l’auteur des script pastebin (hagga) qui semble apprécier la fonction StrReverse. A noter que d’après des informations retrouvées sur Twitter, l’utilisateur Aggah serait lié au Pakistan[3].
Cette campagne est conçue pour contourner les mécanismes de protection. L’attaquant maintient simultanément un nombre important de C2 associés à différents types de malwares. Cela démontre qu’il dispose de compétences, d’outillages ainsi que de procédures. Certaines publications mentionnant “Aggah” s’interrogent sur son lien avec Gorgon Group.
Gorgon Group est un acteur d’APT pakistanaise engagée à la fois dans des activités cybercriminelles ainsi que dans des attaques cibles contre des organisations gouvernementales. Le groupe serait actif depuis 2017. Il est connu notamment pour utiliser les malwares RevengeRAT et NanoCore. Notre analyse démontre que leur arsenal d’outils et de méthodes est plus vaste et diversifié. De surcroît, leurs TTP sont très similaires à ceux observés.
S’il convient de rester prudent quant à l’attribution de cette campagne à cette APT, cette investigation donne un éclairage nouveau sur “Aggah” notamment sur les outils utilisés.
Figure 8 : mapping MITRE ATT&CK
Type | IOCs | Détail |
Sha256 | 6079cdba30c72c4097545444a61945adb4cf03ebbf531b8efb6c3f29633f01e3 | Azorult |
92322a7f6e9c9f8befe87af8bd1369e5ee95d82b8c673d863f9f03eba2b4534e | Azorult | |
48b730f6fe4a94cfc4af81fdb4420d3a749f7602b4dfd6663e9e5af91cb3f886 | Azorult | |
fd40f1fafffe22687d820fed80f152bf8e30ce8a4b7d40ff8ff8acaf42c8517b | Azorult | |
ba516bfa4d18a3890ae5599973d0583523379eeddce6ba08668f9278453bc9ad | Azorult | |
970f0dc60fd3a57dc97194313d8455e8e888ed480cadd7548096537c96c6130d | Azorult | |
6497ff8cb227ecd6a75db4379b8f9d849b542b59fd30dd49c6d9ef0977cacd14 | Azorult | |
7fbb03fcff280da369566274170df592afc639eb6a1bfd8470dca1cd7254ad46 | RevengeRAT | |
9f0f88e296786e48c29d77da3418ef2d148ba19db10dcb59aa5dbff2c65cd505 | RevengeRAT | |
778715947a04a421044f4903f5b28eb80f67c545c21a515f25535984166bb273 | FormBook | |
d0c803c5ea28bf5f31d48876fec6f813d312ec2df024974fdc6e641862ce68a1 | AgentTesla | |
6c59ac2d51e7f06e82b33c697107a0ba27779382f07754fa9f0e283be84940e5 | AgentTesla | |
a37c8ab7a8b6c8686e5d7a911c9f389131eb1da8abab9228f63442f4cc0586b9 | NanoCore | |
732501083e18c0e7843986197a9cc78b4c70844ae2a5260d8e0863b4566840f2 | NanoCore | |
0f0faa6ff820888c44e60adc0b9d0044ae626d3ae5adfca9251db655d360430a | NanoCore | |
a2d86ca90f364341238ad4b6ce42eabad6462ca8b85d2e36d276a5a76a400e93 | NanoCore | |
fb9146f0e3045ad11c152b06b5a4e3ae9a87f09dec76253fec671a79da256d33 | NanoCore | |
83be3594bac7cf5b93de4fbb944c11feb844cce7ad0e7442922e647ab4117ced | NanoCore | |
35cf9dd2e966cbbf772bc8a8863eca048ce48728ad0fb9bad994b62247291171 | Nanocore | |
516c73d324fa23f5aaf50bf9306c2d5aa3d55b0b8c9be60e273ac3c1895f15f3 | ASyncRAT | |
2ed3b831531428a2f172284d9d5a0e91bb1b478a900d74abe7d581c782d7de03 | Remcos | |
e1598720dbe7fe3595b0c323c5ad4de231744568acc1f9b00a855642ebea9676 | Dll | |
db5300741c649d489afcadcf574086f086e0c1dec660733ff3360bb8996e649f | Dll | |
e73adcf6f04ba13e215f240081024bdd0656e661f43bb9f4b96509d59c0b6ce5 | Dll | |
84833991f1705a01a11149c9d037c8379a9c2d463dc30a2fec27bfa52d218fa6 | Dll | |
5c57e599f74e543bf1cae580ebb42beaa3a5ec01a18c59dfa533fa04fbf33456 | Dll | |
IP | 88.150.221[.]123 | C2 |
35.226.30[.]217 | C2 | |
216.170.126[.]107:777 | C2 | |
URL | 88.150.221[.]123/1/inc/0f176165c9879d.php | C2 |
216.170.126[.]123/otu/index.php | C2 | |
185.215.148[.]217/ghost/index.php | C2 | |
216.170.126[.]107/done/index.php | C2 | |
216.170.126[.]107/xmen/index.php | C2 | |
216.170.126[.]146/ahsan/index.php | C2 | |
FQDN | dennisss.duckdns[.]org | C2 |
mozila-system.duckdns[.]org | C2 | |
hetro.ddns[.]net | C2 | |
kimkinzo.duckdns[.]org | C2 | |
docora.duckdns[.]org | C2 | |
fishwdme.duckdns[.]org | C2 | |
john-osas11.duckdns[.]org | C2 | |
ccmorgan.duckdns[.]org | C2 | |
sukw.duckdns[.]org | C2 |
Figure 9 : Indices of compromise – Source : classification effectuée par les équipes du CyberSOC d’Orange Cyberdefense
Notes :
[1] Tactics, Techniques and Procedure
[3] https://twitter.com/sS55752750/status/1181570569625636865