Xrumer: les liaisons fatales

Notez cet article

Xrumer me casse les pieds

Xrumer est un sacré logiciel qui m’ennuie beaucoup. Il me met une pagaille pas possible dans un forum associatif que je gère, m’obligeant à valider manuellement les inscriptions, ce qui me donne du travail supplémentaire; du travail de fourmi que j’exècre au plus haut point.

Suite à mes déboires, je me suis donc penché un peu plus sur ce sinistre logiciel, par la force des choses. C’était il y a quelques mois, au cours duquel j’échangeais régulièrement avec l’un de mes correspondants Estoniens qui m’avait tuyauté sur le botnet Storm.

Mon correspondant, appelons le Piotr, connaissait bien la bête car il l’utilisait fréquemment. Il me l’avait longuement recommandé, mais je ne l’ai jamais acheté, préférant développer à la main mes machines infernales. Et puis les problèmes avec mon forum m’avaient aussi un peu échaudé.

Un jour où nous échangions, il me dit qu’il a quelques soucis avec le monstre et que, « Nibdon » comme ils disent en Estonien, le site web qui le distribue (www.botmasternet.com) n’est plus accessible et qu’il se retrouve dans la galère, surtout au prix où il a payé sa licence (plus de $500). Un peu amusé par la situation, je me dis que Piotr fait surement parti des spammeurs qui ont inondé mon forum mais, bon prince ou déformation professionnelle, je décide de jeter un œil au problème.

La Russian connection

Le site était hébergé à l’adresse 95.169.190.220, et ne répondait plus. J’en profite pour lancer quelques tests avec certain de mes outils et je tombe sur les données administratives du réseau. Cette adresse fait partie du réseau 95.169.190.0/23 qui appartient à un certain Ivan Gladenko de la société Keyweb.de.

Ces messieurs font partie des fournisseurs qui ne sont pas très regardants sur leurs conditions générales d’utilisation. Au programme des clients: spams, faux codecs, arnaque financière (HYIP) et d’autres choses que je préfère taire. De plus en plus intéressé par eux, je vais même jusqu’à découvrir qu’ils hébergent deux serveurs de contrôle du botnet Zeus !

Bon finalement, c’est tout de même dans la logique des choses que Xrumer soit hébergé plutôt chez ce type de société plutôt qu’au Vatican. Suite à ce sympathique moment, Piotr me dira que le site a tout simplement été migré chez un autre prestataire et qu’il fonctionne bien désormais.

Un autre prestataire ? Mais qui donc cette fois-ci ? Allons-nous passer de Al Capone à mère Thérésa ? Jetons un œil si vous le voulez bien.

Le retour de la Russian connection

Tout d’abord, j’apprends qu’il faut faire soit même la résolution DNS, c’est à dire coder un fichier hosts sur sa machine; pas bien pratique tout cela, mais passons. Voici donc la nouvelle adresse du site de Xrumer: 188.72.244.95.

Cette adresse appartient à la plage 188.72.244.64 – 188.72.244.127, dirigé par un certain Alexey Terentyev de nkvdteam.ru.

Le Ripe nous apprend que ce bloc d’adresses est en fait routé par la société Netdirekt, récemment rachetée par Leasweb, un gros fournisseur néerlandais. La société Netdirekt a également un très lourd passif en matière de petits ennuis, pour rester courtois.

Tout en bas de la page, vous prêterez une attention toute particulière à l’un de leur turbulent client Rustelekom qui ressemble étrangement à la tentaculaire mais néanmoins défunte Russian Business Network.

En clair les concepteurs de Xrumer utilisent les infrastructures « underground » habituelles qui leur permettent de ne pas être trop inquiétés dans leurs petites affaires, mais pas seulement.

L’envers du décor

Il y a environ un mois, je discutais via IRC avec Piotr alors qu’il était en « plein travail » avec Xrumer, et c’est là que j’ai été pris d’un petit soupçon que j’ai eu envie de vérifier. Je lui ai donc demandé si je pouvais me connecter sur son serveur dédié que je puisse admirer « la bête dans ses œuvres » (Création de 500 liens à la minute).

Il a accepté mais à condition que « Nibdon », je ne casse rien parce que c’est quand même de son gagne-pain que nous parlons.
Je me suis donc connecté et à l’aide de Windump, j’ai discrètement lancé une capture réseau du trafic généré par Xrumer.

La première chose que j’ai trouvé étrange est la grande fréquence de requêtes ICMP envoyées par le serveur. Le protocole ICMP est un protocole de service utilisé par exemple par les commandes ping et traceroute. (tracert sous Windows). On l’utilise normalement pour signaler un problème ou pour véhiculer des messages de contrôle. Dans notre cas, j’ai pu compter jusqu’à 10 requêtes ICMP par minute, ce qui est absolument anormal lors d’une utilisation conventionnelle d’un service réseau. J’ai demandé à Piotr si l’on pouvait arrêter temporairement Xrumer, et lorsqu’il l’a fait, les requêtes ICMP ont disparu. C’est donc bien ce logiciel qui est à l’origine de ce type de trafic réseau. A noter que toutes ces requêtes étaient toujours envoyées dans la même direction: une machine hébergée par groatcoats.com (Site web indisponible).

La deuxième chose que j’ai constaté est la taille du paquet ICMP. Alors que celle-ci est généralement de l’ordre de quelques octets, là le paquet faisait plusieurs kilos-octets, de quoi transporter un certain nombre d’informations. Cela m’a rappelé une expérience que j’avais faite il y a quelques années pour contourner un IDS. L’idée était que comme la plupart du trafic conventionnel (Web, mail, etc.) était étroitement surveillé, il fallait faire preuve de beaucoup de subtilité pour arriver à faire entrer ou sortir de l’information située au delà du système de protection d’une entreprise. J’ai trouvé la solution en camouflant des données dans une requête d’apparence complétement anodine: le ping qui fonctionne au moyen de deux paquets ICMP¨: ECHO_REQUEST et ECHO_REPLY. Outre l’entête traditionnelle (source, destination, type, checksum), ce paquet comporte un « payload » (cargaison) pas franchement normalisée. C’est donc dans cette cargaison que j’ai pu insérer mes informations au nez et à la barbe de l’IDS grâce à un petit programme écrit en C.

Pour en revenir avec cette caractéristique de Xrumer, je n’ai pas su décoder le contenu du paquet. Le mystère reste total, mais il y a pour ma part 3 à 4 kilos en trop dans ce type de requête lorsque l’on fait fonctionner Xrumer.

Et la dernière chose qui m’a également semblé bizarre dans mon analyse, c’est le nombre absolument incroyable de connexions TCP sortantes. Faites un test, lancez un blast sous Xrumer, ouvrez une ligne de commande (cmd) et tapez la commande suivante:

netstat -an

La première colonne indique le protocole (tcp ou udp), la seconde est l’adresse IP émettrice, la troisième l’adresse de destination munie de son type d’application (le port dans le cadre de tcp) et la dernière représente l’état de la connexion (Établie, finie, etc.). Vous isolez le trafic Web en repérant les adresses de destination se terminant par :80. Si vous avez plus de 10 connexions simultanées, cela revient à dire que vous êtes sans doute en train de lancer un DDOS contre une victime !

C’est là une de mes interrogations: est-ce que Xrumer ne profite pas de ses blasts pour lancer peut-être des attaques simultanées contre des sites Web ? Après tout cela passerait complétement inaperçu: si la machine est chargée, et croyez-moi lors d’un DDOS, elle l’est, après tout cela reste une situation qui semble normale, surtout lorsque l’on crée 500 liens à la minute.

En conclusion mon analyse ne prouve rien certes, mais la chose qui est certaine c’est que personnellement, je refuserai toujours d’installer ce type de logiciel sur ma propre machine.