On décortique Zeus, le malware le plus hardcore jamais découvert

Virus, malware, trojan, ver… plein de noms pour plein de saloperies différentes.

Les différences entre tous ces trucs peuvent paraître un peu subtiles, mais si vous vous intéressez au hacking, vous devez les connaître. Pour faire simple :

  • Un virus vient généralement se greffer à un logiciel ou un fichier qui semble légitime (du genre la suite Office que vous venez de pirater en torrent parce que vous n’avez pas envie de la payer). Dans une bonne majorité de cas, le virus va détruire ou ralentir votre système. Pour l’anecdote, les virus type “ransomwares” ont la cote depuis quelques années. Ce sont des saloperies qui vous obligent à payer une belle somme pour récupérer l’accès à toutes vos données !

    Un des plus célèbres ransomware : “Gendarmerie”. Il a fait des ravages.

  • Un ver, lui, n’infecte pas votre ordinateur en utilisant un fichier, comme le virus. Il squatte votre ordinateur en toute furtivité après avoir trouvé une faille pour s’infiltrer, et cherche à se diffuser à tous vos contacts (en envoyant des e-mails, des messages Skype ou des messages Facebook frauduleux à votre place par exemple).

    Un message sur Skype, écrit par un ver, qui incite votre contact à cliquer sur des liens pourris pour l’infecter

  • Et le cheval de Troie, qu’on appelle trojan en anglais. En soi, un trojan ne fait rien de mal. C’est un logiciel qui ne sert qu’à faire rentrer le vrai danger sur votre ordi. Vous ouvrez souvent la porte à des trojans quand vous piratez des logiciels (par exemple Photoshop, Office, …). Une fois le trojan bien au chaud sur votre ordi, il va pouvoir télécharger ce qu’on appelle “la charge utile”. C’est la partie du malware qui va réellement espionner et pourrir votre machine.

    “Comment ça un trojan sur mon ordi ? Mais non, moi je suis juste entrain de pirater Photoshop, c’est safe.”

Dans cet article, nous allons analyser le plus célèbre des trojans de ces dernières années : Zeus. Ses maîtres ont infecté plus de 3 millions d’ordinateurs entre 2011 et 2014. Soit environ 3000 nouveaux ordinateurs par jour, chaque jour, pendant 3 ans. C’est juste monstrueux.

Nous allons découvrir ensemble :

  • À quoi sert Zeus, et comment il a pu rapporter plus de 100 millions de dollars à sa mafia ?
  • Comment Zeus se propageait d’un ordi à l’autre, en utilisant des méthodes révolutionnaires ?
  • Comment la mafia derrière Zeus blanchissait l’argent volé par le malware en Russie ?
  • Comment le FBI a fait tomber cet immense réseau, et quelques potins suite à toute cette affaire ?

Let’s go.

À quoi sert Zeus en pratique ?

Il ne sert en théorie qu’à une seule chose : piquer vos numéros de cartes bancaires ou retirer directement de l’argent depuis votre compte.

Mais en pratique, il était truffé de fonctionnalités additionnelles assez cool pour les pirates. Une fois infecté, votre ordinateur faisait partie ce qu’on appelle un botnet, c’est-à-dire une flotte d’ordinateurs infectés et complètement sous l’emprise d’un pirate.

Un pirate pouvait donc :

  • Recevoir tout ce qui était tapé au clavier de l’ordinateur de la victime ;
  • Prendre des captures d’écran à intervalle de temps régulier ;
  • Récupérer toutes les données présentes sur l’ordinateur ;
  • Utiliser l’ordinateur vérolé pour lancer des attaques ou envoyer du spam (on y reviendra), et propager un peu plus le virus.

Tout ça a été découvert après coup, mais ce sont surtout les numéros de cartes bancaires qui intéressaient les maîtres de Zeus. Le reste, c’est soit du gadget, soit un moyen détourné pour obtenir plus de cash.

Qui est derrière Zeus ?

On a le nom du gars : Evgueni Bogatchev. Et même des photos, diffusées par le FBI :

Evgueni Bogatchev

Evgueni est Russe. Il a aujourd’hui 34 ans, et il a commencé à développer Zeus alors qu’il avait 25 ans. Les chercheurs en sécurité sont d’accord sur un point : ce type était très en avance sur les principaux antivirus. C’est ce qui a rendu Zeus si fou. Grâce à Zeus, Evgueni a généré 100 millions de fraude en 3 ans.

Le FBI a fait tomber tout le réseau mafieux qui opérait derrière Zeus en 2014. C’est ce qui nous permet, aujourd’hui, d’avoir beaucoup d’infos sur l’envers du décor ! Malheureusement, Evgueni lui, est toujours en cavale. Si vous avez des infos, le FBI peut vous offrir 3 millions de dollars… on ne sait jamais.

On part de zéro : comment se fabrique un virus comme Zeus ?

Juste avec 2 choses simples : un ordinateur et un gars malin. Le reste, c’est du développement. On développe un virus comme on développe n’importe quel logiciel honnête : il faut écrire du code informatique. 

Si ça vous intéresse, le code de Zeus a fuité et il est disponible intégralement ici. Ça a permis aux chercheurs de mieux comprendre son fonctionnement. Et ça a aussi permis à d’autres pirates de prendre la relève malheureusement.

Un exemple d’un des fichiers de code de Zeus (écrit principalement en C++).

Le truc, c’est que les développeurs, c’est comme les chasseurs : il y a le bon codeur, et le mauvais codeur. Et le créateur de Zeus, bah c’était un très bon codeur. Il a su développer des ruses suffisamment révolutionnaires pour permettre à son virus de passer incognito devant tous les antivirus du marché.

Une fois que le virus est créé, comment il est diffusé ?

Là, ça devient marrant ! Les développeurs d’un malware comme Zeus vont le commercialiser et le vendre à d’autres criminels.  Zeus coûtait entre 3000$ et 4000$ à l’achat sur le marché noir.

Pour acheter un malware au black, il n’est pas nécessaire d’aller dans un coin glauque de votre ville, et d’attendre qu’un gars vous vende un CD… tout se passe sur Internet, plus précisément sur un darknet (nous y reviendrons dans un autre article).

Une fois qu’un criminel ou qu’un groupe de criminel a acheté le code du malware et tout le bazar qui va avec, ils ont besoin d’installer un serveur de commande. C’est à dire un serveur qui permettra de contrôler leur futur flotte d’ordinateurs infectés.

Comment on fait pour louer un serveur ?!

Aujourd’hui, tout le monde peut louer un petit serveur pour à peine 3$ par mois. D’ailleurs, la page que vous lisez est hébergée sur un serveur que l’on paie et qui est situé au Pays-Bas. Nous payons chaque mois l’entreprise “Digital Ocean” pour prendre soin de notre serveur et nous permettre d’y héberger notre site.

Mais si je commence à utiliser mon serveur pour des activités criminelles, Digital Ocean va vite s’en rendre compte et va au mieux me dégager, au pire me dénoncer à la police. Du coup, comment trouver un serveur bien caché pour commettre un crime ?!

Toujours pareil : on va trouver ça sur le marché noir. Des mecs proposent de vous louer un serveur loin de toute juridiction, très souvent en Russie ou en Chine. Ces serveurs s’appellent des “bulletproof” (“à l’épreuve des balles”).

Une petite annonce d’une location de serveur bulleproof sur un darknet (source : Malwarebytes). On y lit que tout est autorisé, sauf la pédophilie.

Une fois que vous avez loué votre serveur bulletproof, vous y installez le centre de commande. Voilà à quoi ressemble l’interface de commande de Citadel, un célèbre spyware (logiciel espion) :

Rien de dingue, c’est une interface comme une autre. On peut y lister tous les ordinateurs que l’on a infectés, faire de la fouille de données, et lancer des opérations pour ceci ou cela.

Une fois le centre de commande installé, il ne reste plus qu’à infecter un max de victimes.

Next ! Comment infecter les millions de victimes ?

Un peu comme d’habitude : soit vous faites le sale travail vous même, soit vous le confiez à d’autres. Beaucoup de cyber-mafias mettent au point des systèmes d’affiliation pour diffuser leurs saloperies. En gros : vous piratez des gens pour eux, et ils vous paient en retour.

Je n’ai pas réussi à savoir si les groupes criminels qui utilisaient Zeus fonctionnaient de cette manière. Mais peu importe ! Ils utilisaient le même vecteur de propagation : l’e-mail.

Dans l’immense majorité des cas, les victimes recevaient un e-mail frauduleux de leur banque, de leur opérateur téléphonique ou d’un réseau social qui leur signalait un avis de paiement, une facture impayée ou un problème quelconque.

Chacun de ces emails était orné d’une pièce jointe intitulée par exemple : “Avis_de_paiement.zip”. Une fois le fichier téléchargé et exécuté, le trojan s’installait en douce sans éveiller les soupçons des antivirus, et téléchargeait la charge utile.

Un exemple de faux mail contenant Zeus

Un exemple de faux mail contenant le trojan de Zeus

Mais comment envoyer des millions d’e-mail frauduleux sans être inquiété par la police ?!

Bonne question, Watson. Là encore, les pirates sont malins. Un groupe de hackers russes a créé en 2007 un botnet appelé “Cutwail”. Vous pouvez louer ce botnet par exemple pendant une journée, et vous en servir pour envoyer des spams.

Autrement dit : ces gars ont piraté environ 2 millions d’ordinateurs dans le monde, et ils vous proposent d’utiliser ces 2 millions d’ordinateurs pour expédier jusqu’à 70 milliards d’e-mails par jour. 70. Milliards.

Autant vous dire que si vous comptiez utiliser votre adresse gmail “[email protected]pour organiser le crime du siècle, c’est raté. Gmail limite d’ailleurs à 2000 le nombre d’envois quotidiens, et vous vire rapidos s’il détecte que vous envoyez des trucs illégaux.

Bref, les victimes recevaient un email, l’ouvraient, téléchargeaient la pièce-jointe et boum, hacked.

Mais pourquoi les antivirus ne détectaient pas Zeus ?!

Pour plusieurs raisons. D’abord, Zeus exploitait des failles de Windows pour s’installer en silence. En développant Windows, les ingénieurs de Microsoft ont fait des erreurs que les criminels exploitent. Microsoft a beau sortir des correctifs presque chaque jour, et les éditeurs de logiciels ont beau travailler dur, il y a toujours des trous dans leurs défenses.

Ensuite, la pièce jointe contenue dans l’email frauduleux n’était pas la charge active elle-même. Comme je le disais au début, un trojan fonctionne en deux temps :

  1. Vous téléchargez le trojan, le cheval de Troie, qui se fait passer pour un fichier ou un logiciel sympa (ici un fichier “avis_de_paiement.zip” par exemple).
  2. Une fois bien au chaud, le trojan va se connecter au serveur de contrôle des criminels et télécharger la charge active, c’est à dire le cœur du malware, celui qui fait les bêtises.
Votre ordinateur récupérait Zeus sur un serveur, dans votre dos.

Votre ordinateur récupérait Zeus sur un serveur, dans votre dos, grâce à Internet.

Pourquoi fonctionner comme ça, alors que le plus simple serait d’installer directement la charge active ?

Première raison : en téléchargeant Zeus de cette manière, les victimes étaient toujours infectées avec la dernière version du virus. Son créateur l’améliorait presque chaque jour pour le rendre plus efficace, alors c’était important.

La deuxième raison, c’est pour que chaque victime reçoive une version différente du malware. Tous les fichiers présents sur votre ordinateur ont leur propre signature. Une signature de fichier, c’est un peu l’empreinte digitale d’un fichier. Les logiciels malveillants sont des fichiers comme les autres, ils ont aussi une signature ! Le job des antivirus, c’est de connaître un maximum “d’empreintes digitales” de malwares pour mieux les détecter sur votre ordinateur.

Un antivirus contient une "base de données" de virus. Leur but : connaître un maximum de virus pour mieux les bloquer.

Un antivirus contient une “base de données” de virus. Leur but : connaître un maximum de virus pour mieux les bloquer.

En se téléchargeant comme le faisait Zeus, sa signature pouvait être différente à chaque fois. Résultat : les antivirus avaient beaucoup de mal à l’identifier sur l’ordinateur des victimes.

Chaque victime recevait une version presque unique de Zeus, que les antivirus avaient du mal à détecter.

Chaque victime recevait une version presque unique de Zeus, que les antivirus avaient du mal à détecter.

Une fois que la charge active est installée sur votre ordinateur, vous êtes un peu cuit-e.

Que se passe-t-il dans l’ordinateur des victimes ?

Une fois installé sur un ordinateur, Zeus scanne le disque dur à la recherche d’infos bancaires stockées quelque part. S’il ne trouve rien, il attend patiemment que vous manipuliez des informations bancaires. Paiement par carte, connexion à votre banque : il prend tout ce qu’il trouve.

Zeus attend une transaction bancaire.

Zeus attend une transaction bancaire.

Une fois les infos récupérées, Zeus se connecte à un serveur “maître” contrôlé par l’un des criminels du réseau, et lui transfère vos codes.

Parallèlement, Zeus va être capable d’ouvrir une session bancaire depuis votre ordinateur sur le site de votre banque – sans que vous ne vous en rendiez compte – et émettre des virements sur des comptes à l’étranger. C’est à dire des comptes bancaires situés dans des pays comme l’Ukraine, la Chine ou la Russie. L’argent pourra suivre différents parcours, mais terminera toujours son voyage en Chine dans le cas précis de Zeus.

Mais qui récupère l’argent volé ?!

Après son petit périple à travers différents comptes en banque pour brouiller les pistes, l’argent volé est récupéré par une mule bancaire. Les comptes bancaires étaient principalement situés en Chine, à la frontière Russe, dans la province de Heilongjiang.

Chaque groupe de criminels utilisant Zeus devait donc aussi mettre en place sa propre infrastructure de fraude. Pas une mince affaire.

Chine / Russie

Les mules allaient ensuite retirer l’argent en cash à la banque, puis retournaient en Russie (souvent à Vladivostok) pour l’utiliser ou le blanchir dans l’économie locale. Elles étaient souvent payées à la commission sur les sommes qu’elles détournaient.

Mais si la police fait tomber le centre de commande, tout est réglé non ?

Théoriquement, oui. Si vous faites tomber le centre de commande des criminels, alors vous coupez la tête au monstre. Mais comme dans la légende de l’Hydre de Lerne, les meilleurs botnets ont des dizaines de centres de commande. Vous en détruisez un, les autres prennent le relais.

Et justement, c’est là que Zeus brillait. Sa structure réseau a révolutionné le genre.

Un malware lambda fonctionne comme sur l’image de gauche ci-dessous. Autrement dit, chaque ordinateur infecté est en relation avec un serveur de contrôle. Si la police fait fermer ce serveur, beaucoup d’ordinateurs infectés sont libérés instantanément. Bien sûr, ces serveurs de commande sont bien cachés.

À gauche, un virus "normal". À droite, Zeus.

À gauche, un logiciel malveillant “normal”. À droite, Zeus.

Zeus fonctionne différemment : chaque ordinateur infecté (donc le votre par exemple) devient un mini serveur de contrôle. Ce n’est plus un serveur “maître” qui donne les ordres à chaque victime, mais chaque victime qui distribue des ordres à d’autres victimes.

Résultat : les ordres sont dispersés, il est plus difficile d’en connaître la provenance et de les freiner.

Comment l’histoire de Zeus s’est-elle terminée ?

En 2014, le FBI aidé exceptionnellement par des policiers Russes (ainsi qu’une ribambelle d’autres pays et des dizaines d’entreprises de sécurité informatique) a réussi à mettre la main sur tout le réseau Zeus via l’opération Tovar.

Le botnet est aujourd’hui inactif, mais son créateur est toujours en cavale. Il est d’ailleurs considéré comme le hacker le plus recherché par les USA (la page Most Wanted du FBI est marrante).

L'immeuble où habitait la tête du réseau, en Russie

L’immeuble où habitait la tête du réseau, en Russie

Malheureusement, des versions modifiées de Zeus sont toujours en circulation dans la nature. Autre souci : le gouvernement russe refuse que d’autres états extradent des criminels russes aux USA. De là à imaginer un lien entre les cyber-criminels et le gouvernement… en tout cas pour le FBI, c’est évident.

Bref, l’opération Tovar était probablement un coup de pied nécessaire dans la fourmilière, mais ça ne suffira pas à rendre Internet tranquille bien longtemps. Voici quelques règles de bonne hygiène à suivre pour être tranquille :

  1. Votre anti-virus doit toujours être à jour. Même si les logiciels malveillants passent parfois à travers, une bonne partie des menaces peuvent être évitées.
  2. Ne téléchargez aucune pièce-jointe, surtout lorsque vous n’attendiez pas expressément un e-mail du destinataire dont il est question. Votre banque ne vous enverra jamais d’e-mails contenant des pièces jointes.
  3. Lorsque vous téléchargez un logiciel gratuit comme VLC par exemple, faites l’effort de toujours chercher le site officiel du créateur. Beaucoup de virus sont transmis via des faux sites de téléchargement. Quant aux logiciels que vous piratez, ben c’est bien fait pour vous si vous vous faites avoir 🙂