Hacks à vendre : à l’intérieur du malware-as-a-service Buer Loader

Lors de notre enquête sur une attaque Ryuk en septembre 2020, nous avons découvert que les acteurs de Ryuk avaient utilisé une méthode relativement nouvelle pour obtenir un accès initial : un dropper de malware appelé Buer. L’attaque de septembre faisait partie d’une attaque de spear phishing de faible volume suivie par Sophos. Au cours du mois suivant, elle s’est transformée en une campagne de spam beaucoup plus importante, transportant Buer ainsi qu’un certain nombre d’autres types de logiciels malveillants  » chargeurs « , les opérateurs de Ryuk cherchant à intensifier leurs attaques.

Pour la première fois introduite en août 2019, Buer est une offre de logiciels malveillants en tant que service qui est utilisée pour livrer le paquet que le client du service désire, fournissant une compromission initiale des PC Windows des cibles et leur permettant d’établir une tête de pont numérique pour d’autres activités malveillantes. Buer a déjà été associé à des attaques de chevaux de Troie bancaires et à d’autres déploiements de logiciels malveillants et, apparemment, il a maintenant été adopté par les opérateurs de ransomware. À bien des égards, Buer se positionne comme une alternative à Emotet et au chargeur Bazar émergent de Trickbot (qui utilisent tous deux des comportements similaires pour se déployer).

Bots à service complet

Buer a été annoncé pour la première fois dans un post de forum le 20 août 2019 sous le titre « Modular Buer Loader », décrit par ses développeurs comme « un nouveau bot modulaire… écrit en C pur » avec un code serveur de commande et de contrôle (C&C) écrit en .NET Core MVC (qui peut être exécuté sur des serveurs Linux). Pour 350 dollars (plus les frais que prend un garant tiers), un cybercriminel peut acheter un chargeur personnalisé et l’accès au panneau C&C à partir d’une seule adresse IP – avec des frais de 25 dollars pour changer cette adresse. Les développeurs de Buer limitent les utilisateurs à deux adresses par compte.

Le code du bot, compilé pour chaque utilisateur spécifique à un téléchargement, a une taille annoncée entre 22 et 26 kilo-octets – bien que l’échantillon que nous avons examiné était d’environ 40 kilo-octets après avoir été déballé de son dropper. Le bot peut être configuré pour être exécuté soit en tant qu’exécutable Windows 32 bits, soit en tant que DLL.

Le C&C peut être utilisé pour suivre le nombre de téléchargements réussis dans une campagne, et pour attribuer des tâches aux bots par des filtres tels que le pays dans lequel ils se trouvent, le « bitness du système d’exploitation » (32 ou 64 bits), le nombre de processeurs sur la machine infectée et le niveau de permissions obtenu par le bot. Les bots détectés comme opérant au sein de la Communauté des États indépendants seront fermés – ce qui est un comportement courant des logiciels malveillants développés dans la région de l’ex-URSS, pour tenter d’éviter l’attention des autorités locales.

screenshot
Le « gestionnaire de fichiers dans le « panneau » de commande et de contrôle pour le bot Buer loader. Les fichiers peuvent être téléchargés pour être distribués ici – la taille maximale est de 28 mégaoctets.
Le panneau Buer suit les installations par système d’exploitation, CPU, « bitness » (32 ou 64), activité, et dans quelle région géographique elles se trouvent en fonction des paramètres de localisation et d’autres empreintes digitales.

Les tâches peuvent être programmées pour être exécutées pendant une durée spécifique, ou suspendues sur commande, avec la télémétrie de la tâche renvoyée au panneau. Le panneau peut également être utilisé pour déployer des mises à jour aux bots, y compris (au moins sur la base de la publicité) le déploiement de modules, avec des modules préconstruits à ajouter « au fil du temps » dans le cadre du service. Et bien sûr, des conseils de configuration et un support technique sont fournis.

Prix à l’intérieur de chaque doc

graphe de flux
Flux d’attaque du chargeur Buer.

L’équipe de réponse rapide de Sophos a découvert un échantillon de Buer à l’origine d’une attaque Ryuk de septembre. Le chargeur était délivré par un document malveillant stocké sur Google Docs, qui exigeait de la victime qu’elle active un contenu scripté – un comportement similaire à Emotet et à d’autres attaques de chargeurs via des e-mails de spam malveillants, mais qui exploite le stockage en nuage pour rendre l’analyse médico-légale plus difficile.

Nous avons collecté d’autres messages de la même campagne dans les pièges à spam de Sophos au cours de la même période. Les messages utilisaient tous des fichiers Google Docs et étaient envoyés à l’aide d’un service de distribution d’emails commerciaux populaire – ce qui obscurcit encore plus la source et le lien associé au document malveillant.

capture d'écran de l'email
Un exemple de l’exécution initiale du bot Buer distribuant des spear phishes.

La charge utile de ce document malveillant était nommée print_document.exe. Comme d’autres échantillons de droppers Buer que nous avons analysés, il s’agissait d’un binaire signé numériquement, utilisant un certificat volé et maintenant révoqué, émis par DigiCert à « NEEDCODE SP Z O O », un développeur de logiciels polonais, émis le 17 septembre 2020. Le dropper a été construit en utilisant le code modifié d’un exemple d’application Microsoft pour la capture d’images, AcquireTest, en utilisant la fonction du code pour « l’énumération des fichiers » pour supprimer et déposer le code.

Le dropper fait un certain nombre de choses pour assurer une livraison correcte. Il vérifie d’abord la présence d’un débogueur pour échapper à l’analyse médico-légale, puis vérifie les paramètres de langue et de localisation pour déterminer la région géographique du système attaqué. Si les paramètres correspondent à un pays de la CEI, il se termine sans déposer le malware. Sinon, le dropper dépose alors le bot Buer en mémoire et l’exécute.

Intriguant, le Buer Loader et le ransomware Ryuk utilisent le même chargeur de shellcode pour exécuter le code du malware déballé en mémoire :

Code shell du Buer loader….

et le code shell loader de Ryuk.

Ceci n’est peut-être pas une indication d’une paternité partagée ; les développeurs peuvent avoir simplement utilisé le même exemple de code comme source.

Au lancement, le bot Buer fait un certain nombre de choses pour s’installer. Le bot exécute deux ensembles de commandes PowerShell – un pour contourner les politiques d’exécution afin de permettre aux commandes PowerShell exécutées par le bot de passer sans avertissement (Set-ExecutionPolicy Bypass), et un autre (add-mppreference -exclusionpath) pour apporter des modifications à la liste d’exclusion de Windows Defender – dissimulant les fichiers qu’il télécharge de la protection intégrée contre les logiciels malveillants de Windows.

Buer interroge le registre Windows pour connaître la valeur de \Microsoft\Cryptography\MachineGuid afin d’obtenir l’identifiant unique de la machine infectée. Et le bot appelle la maison, interagissant avec le serveur de commande et de contrôle (dans ce cas, 104248.83.13) par le biais d’une série de messages HTTP sécurisés « POST » et « GET ».

Puis il y a la partie « chargeur » de ce que fait Buer. Les fichiers emballés pour être déposés par Buer sont récupérés à partir d’une source désignée et déposés dans un dossier créé dans le répertoire C:\ProgramData\ – le nom du répertoire est créé de manière programmatique et varie selon les déploiements. Dans l’attaque de septembre, Buer a été utilisé pour déployer une balise Cobalt Strike sur l’ordinateur infecté, qui a ensuite été utilisé à son tour pour exploiter le réseau et lancer une attaque Ryuk.

Mixing it up

La campagne de spam malveillant qui a donné lieu aux infections par le chargeur Buer et le ransomware Ryuk a évolué à la fin du mois de septembre, car nous avons observé que les acteurs à l’origine de cette campagne ont modifié les mêmes tactiques, passant d’un faible volume sur SendGrid à des courriers envoyés par des fournisseurs d’hébergement Internet – principalement par le biais d’un seul FAI russe. Puis, en octobre, le volume de spam a augmenté de façon spectaculaire – passant de Google Docs (Google ayant fermé les anciens fichiers pour violation des conditions de service) à un autre service commercial de messagerie et de livraison de fichiers.

Un message de spam un peu moins ciblé avec un lien vers un document malveillant stocké par Constant Contact.

Dans les deux dernières phases, alors que les tactiques sont restées similaires et que d’autres caractéristiques suggéraient que l’acteur du spam était le même, plusieurs types de malware  » dropper  » ont été déployés en pièces jointes. Outre Buer, des échantillons de Bazar et de ZLoader ont également été trouvés, avec des charges utiles de livraison variables. Pour une charge utile de Bazar, les attaquants ont utilisé une feuille de calcul Excel protégée par un mot de passe. Au cours de la même période, Bazar et ZLoader étaient également connus pour être impliqués dans des attaques Ryuk.

Il est clair que Ryuk est de retour, et que les acteurs derrière lui font évoluer leurs méthodes de compromission initiale, en utilisant plusieurs bots chargeurs pour obtenir un accès initial. On ne sait pas si c’est le même acteur qui est à l’origine de toutes ces attaques, utilisant plusieurs plateformes de logiciels malveillants en tant que service pour diffuser Ryuk, ou s’il y a plusieurs acteurs Ryuk. Mais la similitude des techniques entre ces campagnes suggère qu’il y a au moins une coordination entre eux : ils utilisent des courriels ciblés avec des documents malveillants basés sur le cloud et un leurre pour inciter à une action immédiate (souvent liée aux salaires ou aux impôts).

La meilleure atténuation de ces attaques est de renforcer la formation sur les attaques de phishing. Bien que ces courriels malveillants soient ciblés, ils sont généralement formulés de manière maladroite et utilisent le nom de la cible de manière étrange. Une lecture attentive de l’e-mail met en garde la plupart des utilisateurs avertis. Mais ces attaques sont de plus en plus sophistiquées, et même les utilisateurs bien entraînés peuvent finir par cliquer sur le mauvais lien dans un courriel si la détection du spam ne les attrape pas d’abord.

Sophos détecte et bloque Buer à la fois avec des détections personnalisées (Troj/BuerLd-A) et l’apprentissage automatique, et détecte les messages de spear phishing comme du spam. Les indicateurs de compromission associés au Buer Loader peuvent être trouvés sur le GitHub des SophosLabs.

Sophos tient à remercier Peter Mackenzie, Elida Leite, Syed Shahram et Bill Kearny de l’équipe Sophos Rapid Response, ainsi qu’Anand Ajjan, Brett Cove et Gabor Szappanos des SophosLabs pour leurs contributions à ce rapport

.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.