Des chercheurs d'Akamai qui suivaient un botnet depuis environ deux ans ont observé qu'il avait adopté une nouvelle astuce de survie : lorsque son serveur de commande et de contrôle est sinkholé — la manœuvre défensive standard consistant à prendre le contrôle de l'infrastructure C2 —, les machines infectées trouvent l'adresse IP du serveur de secours encodée dans la blockchain bitcoin.
L'encodage est minimal et exact : les deux transactions les plus récentes d'un portefeuille choisi par les opérateurs portent l'adresse sous forme de valeurs en satoshis, soit un cent millionième de bitcoin. Le malware convertit chaque valeur en hexadécimal, la découpe en octets et réassemble quatre octets — 36 305 satoshis devient 209.141, 6 957 devient 45.27, pour un secours actif à 209.141.45.27. Le registre est décentralisé, donc contrairement aux canaux de secours traditionnels, il n'existe aucune autorité centrale à démanteler, censurer ou bloquer.
Akamai a déclaré n'avoir jamais vu auparavant un botnet en conditions réelles utiliser ainsi une blockchain décentralisée, bien qu'un serveur de commande de preuve de concept basé sur Ethereum ait existé dans la recherche. Les criminels avaient déjà utilisé des canaux dissimulés — VPNFilter, déployé par des pirates soutenus par le gouvernement russe contre 500 000 routeurs en 2018, cachait ses pointeurs de serveur dans des données GPS à l'intérieur d'images Photobucket — mais ces plateformes pouvaient être convaincues ou contraintes de coopérer ; la blockchain, non.
Utiliser un registre public indémantelable comme carnet d'adresses de secours : encoder une IP de C2 sous forme de valeurs en satoshis dans des transactions bitcoin ordinaires.
Le sinkholing consiste à couper ou à saisir un serveur ; une note stockée dans le registre survit à toute saisie.
Les transactions bitcoin sont une activité économique ordinaire, indiscernables du bruit d'un portefeuille pour un observateur extérieur.
Seuls les opérateurs ont besoin d'un accès en écriture ; chaque machine infectée ne fait que lire la chaîne publique.
La décentralisation supprime le dernier recours consistant à faire pression sur un hébergeur ou une plateforme pour qu'il supprime.
Tout magasin de données public et immuable devient une infrastructure pour quiconque a besoin de permanence — le manuel de démantèlement des défenseurs suppose un bouton de suppression que la blockchain n'a pas.
Suites
Akamai a publié l'analyse en février 2021, rendant publique la technique — et ses limites, comme le portefeuille observable. Les chercheurs ont noté que la preuve de concept sur Ethereum montrait que l'approche se généralise à d'autres chaînes ; le jeu du chat et de la souris autour de l'infrastructure des botnets s'était simplement déplacé vers un registre sans touche de suppression.
VÉRIFIEZ LES SOURCES
Les sources
- The bitcoin blockchain is helping keep a botnet from being taken down Ars Technica · arstechnica.com ·