Cryptominer : la détection d’une source croissante de revenus pour les cyberattaquants

Dans un contexte de sécurisation croissante de son environnement numérique, de l’augmentation conjoncturelle du prix de l’électricité, et du coût d’utilisation des ressources dans le cloud, Gatewatcher cherche à détecter l’utilisation illicite de cryptominers sur les réseaux.

Les cryptominers, qui sont-ils ?


Les cryptominers sont des logiciels légitimes utilisés pour « miner »des crypto-monnaies en exploitant les ressources de sa machine. Plus précisément, il s’agira de détourner la puissance de traitement de l’appareil d’un individu et de l’utiliser afin de miner la cryptomonnaie.

À l’image d’outils de tests d’intrusion comme Cobalt Strike ou Brute Ratel , notamment présenté dans l’éclairage du mois de novembre du Cyber Threat Barometer, les cryptominers sont beaucoup détournés et utilisés comme malwares par les attaquants. L’objectif est alors de les déployer sur des machines victimes pour « miner » à leur compte.

Suivant la durée et le nombre de postes infectés, ces attaques peuvent se révéler très profitables pour un risque faible de par leur discrétion. En effet, certaines incidences sur l’appareil pourront être constatées comme la réduction de certaines performances, une surchauffe importante de l’appareil, l’augmentation de l’activité du ventilateur. Cependant, ces phénomènes peuvent être la résultante d’autres soucis techniques moins préoccupants.
C’est également une méthode moins impactante que les ransomwares, ce qui attire moins l’attention.

Cela n’en reste pas moins un fléau pour les organisations : la campagne Chimaera ,lancée par le groupe TeamTNT, a obtenu 8100 dollars de revenus passifs en exploitant plus de 10.000 endpoints infectés sur des environnements Cloud. Pour cette campagne, il a été estimé que le coût pour les entreprises victimes a dépassé les $430.000, soit $53 pour chaque dollar miné.

Malgré la chute du marché des cryptomonnaies, l’exploitation des cryptominers à des fins malveillantes n’a pas faibli sur l’année 2022.

Cette popularité croissante peut être expliquée par différents éléments :

  • l’augmentation du prix de l’électricité
  • l’affranchissement du paiement de cette électricité par les cyberattaquants puisque n’ayant pas recours à leurs propres machines
  • l’absence du besoin d’infrastructures (serveurs pour du stockage de données ou du beaconing)
  • le peu de connaissances techniques nécessaires
  • la facilité de leur intégration dans une attaque plus impactante

 

Si le déploiement des cryptominers est réalisé principalement à travers du phishing, par le téléchargement de contenus piratés, par l’utilisation de malwares déguisés en ressources légitimes, ou encore par l’exploitation de vulnérabilités, certains attaquants font preuve de plus d’ingéniosité.
Certains API de containers Docker ont été volontairement mal configurées, publiquement exposées et exploitées à grande échelle.

Également, certains utilisaient des images Docker usurpant des images de distributions de Linux, par exemple, altérées en amont. Cette dernière méthode a permis notamment aux attaquants de déployer un nombre non-négligeable de cryptominers, avec une vingtaine de millions de téléchargements d’au moins 30 images recensées.

Enfin, certains utilisaient aussi le téléchargement de ressources a priori légitimes comme des films, jeux ou logiciels, qui étaient en fait infectées.

Le pool mining : pour un revenu partagé et régulier


Il existe deux familles de cryptominers :

  • les cryptominers dits « in-browser » qui s’exécutent en arrière-plan lors de la visite d’une page web
  • et les « binary-based », dont on entend le plus parler, qui vont faire l’objet de méthodes de détection particulières. Il s’agit de malwares installés directement sur le système utilisant les ressources de la machine.

Lorsqu’on mine des cryptomonnaies, on peut le faire de deux façons : en « solo mining » ou en « pool mining ».

Dans le premier cas, il s’agit d’une méthode pour miner de manière individuelle et nécessite généralement une puissance de calcul importante ; là où le « pool mining », quant à lui, permet de partager sa puissance avec d’autres machines au sein d’un même « mining pool ». Non seulement cette deuxième méthode ne demande pas de puissance de calcul particulièrement importante, mais elle entraîne également des revenus plus réguliers par partage des récompenses entre les différents miners d’un même pool.

Lorsqu’un cryptominer fonctionne en « pool mining », il s’authentifie auprès d’un « pool server » qui va alors lui transmettre régulièrement, ainsi qu’aux autres miners du serveur, des calculs à effectuer : des « job ». Il lui répond alors des propositions de réponse : des « submit ». Dès qu’un nouveau « job » est reçu, le miner abandonne le précédent.

À noter que pour une même monnaie, il existe un nombre important de « pool servers ». Chaque pool server échange des paramètres différents avec les cryptominers clients, ce qui fait varier le contenu des paquets.

 

L’appel de l’anonymat :


Parmi toutes les cryptomonnaies disponibles sur le marché, la « Monero » est la plus attirante pour les attaquants. Elle offre le plus grand anonymat et la non-traçabilité au niveau des transactions. Elle est également l’une des cryptomonnaies les plus profitables en minant seulement avec un CPU – Central Processing Unit, lui conférant ainsi un avantage particulier puisque les machines sur les parcs d’entreprises disposent souvent d’une puissance de calcul limitée.

C’est notamment pour ces raisons que le miner XMRig est le cryptominer le plus détourné par les attaquants que c’est le logiciel le plus développé pour miner la Monero. Bien qu’il soit le plus populaire auprès des miners légitimes, il est souvent considérés comme le suspicieux par les moteurs antivirus pour assurer la détection dans le cas d’une utilisation malveillante

Tous ces éléments font que les acteurs de la menace utilisent le « pool mining » sur les machines infectées pour miner de la Monero.

 

Détection de l’utilisation de cryptominer :


Pour détecter l’utilisation malveillante de cryptominers, on distingue trois use-cases :

  • Le cas d’une attaque par phishing
  • Le cas de l’exploitation d’une vulnérabilité
  • Le cas d’un employé malveillant utilisant les ressources de son entreprise

Gatewatcher dispose de différentes solutions de détection de la menace. Pour ces cas d’usage, nous faisons usage des règles Suricata fournies par notre partenaire ETPRO, mises à jour quotidiennement, ainsi que de notre moteur d’analyse de fichiers.

 

Use-case d’un déploiement de cryptominers via une attaque par phishing

  • Scénario: une victime non-attentive clique sur un lien et télécharge un malware.

Les règles Suricata agiront sur :

  • le téléchargement du malware depuis un serveur http ’e l’attaquant
  • les headers HTTP du serveur
  • la résolution du domaine de l’attaquant
  • le certificat TLS du serveur de l’attaquant
  • le TLS SNI du serveur de l’attaquant

On peut compléter ce use-case avec le téléchargement d’un cryptominer déguisé en ressource légitime, pouvant avoir lieu dans le cadre d’une attaque par phishing.

Quelle qu’en soit l’origine, si le trafic est en clair, notre moteur de détection malcore exécute une analyse statique et heuristique multi-moteurs du fichier pour déterminer ses intentions.

 

Use-case d’un déploiement de cryptominers par exploitation d’une vulnérabilité

  • Scénario :  Une CVE est exploitée par le cryptominer

Les  règles Suricata agiront sur :

  • les CVE-2021-26084 et CVE-2022-26134 sur les serveurs Confluence
  • la CVE-2021-44228 sur Apache Log4j
  • la CVE-2022-29464 sur les produits WS02

Ces quatre CVE ont été particulièrement exploitées sur l’année 2022 pour délivrer des cryptominers sur les environnements infectés.

De la même façon, nous disposons de règles Suricata pour les CVE sur les appareils IoT. Dernièrement, fin 2022, le botnet Zerobot a été observé comme exploitant un nombre important de CVE sur des appareils IoT, dont les CVE suivantes que nous détectons :

  • CVE-2014-8361
  • CVE-2017-17215
  • CVE-2020-10987
  • CVE-2020-25506
  • CVE-2021-35395
  • CVE-2021-36260
  • CVE-2021-46422
  • CVE-2022-22965
  • CVE-2022-25075
  • CVE-2022-26210
  • CVE-2022-26186
  • CVE-2022-30525

Dans le cas d’une infection par CVE, le cryptominer transféré sur la machine infectée, si le trafic est en clair, est également analysé par notre moteur de détection malcore.

 

Use-case d’un déploiement de cryptominers via l’action d’un employé malveillant

  • Scénario: l’employé malveillant utilise  les ressources de son entreprise à des fins personnelles.

Les règles Suricata agiront sur :

  • le téléchargement du malware/fichier de configuration depuis des sources connus
  • l’utilisation de ressources liées au cryptomonnaies (comme la vérification de son solde)

Par conséquent, ces trois use-cases se rejoignent lors ’e l’exécution du miner qui communique avec le serveur.

Les  règles Suricata agiront dans ce cas sur :

  • la requête DNS vers le pool server
  • le certificat TLS du pool server
  • le TLS SNI du pool server
  • le contenu des communications en clair entre le client et le serveur

À titre indicatif, voici un exemple d’une règle Suricata qui matche sur la résolution des sous-domaines *.nanopool.org, un des pool servers les plus populaires pour la Monero 

alert dns $HOME_NET any -> any any (”sg: »GW CURRENT_EVENT DNS query to public cryptomining pool domain (*.nanopool.”rg) »; dns_query; cont”nt:« .nanopool”org »; nocase; isdataat:!1,relative; sid:1000001; rev:1; classtype:trojan-activity; metadata: created_at 2023_01_31;)

 

Conclusion


Ainsi, ces règles sont efficaces pour couvrir un grand nombre d’attaques. Pour les cyberattaquants les plus expérimentés, il reste toutefois possible de contourner ces règles en utilisant certaines méthodes de dissimulation . Certains attaquants chiffrent par exemple leurs communications et passent par des serveurs proxy pour dissimuler le pool server avec lequel ils communiquent, ou encore montent leur propre pool server.

De ce fait, Gatewatcher étudie un modèle de Machine Learning  basé sur les métadonnées, et plus lus particulièrement sur l’étude de la taille des paquets et de leur fréquence d’émission, afin de détecter les communications vers un pool server, que le flux soit chiffré ou non, et quel que soit le serveur avec lequel le client communique.

A l’instar de la solution de détection de Beaconing , Gatewatcher dispose déjà de moteurs de détection basés sur les métadonnées , et pourra ainsi les utiliser dans le cadre de la détection de cryptominers.

 

Auteur : Hippolyte Cousin – Ingénieur R&D