Comment prendre le contrôle d’une dizaine de botnets russes par erreur

Coucou tout le monde,

Avant de commencer, j’aimerais profiter de ma petite notoriété afin de réciter un petit poème que j’ai écrit spécialement pour l’occasion:

Les roses sont rouges
Les violettes sont bleues
Je ne suis en aucun cas responsable
si la mafia russe vient chez toi

Ceci étant dit, nous pouvons enfin commencer !

1°) Le contexte

[ADRESSE_IP] — [07/Apr/2019:18:01:28 +0100] « \x03\x00\x00/*\xE0\x00\x00\x00\x00\x00Cookie: mstshash=Admin » 200 173 « – » « -« 

Comme tout bon article qui se respecte, celui-ci commence par une étrange ligne. On peut constater que la requête est bien différente des requêtes classiques:

[ADRESSE_IP] — [07/Apr/2019:18:01:28 +0100] « /index.html » 200 18 « – » « – »

Cette différence peut essentiellement signifier deux choses: soit la requête est malformée, soit il s’agit d’une attaque.

Le serveur web étant administré par un ami, il me demande mon avis sur la question car il est en effet très intrigué par le code de réponse « 200 » à la fin qui veut tout simplement dire que la requête a bien aboutit.

Le truc, c’est que si la requête était malformée, elle n’aurait jamais comportée de caractères bien formées car étant justement malformée. Partant de ce principe là, il était clair pour moi qu’il s’agissait là d’une attaque qui pouvait avoir tout à fait réussie d'ailleurs.

2°) Un peu de reconnaissance…

On se met alors à se renseigner sur l’adresse IP de l’attaquant car c’est basiquement tout ce que l’on avait à ce stade. Allez savoir pourquoi mais il s’agissait d’une adresse localisée en Russie 🤠🇷🇺

L’adresse n’était pas signalée dans les listes publiques et affichait fièrement un site IIS8 par défaut lorsqu’on l’entrait dans le navigateur:

il faut le reconnaître ce site a beau être un site par défaut il a quand même fière allure 🤠

Par simple curiosité je lance un petit scan de ports pour connaître les services qui pourraient tourner sur le serveur. Cela me permettrait ainsi d’avoir petite une idée de son utilité.

Voici le résultat du scan:

Starting at 2019-04-08 20:49 UTC
Nmap scan report for [ADRESSE_IP]
Host is up (0.019s latency).
Not shown: 989 closed ports
PORT     STATE    SERVICE       VERSION
135/tcp  open     msrpc?
139/tcp  filtered netbios-ssn
445/tcp  open     microsoft-ds  Microsoft Windows Server 2008 R2 - 2012 microsoft-ds
1025/tcp open     tcpwrapped
1026/tcp open     LSA-or-nterm?
1027/tcp open     msrpc         Microsoft Windows RPC
1028/tcp open     unknown
1029/tcp open     ms-lsa?
1030/tcp open     iad1?
1031/tcp open     unknown
1034/tcp open     zincite-a?
3389/tcp open     ms-wbt-server Microsoft Terminal Service
Service Info: OSs: Windows Server 2008 R2 - 2012, Windows; CPE: cpe:/o:microsoft:windows

3°) Le « Hack Back »

Dans le vocabulaire de la Cyberguerre il y a ce mot qui revient assez souvent et qui a été notamment popularisé par le décret signé l’année dernière par Donald Trump (le fameux "Active Cyber Defense Bill"). Ce décret stipulait entre autres que les États-Unis se réservaient le droit d’effectuer un « Hack Back » s’il constataient qu’une de leurs institutions était la cible d’une attaque informatique.

Mais qu’est-ce que ce mot veut dire concrètement ?

En réalité c’est simple comme bonjour, un "Hack Back" c’est lorsque la victime d’une attaque répond en attaquant en retour l’attaquant. Sur le moral de l’attaquant, un Hack Back est aussi dévastateur qu’imprévu.

Une démonstration de ce qu’est un Hack Back dans la nature 🤠

Pourquoi est-ce que je parle de Hack Back ? Revenons aux résultats du scan, il y a une quantité non négligeable de services actifs sur ce serveur dont un qui a tout particulièrement semé le chaos au sein d’une entreprise dans un précédent article (ici).

Les habitués du site l’ont sûrement deviné, je veux bien sûr parler de:

445/tcp  open     microsoft-ds  Microsoft Windows Server 2008 R2 - 2012 microsoft-ds

Il s’agit de Samba, opérant par défaut sur le port 445 et servant essentiellement au partage de fichiers entre plusieurs ordinateurs. C’est d’ailleurs grâce à samba que l’on peut faire des trucs cools comme ceci:

Un protocole pour les gouverner tous, un protocole pour les trouver.
Un protocole pour les amener tous et dans les ténèbres les lier 💍

Malheureusement, depuis 2017, Samba est aussi connu pour être particulièrement vulnérable. Par exemple, avec la faille nommée « EternalBlue« , on peut faire planter un Windows exécutant une ancienne version de Samba:

Le fameux BSOD de WIndows ou écran bleu de la mort en bon français 🤠

Autre exemple un peu plus effrayant, la faille « EternalRomance » toujours sur Samba qui permet à un attaquant de carrément prendre le contrôle d’un ordinateur si Samba n’est pas à jour.

Vous savez, dans les films il y a parfois ce moment où il y a un arrêt sur image avec une voix-off qui commence à nous dire quelque chose du type: « Et c’est à ce moment là que tout est parti en cacahuètes ! » Et bien là on y est, c’est à ce moment là que tout est effectivement parti en cacahuètes !

Avec tout ça en tête, je me dis que je vais quand même lancer un dernier scan juste pour signaler serveur comme un étant un vilain serveur, mais sans plus. Fait absolument véridique, en voulant lancer le dernier scan, je me suis trompé de script et à la place j’ai lancé le script d'exploitation d'EternalRomance, ce qui m’a donné ce résultat:

Attendez, quoi ?!

Pour ceux qui n’ont pas l’habitude de Metasploit, il semblerait ici, que non seulement l’attaque via EternalRomance ait fonctionné mais qu'en plus elle m’ait permis d’avoir carrément accès non pas à la session d'utilisateur mais carrément à celle de l’administrateur du serveur.

Il faut dire que pour le coup, même si j’étais terriblement excité de savoir à quoi ressemble un véritable serveur de contrôle et de commande russe en production, j’avais aussi légèrement un peu la trouille car j’étais pour ainsi dire entré dans la tanière du loup.

Je lance alors la commande « screenshot » qui comme son nom l’indique permet d’avoir une capture d’écran du bureau du serveur:

Oh! C’est donc à ça que ressemble l’envers du décor ? 😮

Comme on peut le voir sur la capture, l’hôte doit probablement servir serveur C&C pour plusieurs réseaux d’ordinateurs zombies (botnets). En tout cas, cette hypothèse pourrait expliquer la présence d’autant de ports ouverts lors du précédent scan de ports.

Si on part du principe qu’il y aurait un centre de contrôle par ports, cela voudrait dire que ce serveur contrôle au total 9 botnets (écoutant ainsi sur les ports 80,1025,1026,1027,1028,1029,1030,1031,1034). Ça pourrait en effet faire sens car la plupart des ports d’écoute se suivent et c’est assez rare pour être souligné.

Quoiqu’il en soit à ce stade, nous avions assez de contrôle sur le serveur pour éteindre une bonne fois pour toutes, tous les botnets contrôlés par le pirate.

En effet, les logiciels malveillants qui avaient été utilisés par le hacker ont tous une fonctionnalité qui permet « d’annuler » l’infection d’une machine. Ce qui aurait pour conséquence le démantèlement simple et définitif des différents botnets, libérant au passage toutes les machines infectées.

Nous avons simplement choisi de ne pas le faire.

Votre réaction à ce moment-là de l’article 🤠

En effet, éteindre une dizaine de botnets parmi le nombre de botnets qu’il y a sur Internet serait comme enlever un verre d’eau à l’océan. En plus, le hacker pourrait toujours refaire d’autres botnets ailleurs. Et puis, même si l’acte en lui-même pourrait paraître louable à première vue, il y a cette petite note qui fait que non… voire pas du tout en faite, vu que c’est même condamnable:

Article 323.1

Le fait d'accéder ou de se maintenir, frauduleusement, dans tout ou partie 
d'un système de traitement automatisé de données est puni de deux ans 
d'emprisonnement et de 60 000 € d'amende.

Lorsqu'il en est résulté soit la suppression ou la modification de données
contenues dans le système, soit une altération du fonctionnement de ce 
système, la peine est de trois ans d'emprisonnement et de 100 000 € 
d'amende.

Lorsque les infractions prévues aux deux premiers alinéas ont été commises
à l'encontre d'un système de traitement automatisé de données à caractère 
personnel mis en œuvre par l'Etat, la peine est portée à cinq ans 
d'emprisonnement et à 150 000 € d'amende.

Comme nous ne sommes pas habilité par l’État à réagir, la meilleure chose à faire selon la loi était donc de simplement signaler l’infraction aux autorités compétentes.

Il est toutefois à noter que même si nous avions signalé l’infraction il y a 4 mois, le serveur est toujours en ligne et opérationnel (d’où la censure des adresses IP pour éviter que des petits margoulins ne jouent aux apprentis hackers).

À la limite, le serveur est maintenant répertorié par Shodan

Conclusion

Je risque de me répéter mais je trouve ça vraiment dommageable que la loi soit aussi lourde. Si une sorte d’ordonnance pouvait être délivré pour légaliser le Hack Back *éthique* et non « prétextuel » comme selon moi celui des États-Unis, je pense honnêtement que ça serait une avancée considérable dans nos sociétés hyper connectées où les atteintes à notre vie privée sont trop souvent monnaie courante, ce qui rend la tâche de l’OCLC ou de la Gendarmerie nationale encore plus difficile qu'elle ne l'est déjà

Sérieusement, imaginez un monde, où les vilains hackers du web ne serait plus les prédateurs mais les proies. Imaginez un monde où répandre le chaos et la désolation sur les systèmes d’informations simplement au nom du fait que ça soit stylé de le faire ne le soit plus, du moins pas aussi cool que de faire la chasse aux vilains pirates. Imaginez un monde où xXkilleurdu38Xx n’attaquerait plus la connexion de Darbixdu62 sur Minecraft juste parce que je cite « Oue ba moi chui un hacker, l’aute jour j’ai hack le site de mon collège donc tg » dixit l’individu qui a simplement surchargé sa propre connexion.

Je rêverais d’un monde pareil ! Enfin bref, en attendant que ce monde devienne réalité, vous pouvez toujours partager l’article s’il vous a plus, c’est très important. Vous pouvez aussi me suivre sur le nouveau twitter du blog pour ne rien rater !

D’ici là, portez-vous bien, soyez aimable avec votre plancton domestique et à très vite !