Bien que les crypto-monnaies existent depuis longtemps et sont utilisées à des fins légitimes, les pirates ont récemment terni leur réputation en les détournant de leur usage afin d’extorquer de l’argent. Ce fût notamment le cas lors des récentes attaques au ransomwares dont nous avons été témoins ces derniers mois.
À mesure que la valeur des crypto-monnaies augmente, un nouveau type de menace, qui dépasse toutes les autres formes de cybercriminalité, s’est généralisé. En effet, le minage de crypto-monnaies ou « cryptomining » est si lucratif que les créateurs et les distributeurs de malwares du monde entier l’ont adopté.
Des malwares qui minent des cryptomonnaies à l’insu des utilisateurs
Pour maximiser leurs profits, les créateurs de menaces cherchent à exploiter la puissance de calcul d’un grand nombre de terminaux (PC, mobiles, tablettes, serveurs…). Néanmoins, avant toute chose, ils doivent trouver le moyen de diffuser leurs mineurs à très grande échelle.
L’an dernier, le ransomware « Wannacry » a été très médiatisé pour avoir profité de la fuite des exploits EternalBlue et DoublePulsar. Dans le même temps, au moins deux groupes différents utilisaient ces mêmes vulnérabilités pour infecter des centaines de milliers de serveurs Windows avec un crypto-mineur, et généraient ainsi des millions de dollars de revenus.
Les serveurs, parce qu’ils offrent la plus grande puissance pour résoudre les opérations mathématiques requises par le cryptomining, constituent bien entendu les cibles favorites des cybercriminels. Dernièrement, nous avons vu des individus qui, contre leur gré, ont franchi une nouvelle étape en utilisant des supercalculateurs dans divers environnements d’infrastructures critiques.
Campagnes de spam et kits d’exploitation
Les créateurs de logiciels malveillants ont attrapé la fièvre du crypto-monnaie. Les familles de malwares traditionnels comme Trickbot, distribuées via des pièces jointes malveillantes, ont ajouté temporairement un module de cryptomining. Les créateurs de Trickbot avaient déjà étendu leur cheval de Troie (ou Trojan en anglais) bancaire dans l’optique de voler des informations d’identification des utilisateurs de Coinbase. La nature modulaire de leurs malwares leur donne en effet la capacité d’expérimenter facilement de nouveaux stratagèmes pour gagner de l’argent.
Plusieurs kits d’exploitation, et en particulier RIG EK, ont aussi diffusé des mineurs, généralement par le biais du malware SmokeLoader. Les cryptomineurs sont en réalité l’une des charges utiles les plus couramment livrées dans les attaques de téléchargement « drive-by ».
Enfin, les utilisateurs mobiles ne sont pas plus à l’abri du cryptomining, car les applications « trojanisées » associées à un programme de cryptomining sont légions, en particulier sur Android.
Le cryptojacking s’invite les sites Web préférés des internautes
Mi-septembre 2017, une mystérieuse entité appelée Coinhive a créé le chaos sur le Web en lançant une API permettant de miner de la crypto-monnaie (des jetons Monero) directement depuis un navigateur Web. Celle-ci a véritablement démocratisé l’utilisation de mineurs intégrés aux navigateurs. Cette technique avait déjà été testé il y a quelques années en tant que concept alternatif à la publicité online traditionnelle, mais sans jamais se développer. Il existe cependant un précédent légal avec un groupe d’étudiants du MIT, poursuivi par l’état du New Jersey pour avoir tenté d’extraire de la crypto-monnaie (des jetons Tidbit) de cette manière.
Pas d’opt-in par défaut
En l’espace de quelques semaines, l’API Coinhive, dépourvue de toute garantie, a permis le développement d’attaques de cryptomining drive-by. Semblable aux téléchargements drive-by, il s’agit d’une technique automatisée, silencieuse et intégrée qui conduit les visiteurs d’un site Web à miner de la crypto-monnaie, souvent à leur insu. Et une fois de plus, la publicité malveillante a été l’un facteur important de la diffusion de ces mineurs.
Un autre vecteur, contre lequel les responsables de la sécurité mettent en garde depuis des années, est l’utilisation de scripts tiers. Une société appelée Texthelp dont l’un des plugins s’est trouvé compromis, conduisait des centaines de sites Web gouvernementaux du Royaume-Uni à participer involontairement à des activités malveillantes de cryptomining.
Pour écarter les critiques, Coinhive a lancé une nouvelle API qui, cette fois, exige explicitement l’autorisation de l’utilisateur pour déclencher une activité minière. Il s’agissait de pousser les éditeurs de sites Web à utiliser cette API plus « éthique » afin que leurs visiteurs puissent sciemment choisir d’entrer ou non avant de s’engager dans le cryptomining. Coinhive a également invoqué cet argument pour défendre sa position contre les bloqueurs publicitaires et les produits antivirus. Cependant, selon les informations recueillies par Malwarebytes, la version opt-in de l’API était peu utilisée (40K/jour) par rapport à la version silencieuse (3M/jour). Par ailleurs, même les sites utilisant l’option opt-in peuvent paralyser des machines en faisant tourner un mineur débridé. Ce fut notamment le cas du célèbre site d’information américain Salon.com.
Copycats
Le succès immédiat de Coinhive a engendré l’apparition de plusieurs imitations. Par exemple coin-have.comest le deuxième service le plus populaire, suivi de crypto-loot.com. Alors que Coinhive capte une commission de 30% sur tous les revenus miniers, Coin-Have annonce son taux à 20% comme étant le plus bas du marché, bien que CryptoLoot communique sur seulement 12%.
En plus de paiements plus importants, d’autres caractéristiques « attrayantes » mises en avant par les nouveaux venus sont les seuils de paiement peu élevés et la capacité de contourner les bloqueurs publicitaires, souvent considérés comme leur principale menace.
Navigateurs et technologies détournées
Contrairement aux mineurs à base de logiciels malveillants, le cryptojacking ne nécessite pas d’infecter une machine. C’est à la fois une force dans le sens où il lui est potentiellement possible d’atteindre un public beaucoup plus large, mais une faiblesse car il reste de nature plus éphémère.
Par exemple, si un utilisateur quitte le site, il met un terme à l’activité minière, ce qui constitue un inconvénient majeur. Cependant, certains mineurs ont mis au point des méthodes sournoises pour que l’exploitation persiste, grâce à l’utilisation de pop-under, pratique bien connue dans le domaine de la fraude publicitaire. Particulièrement pernicieux, ces onglets « pop-under » malveillants qui contiennent le code minier se placent juste en dessous de la barre des tâches, ce qui les rends pratiquement invisibles pour l’utilisateur. Grâce à cette astuce, le minage peut continuer jusqu’au redémarrage de l’ordinateur.
Une autre façon de faire perdurer l’activité sans interruption consiste à utiliser une extension de navigateur piégée qui injectera du code dans chaque session Web. C’est ce qui est arrivé à Archive Poster parce qu’un de leurs développeurs a compromis les informations d’identification de son compte Google.
Il est intéressant de noter que JavaScript n’est pas la seule façon d’extraire de la crypto-monnaie dans un navigateur. En effet, WebAssembly, un format plus récent disponible dans les navigateurs modernes, est de plus en plus utilisé. Les modules WebAssembly ont l’avantage de fonctionner à une vitesse proche de la vitesse native, ce qui les rend beaucoup plus rapides et efficaces que JavaScript.
Alors que le drive-by mining se fait généralement via le protocole standard HTTP – soit via des connexions HTTP ou HTTPS – nous avons vu de plus en plus d’exemples de mineurs communiquant via WebSockets. Il s’agit d’un autre protocole de communication qui permet d’échanger des flux de données. Le code d’extraction enveloppé dans un WebSocket sécurisé est plus difficile à identifier et à bloquer.
Conclusion
Au fur et à mesure que le paysage des menaces continue d’évoluer, ses liens avec le monde réel deviennent de plus en plus évidents. Les créateurs de malwares ne profitent pas seulement de l’anonymat relatif fourni par les crypto-monnaies, mais veulent aussi les amasser !
Le cryptojacking est un bon exemple de la façon dont les pirates tirent parti de la taille et de la puissance d’un botnet pour réaliser des opérations de minage, sans avoir à en supporter les coût. L’exploitation de drive-by-mining repose sur le même concept, à la différence que le réseau botnet crée est essentiellement temporaire.
Bien que le cryptomining malveillant semble être beaucoup moins dangereux pour l’utilisateur que les ransomwares, ses conséquences ne devraient pas être ignorées. En effet, les mineurs non gérés peuvent sérieusement perturber les processus critiques des entreprises ou de l’infrastructure, en surchargeant les systèmes à tel point qu’ils deviennent inefficaces.