Les botnets : réseau de machines infectées

Les botnets sont des réseaux de machines (PC, routeur, IoT) infectés par des virus, trojans, vers etc et contrôlés par des cybercriminels.
Ces types de réseaux existent depuis plusieurs années, et encore plus depuis l’émergence des logiciels malveillants professionnels.
Certains sont mis à mal par les autorités et d’autres nouveaux voient le jour.

Cet article présente les botnets : le fonctionnement, type et historiques et enfin leurs démantèlements.

Notez que sur le forum, il existe déjà un topic sur le sujet: Les machines zombies / botnets

Les botnets : réseau de machines infectées



Généralité des botnets

Les botnets sont des réseaux de machines infectées contrôlés par un groupe de cybercriminel.
Ces machines (souvent des PC) peuvent être infectés par des programmes malveillants différents, mais au final, contrôlés par le même opérateur.
Le mot botnet étant la concaténation des mots robot et network.

Le but est de pouvoir envoyer les ordres aux machines infectées afin de pouvoir effectuer les opérations souhaitées.
Cela peut aller de lancer une attaque DoS, envoyer des mails de SPAM, miner, etc.
Ces machines peuvent être des PC, des routeurs, des serveurs etc.
Bref tout ce qui est susceptible de se connecter.
Les motivations sont diverses et abordées sur la page : Business malwares : le Pourquoi des infections informatique

En bref :

  • Voler des informations (mot de passes, documents, communications, sites visités);
  • Espionnages et traqueurs (capture d’écran, Capture de web, keylogger);
  • Hijacking manipuler des données
  • Activités illicites sur internet
    • envoyer des mails de spam
    • utiliser l’ordinateur comme un proxy/socks,
    • clickfraud (générer des clics sur les pubs),
    • miner etc.

Tous les chevaux de troie se connectent à un serveur afin que le pirate qui contrôle ce dernier puisse envoyer des ordres aux machines infectées.
Le fonctionnement des botnets ont changé dans le temps et se sont sophistiquées et complexifiées.
Cela afin de rendre leurs suivis de plus en plus difficile mais aussi leurs démantèlements.

Les botnet

Exemple de botnet

Backdoor IRC

Par exemple courant 2007, les infections MSN qui pullulaient utilisaient des serveurs IRC.
IRC est un protocole de communication et de chat.
Les pirates créaient des serveurs IRC.
Chaque machine infectée s’y connecte et joigne un channel de communication.
A partir de là, les botmaster peuvent envoyer des ordres aux machines infectées afin d’effectuer les opérations voulues.

Le nom générique de ces logiciels malveillants est : Backdoor.IRC

Botnet d'une Backdoor IRC diffusées par MSN

Parallèlement à Backdoor.IRC, des malwares plus sophistiqués.
Ces derniers font parti des menaces qui ont permis l’infection de milliers ou millions d’ordinateurs de par le monde.
La plupart fonctionne avec des serveurs WEB.
Le Trojan « ping » une page WEB en envoyant les informations (nom de la machine, pays etc).
Ceci alimente la base de données, le pirate se connecte à la partie administration du panel et peut ainsi gérer les machines infectées.

Zeus et SmokeBot

Quelques exemple avec Zeus ou Smokebot.
Ce fonctionnement avec des serveurs WEB est devenu un standard pour la plupart des botnet les plus importants.
Certains de ces panel WEB de gestion de botnet, peuvent être sur des sites WEB en HTTPs (sites sécurisés) avec des méthodes de communications sophistiquées, on y reviendra.

Smokebot : trojan et Botnet

Zeus : Trojan et botnet

Les Trojan RAT

Un dernier exemple avec les Trojans de type RAT (Remote Access Tools).
La gestion se fait à partir d’un programme, le pirate peut le faire tourner sur un serveur acheté à cet effet ou sur son propre ordinateur.

Ce qu’il faut aussi comprendre, c’est qu’un botnet est vivant.
Des machines le quittent après une désinfection ou formatage et de nouvelles machines infectées s’y connectent.
Les adresses des serveurs changent, car blacklistées par les antivirus, les hébergeurs peuvent aussi arrêter un serveur.
Bref, il faut au quotidien changer les adresses des serveurs auprès des machines composants le botnet.

Du côté des trojans & autres, il faut aussi mettre à jour le botnet afin que les antivirus ne puisse détecter les fichiers malicieux sur les ordinateurs.
De même, les droppers qui permettent l’infection de nouveaux ordinateurs sont repackés régulièrement pour contourner les détections des antivirus.
Cela nécessite donc des moyens et une organisation efficace, surtout dans le cas où le malware fonctionne avec des affiliations (mise en place d’API etc).

L’organisation, les compétences sont donc très importants pour maintenir un botnet de plusieurs milliers d’ordinateurs dans le temps.
Le malware en lui même et le panel de gestion peut aussi aider et faire gagner beaucoup de temps, en ayant la possibilité de créer des tâches planifiées etc.

Enfin un botnet doit être capables aussi de se défendre contre les ‘shutdown’ et rendre son analyse plus difficile.

Historique des botnet

Le monde des botnets a beaucoup évolué.
Il faut distinguer deux types de botnet, ceux gérés par une ou deux personnes dans leurs garages.
Bref des personnes non-professionnels, mais qui peuvent tout de même s’appuyer sur des logiciels malveillants plus ou moins sophistiqués récupérés à droite et à gauche.
Après la publication du code source de Zeus en 2011, des programmes tout fait comme Citadel ont pu être récupérés.
Ces derniers peuvent constituer des botnets de quelques milliers de machines.

A côté de cela, il y a les groupes structurés et professionnels.
Ces groupes se composent :

  • Les développeurs pour coder les packers pour passer outre les détections antivirus.
  • Maintenir l’infrastructure (serveurs, domaines etc) pour maintenir le botnet.
  • Le groupe qui s’occupe d’infecter les internautes, c’est à dire, distribuer diverses malwares afin de faire grossir le botnet
  • Les opérateurs, ceux qui gère le réseaux
  • La partie financier qui s’occupe de faire transiter les revenus obtenus à partir des infections.

La taille des botnets pour ces groupes professionnels ont pu alors atteindre des centaines de machines infectées.
Les méthodes de propagation ont aussi beaucoup aidé, ainsi les ver informatique (worm) ont touché beaucoup d’ordinateurs de part le monde.

2007 : Storm botnet

Peacomm / Nuwar / Zhelatin/Storm worm est un botnet constitué début 2007 par des envoies massifs de mails piégés.
Le nom Storm Worm vient du fait, que les premiers mails massifs ont utilisé comme sujet la tempête qui a touché l’Europe en Janvier 2007.

Storm est le premier botnet le plus massif avec environ 1 à 10 millions d’ordinateurs.

A noter aussi, Trojan.DNSChanger, avec aussi plusieurs millions d’ordinateurs dans les années suivantes.

2009 : Conficker

Conficker aka Worm.Downadup  est un ver informatique (worm) qui utilise les médias amovibles et des services réseaux vulnérables pour se propager.
Conficker aurait infecté 15 millions d’ordinateurs.
Le pic d’activité aurait été de 3 à 4 millions d’ordinateurs contrôlés par le groupe derrière ce ver informatique (worm).

Mars 2009, une opération conjointe de Microsoft et de multiples entreprises (Symantec, Arbor etc) ont mis à mal le botnet Conficker.
L’opération se termina mi-Avril.

2009 /2012 : Spambot

Les botnets les plus importants, tous ont servi envoyer des emails de spam.
Les années les plus actives sont 2009/2012 avec l’ère des grands botnets.
Certains botnet comme Cutwail ou Gheg sont encore actifs. Ces derniers peuvent avoir été shutdown, mais ont été recréés ou repris plus tard avec de nouvelles versions des trojans.

Malware / Botnet Taille du botnet (au meilleur) Année
Rustock 540 000 à 810 000 2006 à 2010 – shutdown : Operation b107
Cutwail (Pushdo / Pandex) 1 100 000 à 1 600 000 2007 – encore actif
Bagle 520 000 à 780 000 2004 à 2012
Srizbi environ 450 000 2007/2008
Grum (Tedroo) 580 000 à 860 000 2008 – Takedown 2012
Maazben 240 000 à 360 000 2009
Bredolab (Oficla) ~220 000 2009 – down en 2010 par les autorités Allemandes. Le botmaster, un arménien est arreté et condamndé à 4 ans de prison.
Lethic 210 000 – 310 000 2008 – semi-down en 2010
Festi 140 000 à 220 000 2009
Donbot (Buzus) ~125 000 2010 – Sinkhole en 2012 mais revenu
Kelihos (Possible suite de Waledac) ~120 000 2009 – Voir Waledac
Bobax (Kraken/Oderoor/Hacktool.spammer) 110 000 à 160 000 2004
Waledac ~90 000 2008 – 2010 – TD par Microsoft
Retour en 2012
TD début 2017+arrestation
Mega-D (Ozdok) 50 000 à 70 000 2009 – down en 2009 par FireEye, remis en ligne un mois après.
Gheg (Tofsee/Mondera) 50 000 à 70 000 2013
Xarvester (Rlsloup/Pixoliz) 20 000 à 36 000 2010

Les premières opérations de démantèlement de ces botnet ont commencé avec Rustock 2010.
Ceci a permis de faire baisser le volume de SPAM de manière significative.
D’autres ont suivi, nous y reviendront.

2010-2013 : Ponmocup, TDSS & ZeroAccess

2010, le botnet TDSS aka Alueron est créé
Différentes variantes apparaissent TDSS TLD-3, TLD-4.
Les PC infectés par TDSS pouvaient servir de proxy, vendu 2$ à 25$ la journée, mais aussi généré du clickfraud.

Progressivement TDSS disparaît au profit du malware ZeroAccess.

ZeroAccess aka Sirefef est un malware et botnet apparu courant 2011.
Le but du botnet est de miner (générer des bitcoins) et des clickfraud.
En 2012, la taille du botnet ZeroAccess est estimé à 1 million d’ordinateurs, d’autres parlent de 2,2 millions d’ordinateurs.
La communication du botnet se fait en P2P.
2013, une opération coinjointe d’Europol (EC3), du FBI, et d’autres industries comme Symantec et A10 Networks Inc. ont mise à mal le botnet ZeroAccess.
Voir : ZeroAccess / Sireref sinkhole par Symantec puis.. se réveil

Pour les opérations de démantèlements de ZeroAccess, lire : http://news.microsoft.com/2013/12/05/microsoft-the-fbi-europol-and-industry-partners-disrupt-the-notorious-zeroaccess-botnet/

Les botnet en 2011

2011, abuse.ch a publié des tailles de botnet suite à des sinkhole : https://www.abuse.ch/?p=3294
Ceci sont des estimations, on apprend :

Botnet tailles et statistiques

Botnet tailles et statistiques

puis Artro estimé à environ 160k IPs.
Artro aka Renos / Trojan-Downloader.Win32.CodecPack (Kaspersky). : Renos/Zlob : « you have a security problem » : codec.xxx.exe est lié aux Rogues/scarewares.
Kaspersky a publié une longue analyse sur Arto aka « The advertising Botnet » : https://securelist.com/analysis/publications/35962/the-advertising-botnet/
Le botnet étant spécialisé dans le clickfraud et la génération de bitcoin.

Et enfin Ponmocup aka Swisyn, Changeup d’après le post d’abuse.ch
Mais Changeup = Trojan.Vobfus / Beebone (qui a d’ailleurs subi une opération Europol Vobfus / W32.Changeup / Beebone : opération Europol) donc je pense que le nom Changeup et incorrect.

Botnet tailles et statistiques

Il semblerait que Ponmocup soit Vundo/Virtumonde, qui a été effectivement très très actif pendant plusieurs années.
1,2 millions d’IPs ci-dessous.
Dans certaines analyses, on parle de plus de 2 millions de PC infectés : des packs d’infections pouvaient installés plusieurs de ces malwares : Pack : Vobfus, Gbot/Cybot et ZeroAccess par P2P

Quelques autres botnets, la plupart sont des AdFraud et peuvent générer des bitcoins :

Malware / Botnet Taille du botnet (au meilleur) Année
Bamital 120 000 2010 – down en 2013 par Microsoft et Symantec
Koobface 40 000 – 60 000 (?) 2008 – 2012
Sality 12 000 2003 – P2P en 2010

2015 – botnet Trojans Banker

La répartition des botnets de Trojan Banker en 2015. Sachant, les trojans banker sont bien sûr antérieure.
Par exemple, le plus actif Zeus est apparu en 2007, le code source a été publiée en 2011.
Il s’agit plutôt ici d’une répartition des types de Trojan, car tous ces différents botnets ne sont pas contrôlés par les mêmes groupes.

En effet, le modèle est différent, le malware Zeus ainsi que d’autres Trojan Banker pouvait être acheté et des groupes pouvaient ensuite créés leurs botnets ou infecter des ordinateurs ciblés.
Il n’empêche qu’en 2009, le FBI estime que plusieurs millions d’ordinateurs ont pu être infecté par ce Trojan Banker.
En 2010, Plus de 90 personnes suspectées d’appartenir au réseau sont arrêtés aux États-Unis mais aussi au Royaume-Uni et en Ukraine.
Le code source a permis la création de nouveaux trojans banker, la dissémination et les attaques ont pu continuer.

Pensez aussi qu’un groupe peut faire installer deux trojans Banker différents et/ou faire installer Zeus pour voler des informations puis faire joindre TDSS/ZeroAccess en étant payé sur le volume envoyé vers ce botnet.

2016 : Necurs, Methbot, Bedep, Mirai etc

Necurs est un botnet très important, on estime sa taille à environ 1.1 millions de bots.
Necurs est très utilisé pour des campagnes d’emails malicieux, notamment par les groupes derrières le Trojan Dridex et le Ransomware Locky.
Le 1er Juin 2015, un serveur de contrôle a été sinkhole, le botnet a été arrêté pendant quelques jours.
Necurs fonctionne en P2P avec des DGA, nous y reviendrons.

Le volume de spam malicieux est tel, qu’on assiste à un retour au volume de spam de 2010.

Volume de spam provenant de botnet
source : abuseat.org

Bedep est aussi un trojan et botnet très actif.
Il s’agit d’un Adfraud et clicfraud, c’est à dire qu’il va charger des publicités et simuler des clics.
Dans le sujet ci-dessous, la taille du botnet est estimé à 80 000 machines.
Google parle lui plutôt de 300 000 machines.
Cumulé à d’autres botnets de type AdFraud, Bedep, Beetal et Changthangi auraient infectés plus de 500,000 machines (Smartphone, tablettes et ordinateurs).

La taille du botnet bedep

Enfin, un botnet atypique Methbot qui utilise des serveurs dédiées pour charger des publicités.
Le botnet serait composés de plus de 500 000 IPs permettant de générer 200 à 300 M d’hits par jour.
Les informations des IPs sont modifiées pour se faire passer pour des IPs résidentielles, plus d’informations : Methbot : 570,000 IPs et 3M/$ par jour
Cela place Methbot loin devant ZeroAccess en terme de revenu.

Les botnet les plus importants

botnet IOT

Autre élément, les botnets IoT qui font de plus en plus parler d’eux et pointent du doigt les problèmes de sécurité autour des objets connectés.
Lire notre dossier sur ces aspects : Internet des objets (IoT) et sécurité

Mirai est le premier botnet de ce type à faire beaucoup parlé de lui, il est à l’origine d’attaque DoS les plus volumineuses à ce jour.
Mirai a été utilisé dans l’attaque DDoS du 20 septembre 2016 contre le site Krebs on Security  qui a atteint 620 Gbps. Ars Technica rapporte aussi une attaque de 1 Tbits/s contre l’hébergeur français OVH.
Le 21 octobre 2016 plusieurs grandes attaques DDoS à l’encontre des services DNS de l’entreprise Dyn ont été réalisées grâce à des botnets Mirai, entraînant des difficultés pour accéder à des sites tels que GitHub, Twitter, Reddit, Netflix, Airbnb et beaucoup d’autres
Mirai est composé de routeurs, de caméras non sécurisés, il s’agit simplement d’effectuer des attaques Brute-force pour obtenir des accès administrateur. Tous ces objets, ayant leur panel de gestion administrateur accessible depuis internet avec les mots de passe par défaut.

Il existe d’autres vers visant les routeurs assez professionnels, il ne faut pas les négliger, exemple : Linux/Rakos & Linux/Moose

2017 : statistiques de botnet

Des statistiques autour des botnet en 2017 sont disponibles sur la page suivante : Spamhaus Botnet Threat Report 2017

botnet en 2017 statistiques

Mode de communication des botnet

Les modes de communications des botnet ont évolués et se sont sophistiqués dans le temps.
Les pirates cherche à rendre leurs études et l’estimation de la taille la plus difficile possible, il faut aussi se protéger des démantèlements.

On appelle Control Command (C&C), le ou les serveurs qui permettent le contrôle.
En effet le malware s’y connecte et le botmaster configure les ordres.
Le protocole interne, dialogue entre le client/serveur ou noeuds est propre à chaque botnet.
Il convient donc aux éditeurs de sécurité d’étudier ce dernier et de développer un outil afin de reproduire la communication.
On peut alors se faire passer pour un ordinateur infecté s’ils désirent suivre un botnet en particulier.

Vous trouverez des exemples sur la page : Comment fonctionnent les trojans

Client / Serveur

Les connexions clients et serveurs sont les plus simples, même s’il peut y avoir des formes plus complexes.
L’ordinateur infecté, possède ou génère l’adresse des serveurs et s’y connecte.
La communication peut alors se faire en HTTPs, avec par exemple des GET/POSTs ou dans un protocole propre au malware.

Zeus par exemple et la plupart des Trojan Banker fonctionnent de cette manière.
L’adresse du fichier de configuration est stocké dans le binaire.
Une fois installé, le malware s’y connecte.
Notez que le fichier de configuration peut-être stocké dans une image (sténographie – voir les virus dans les images)
Le trojan déchiffre le fichier de configuration qui contient les adresses du serveur de contrôle (C&C ou C2s) ainsi que les informations des sites de banques à attaquer.
Le malware Zeus s’y connecte et s’enregistre. Le botmaster peut alors contrôler le PC infecté.

Les backdoor IRC évoquées plus haut fonctionnent de manière similaire.
L’adresse du ou des serveurs est contenu dans le binaire, une fois lancé sur le PC infecté, le malware s’y connecte.
Le botmaster peut faire joindre un channel ou le channel est aussi contenu dans le Trojan.
Le botmaster peut alors envoyer les ordres.
La communication entre le client/serveur peut-être chiffrée.

Le modèle client/serveur est un modèle centralisé, puisque les bots se connectent à un ou plusieurs serveurs.

Voici un schéma, d’un cas simple avec un seul serveur C&C, bien entendu, le malware peut pointer sur plusieurs C&C serveur.

source https://www.malwaretech.com/2013/12/peer-to-peer-botnets-for-beginners.html

C&C et C2S : serveurs de contrôle du botnet. Le pirate peut alors envoyer des instructions aux PC infectés.
Ces dernier sont cruciaux car si les cybercrminels n’ont plus de C2s alors ils perdent le contrôle du botnet.
En général, il existe plusieurs serveurs.
Plus bas, vous trouverez des méthodes qui permettent d’éviter la perte de contrôle d’un botnet.

P2P

Peer-to-Peer (P2P) est un système de communication décentralisé où les bots communiquent entre eux.
Le but est d’être plus résistant au shutdown, c’est à dire la mise hors ligne des C&C qui peuvent rendre le botnet inaccessible.

Le modèle est le suivant, des noeuds (node) composés de machines avec une bande passante conséquentes, n’étant pas derrière un pare-feu/routeur, servent de serveurs.
Ces derniers garde et maintiens une liste à jour de plusieurs dizaines d’autres noeuds. Chaque bots se connectent à un noeuds et récupèrent cette liste.
Ainsi donc, chaque bot se connecte à un groupe de noeuds.
Les noeuds donnent aussi les ordres aux bots par le botmaster.
La communication entre chaque bots et noeuds peut se faire de manière chiffrer à l’aide de clef public et privée.

Lorsqu’un nouvel ordinateur est infecté et doit joindre le botnet P2P, l’ordinateur doit connaître au moins l’adresse d’un noeud.
Soit le binaire embarque une liste récente, les pirates doivent donc mettre à jour régulièrement les binaires.
Soit la liste peut-être fournit par un ou plusieurs serveurs externes (bootstrapping servers).
Ainsi donc, si tous les « bootstrapping servers » sont mis hors ligne, cela empêche de nouveaux ordinateurs de joindre le botnet mais celui-ci est encore en vie à travers les noeuds.

Exemple de la structure d’un réseau P2P du botnet Waledac

Le botnet P2P Waledac
source Symantec

Un des premiers malwares à utiliser le P2P est Zeus.
Par la suite, beaucoup de botnet sont passés à ce mode de communication dont les plus importants comme TDSS ou ZeroAccess.

Zeus P2P Botnet
source https://www.abuse.ch/?p=3499

Résilience des botnets

Le but est des pirates est de maintenir leur botnet le plus longtemps possible.
La longévité et résilience de leurs botnets dépend de la complexité de ce dernier à être mis hors ligne et de passer inaperçu des éditeurs d’antivirus.

Si un botnet utilise une adresse unique et un seul serveur, vous l’aurez compris, il suffit de mettre l’adresse ou le serveur hors ligne afin que tout s’écroule.
Le but est donc de complexifier la structure afin que le mise hors ligne, le soit le plus possible.

Fragmenter un botnet est une première méthode. Auparavant, un malware joignant un seul et unique botnet.
Il est possible de fragmenter le botnet en plusieurs sous-botnets. Le but étant de rendre le suivi plus difficile. On est aussi à l’abri d’une mise hors ligne complète.

Voici quelques mécanismes utilisées afin de rendre un botnet plus robuste.

Fast Flux DNS

Le Fast Flux DNS consiste à faire pointer plusieurs IPs à une même adresse.
L’IP retournée est alors différent lors de la résolution DNS retourné.

Voici un exemple d’adresse utilisant un Fast Flux :

Fast Flux DNS

Vous l’aurez compris, une telle méthode permet, si un serveur est mis hors ligne, d’avoir au moins un autre serveur encore vivant.
Ainsi le botmaster ne perd pas son botnet.
Il peut alors remplacer le serveur hors ligne par un autre.
On peut alors avoir plusieurs adresses utilisant le fast flux DNS afin de dé-multiplier les difficultés de mises hors ligne.

Dans ce cas précis, pour mettre hors ligne le botnet, il faut :

  • sinkhole le domaine. Les serveurs DNS du domaine étant le point faible.
  • mettre hors ligne tous les serveurs au même moment.

Une des limites de ces méthodes est que le domaine utilisé est, en général statique, ainsi les antivirus peuvent blacklister ce dernier rendant la communication client/serveur inopérant même si le trojan (fichier) est encore actif sur l’ordinateur infecté.

DGA

DGA (Domain generation algorithms) est un algorithme qui permet de générer des dizaines à des centaines de milliers de domaines différentes (adresse internet) par jour.
Certaines de ces adresses seront enregistrées par les botmasters et utilisaient comme « point de rendez-vous » pour se connecter aux C&C.
En clair donc, ces adresses et potentielles serveurs, servent de de relais pour donner les adresses des C&C.

Le but est de rendre le suivi d’un botnet et son shutdown beaucoup plus difficiles, car il oblige à reproduire l’algorithme pour prédire les nouvelles adresses WEB générées et suivent ces dernières.
Cela demande aussi une coordination importantes entre tous les acteurs pour mettre toutes les adresses hors ligne à un instant T.
Par exemple, Conficker.a and .b pouvaient générés 250 domaines par jour. La variante Conficker.C allaient jusqu’à 50 000 adresses par jour.

De plus, ces commandes de mises à jour dans ces « point de rendez-vous » utilisent un chiffrement asymétrique.
Cela permet d’empêcher les autorités d’utiliser un point de rendez-vous pour envoyer des informations de mises à jour erronées.

L’utilisation d’un « point de rendez-vous » n’est pas obligatoire, la connexion peut se faire directement au C&C.
Les « points de rendez-vous » peuvent aussi servir de backup, dans le cas où le C&C n’est pas accessible.

DGA du Trojan et botnet Bamital
DGA – Trojan Bamital – source : http://www.symantec.com/content/en/us/enterprise/media/security_response/whitepapers/trojan_bamital.pdf

Complexifier le botnet

L’idée derrière est aussi de laisser le C&C le moins longtemps en ligne ainsi que tout l’infrastructure.
Les bots se connectent au C&C puis reçoivent les ordres.
Tout est mis en ligne, l’espace d’une heure.

Enfin l’avantage est que les antivirus ne pourront pas blacklister les adresses utilisées puisque celles-ci changent très régulièrement.

Il est cependant possible de détecter une infection par le nombre de résolutions DNS vers des adresses inexistantes.
Si un malware actif génère 1000 domaines par heure, 99% seront probablement inutilisées.
Un logiciel de protection peut détecter ces résolutions DNS et avertir l’utilisation.

BlockChain

En 2019 le malware Glupteba Malware utilise la blockchain Bitcoin pour mettre à jour les domaines des serveurs C2.
Ainsi si les C&C tombent, une mise à jour du script Bitcoin permet de générer de nouveaux serveurs C&C.
Cela participe à renforcer le botnet.

Botnet Tor

Une autre méthode est la dissimulation à travers des C&C sur le réseau Tor.
Le suivi est rendu plus difficile, puisque les communications au sein du réseau Tor sont chiffrées.
Le serveur C&C peut-être caché derrière une adresse .onion et une adresse IP au sein du réseau TOR rendant l’identification plus difficile.
En outre, l’adresse .onion peut-être facilement changé.
Enfin, les adresses .onion ne peuvent être sinkhole.

Le seul désavantage est la latence du réseau TOR. Des botnets massifs peuvent éventuellement être difficiles à gérer par cette méthode.

Démantèlement de botnet

Dans le sujet Trojan.DNSChanger, j’avais déjà évoqué le démantèlement de ce botnet.
Ceci c’était fait à travers la saisie de serveurs et l’arrêt de registrar/hébergeur qui était utilisé par des cybercriminels et les botmasters.

L’autre plus démantèlement le plus retentissement est l’arrêt du botnet Rustock, environ 800 000 bots.
Rustock était la source de la moitié du SPAM mondial avec un volume d’environ 200 millions de mails de SPAM par jour.
Après avoir mis hors ligne, le botnet Waledac, Mars 2011, Microsoft avec d’autres sociétés de sécurités dont FireEye et les autorités ont saisi tous les serveurs utilisés par le botnet, à travers l’Operation b107.
Rustock utilisait une communication P2P mais les adresses des serveurs étaient hardcodé (c’est à dire en dur dans le code du malware).
La majorité des serveurs étaient aux USA et deux aux Pays-Bas, ce qui a facilité leurs saisies.

La chute du SPAM mondial s’est alors fait ressentir du jour au lendemain :

Démantèlement du botnet Rustock

L’année 2010 a vu beaucoup d’opération qui ont mis à genoux certains botnets, certains ont survécu, d’autres non.
Parmi les botnets touchés : Lethic, Zeus, Mariposa, Waledac et Pushdo.

2013, Microsoft s’attaque à des réseux Citadel (Trojan Banker) à travers l’opértation b54. 4000 domaines sont saisies.
1’400 Citadel botnets sont mis hors ligne.

Les concepteurs de botnet vont donc tenter de rendre le suivi et le démantèlement plus difficile à travers les mécanismes évoquées précédemment.

Régulièrement de nouvelles opérations ont lieu : Démantèlement d’Avalanche, centre névralgique du cybercrime

Méthodes utilisées

La saisie de serveurs est donc la première méthode pour mettre à mal un botnet.
Cela est d’autant plus facile, si les serveurs se trouvent dans des pays occidentaux, car la coordination pour effectuer la saisie en même temps est d’autant plus facile.

Une autre méthode est le sinkhole, il s’agit de modifier les DNS des domaines utilisés par le botnet.
Le DNS étant contrôle par les autorités ou sociétés de sécurité, il est alors possible de faire pointer le domaine vers une adresse null comme : 0.0.0.0 ou 127.0.0.1.
Les bots ne pourront plus se connecter aux C&C.

Le DGA rend cette méthode plus difficile voire impossible.

Perturber ou mettre à mal les botnets P2P est techniquement possible, si le botnet n’a pas de protection.
Cela consiste à infiltrer le botnet et envoyer des IPs incorrectes comme noeud. Cela peut perturber fortement le fonctionnement du botnet.

Par exemple en 2019, la gendarmerie nationale a mis hors ligne le botnet Retadup : Retadup malware : démantèlement d’un botnet
Ils ont dupliqué un des serveurs de contrôle et mis hors ligne les autres.
Cela a permis de prendre le contrôle du botnet.
Enfin ils ont fait télécharger et exécuter un programme de désinfection.

Glossaire

  • botnet : réseaux de machines infectées
  • botmaster : pirate ou groupe qui contrôle le botnet – on peut aussi parler d’opérateur.
  • C&C (Control Command) ou C2s : serveur de contrôle où le malware se connecte, ainsi que le botmaster pour contrôler son botnet
  • DGA (Domain generation algorithms) : algorithe de génération de domaine utilisés par le malware pour communiquer avec les serveurs de contrôle (C&C)
  • Dropper : Trojan qui permet l’installation de la charge utile dans l’ordinateur, le dropper peut-être un Trojan-Downloader qui télécharge le Trojan ou les deux peuvent être confondus.
  • Packer / Cryptor : méthode qui permet de cacher le code malicieux à travers des méthodes de compressions (un peu de la même manière que les zips auto-exécutables). Lire les Packers/Cryptors.

Liens liés aux virus informatiques