Les rétroliens (en VO : trackback) sont des IRI [NB1] très spéciales, qui ne se visitent pas avec un navigateur, mais sont des interfaces de dialogues entre deux serveurs web, plus exactement entre deux moteurs de blogs. En clair, quand quelqu'un écrit un billet pour son blog “A”, mais veut signaler à un autre blog, “B”, que “A” a écrit un billet qui fait référence à ce que “B” a écrit dans un billet de son blog, “A” demande à son gestionnaire de blog d'envoyer un ping sur l'adresse de rétrolien attaché au billet “B”.
Si quelqu'un réagirait dans son blog à mon billet, vous aurez écrit plus bas (en-dessous des commentaires) une référence à sa réaction dans le chapitre « La discussion continue ailleurs ».
Les trackbacks ne sont pas gérés par une norme, mais un consensus entre développeurs de plateformes/systèmes de blogs. Le système fut créé par SixApart, qui en reste la référence.

Système pratique et automatisés, les rétroliens devinrent très populaires dans les systèmes de blog.
Trop.
Ils n'avaient aucune sécurité (une simple requête POST avec une IRI quelconque suffisait), aucune confirmation... Il n'a pas fallut longtemps pour que leur début de popularité fut exploité par les spammeurs. Contrairement aux commentaires où la parade fut d'installer des capcha (vous savez les trucs illisibles à décoder qui rejettent votre commentaire trois fois sur quatre et qui parient sur l'insistance du lecteur), aucun test de Turing [NB2] ne pouvait fonctionner sur cette interface dont le principe est que justement deux machines parlent entre elles.

Nous en sommes arrivés là parce que certains font de la publicité, c'est à dire qu'ils touchent gratuitement du fric en vous polluant, se croient la raison d'être d'Internet, et créent des techniques purement maffieuses (et ça existe aussi en France !) allant du piratage jusqu'à l'extorsion de fonds...

Lors du redesign de mon site, j'ai profité du complet changement d'infrastructure pour passer à la nouvelle génération du moteur de ma blog zone. Aka Dotclear2. Et j'ai rouvert mes rétroliens, si longtemps maintenus en position fermés.
J'ai tenu trois semaines.

J'ai dû à regret à nouveau les fermer. Dommage, car faisant de la chronique de BD sur ce blog, ils permettaient de rapidement lier deux chroniques d'une même série ou d'un même auteur . Ou aussi d'écrire des articles à rallonge avec plein de liens vers de précédents billets, et de rétrolier ceux-ci.
Par contre, je dois reconnaître que Dotclear2 a une excellent suite de filtres sur les commentaires, qui ne laisse une chance qu'aux spammeurs manuels. Aucun faux négatif, mais hélas quelques faux positifs. C'est l'existence de ces derniers qui m'empêchent de laisser inonder la corbeille de récupération par d'innombrables rétroliens pollueurs.

On se souvient toujours de son premier cadavre

Il y a 48h, en surveillant mes logs Apache en direct [NB3], j'ai décrété que toutes les attaques de rétroliens étaient suffisamment calmés sur mon site pour tenter une petite expérience : j'ai intentionnellement rouvert [NB4] ce canal à spam, pour connaître comment ces salopards font leur marché.

Ça n'a pas duré, les robots maffieux ne respectent même pas les Dimanche après-midi. Voici la première trace gluante du retour des trackback-spams
Sa trace dans les logs Apache :

IPDateMéthodeAdresseUser Agent
64.202.165.2017 Oct. à 15:55:28POST HTTP/1.0/blog.php/trackback/1156"TrackBack/1.02"
Oui, le spammeur a suffisamment d'humour pour utiliser un UA bien voyant, aussi improbable que celui de MSIE (ce dernier, comme tout autre navigateur ne peux faire de rétrolien, ça n'est pas son rôle)). J'ai aussi vu des cas où des script-kiddies sont tellement mauvais qu'il sont incapable de faire une requête HTTP correct pour être compréhensible.

Étonnement, le moteur Dc2 a vu autre chose :
Adresse IP : 208.109.78.121. Ce commentaire est un indésirable : Filtré par Bad Words avec le terme ambien.
Je n'ai relevé aucun trafic IP dans mes logs Apache venant de l'adresse IP 208.109.78.121. On a donc une probable erreur propre à Dc2, ou à un spoofing quelconque d'IP. Visiblement, la DcTeam() à quelque chose à faire à cet endroit.

Passe passe passe le luminole

Intéressons-nous maintenant aux trafics menant à la page ciblée :

IPDateUser Agent déclaré
208.68.136.530 Sept. à 17:56:21FAST MetaWeb Crawler (helpdesk at fastsearch dot com)"
66.249.65.1081er Oct. à 3:59:37Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
74.6.24.191er Oct. à 16:07:06Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)"
66.249.65.1082 Oct. à 10:25:22Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.65.1083 Oct. à 13:40:48Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
208.70.24.2334 Oct. à 4:56:39Mozilla/5.0 (compatible; archive.org_bot/1.13.1x +http://crawler.archive.org)"
74.6.24.1434 Oct. à 12:29:13Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)"
66.249.65.1084 Oct. à 13:27:25Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
24.68.74.1984 Oct. à 23:27:08Mozilla/5.0 (compatible; SkreemRBot +http://skreemr.com)"
66.249.65.1085 Oct. à 21:57:31Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.65.1087 Oct. à 4:09:52Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"

Comme vous pouvez le constater, seuls des spiders [NB5] sont venus visiter cette page depuis la réouverture des rétroliens. Ce qui me permet d'arriver à ces déductions :

  1. Trop peu de gens s'intéressent à cet excellente BD qu'est « Jack B. Quick, enfant prodige », qui plus est très bien traduite par François Peneaud, confrère d'ActuaBD
  2. Trop peu de gens lisent mes chroniques BD, et encore moins mes archives de chroniques
  3. Les spammeurs utilisent exclusivement les moteurs de recherche, ou camouflent leurs spiders de manière à ce qu'ils semblent légitimes
  4. Les spammeurs utilisent des IRI de rétroliens récoltés depuis une belle lurette, et continuent à taper aveuglement dans ces adresses.

« Bon sang... Mais c'est bien sûr ! »

La moralité, c'est que les spammeurs ne perdent pas du temps à vérifier régulièrement la disponibilité de l'IRI de rétrolien d'un billet. Bien sûr, ils le font un minimum, d'où la diminution du trafic d'attaque qui met au moins un mois à décroître pour devenir quasi-nul.
À cet effet, je retenterais l'expérience dans un mois.

J'attends l'adaptation du plugin TrackbackTimeOut sur Dotclear2 (dans la génération Dc1.2, il y avait par exemple SpamTimeOut) pour les réactiver. Car dans mon étude (en fait, je m'y attendais), il se montre totalement pertinent : L'IRI de Trackback ne reste valable que pendant un temps limité, typiquement 5 minutes [NB6].
5 Minutes, le temps pour le Commissaire Raymond Souplex d'expliquer pourquoi Monsieur Michu est coupable. 5 minutes, c'est une éternité pour le programme de trackback légitime du blog “A” de signaler au blob “B“ que j'ai ici un billet qui a un rapport avec ton texte. 5 minutes, c'est un temps vraiment trop court entre deux visites de spider pour que l'IRI soit exploitable par un méchant vendeur de pharmacopée au service d'Al-Qaeda.

Et les messages pourris ne viennent pas encombrer la corbeille de récupération, celle où atterrissent parfois les messages de Thomas parce que quelqu'un utilise la même adresse IP que lui avec un MS-Windows totalement vérolé.


Nota Bene afin de faire semblant d'avoir tout compris à ce billet :

  1. IRI : IRI-ra bien, qui IRI ses URL... j'explique pourquoi ici
  2. ↑ test de Turing : Alan Turing est l'un des très grands théoriciens de l'informatique, hélas mort trop jeune. Le test qui porte son nom doit permettre de différencier si votre interlocuteur est un humain, ou une machine qui a le droit de mentir, tricher, se tromper,...
    Tiens, en ce moment, vous pouvez tenter de savoir ce qu'un ordinateur pense du France/All Blacks d'hier soir, pour rire.
  3. ↑ Lire les logs Apache : Pour des raisons de lisibilité, j'ai bien évidemment mis en forme ces logs cités dans ce billet pour que vous puissiez les comprendre. Le tail -f access.log est typiquement un sport de geek, à peu près aussi palpitant que de compter les graines en suspension dans de la confiture de fraise maison.
  4. ↑ intentionnellement rouvert : Les informaticiens appellent ça un “honeypot”, je préfère le terme policier de “dragnet”, parce que j'adore regarder cette série, et qu'on est effectivement dans un travail de planque, de filature et de serrage arme au poing.
  5. spiders : Les spiders, aussi appelés crawlers sont des bots conçus pour alimenter les moteurs de recherche. Ces araignées cherchent les liens entre différentes pages, parcourant ainsi le web, la toile.
    Dans mon tableau, on y voit celui de Google, de Yahoo, de Skeemr (un moteur de recherche de mp3), de FastSearch (une solution commerciale de recherche) et celui d'archive.org qui n'est pas un moteur de recherche, mais un archiveur.
  6. ↑ 5 minutes : Techniquement, cela veut dire qu'il faut désactiver ou modifier dans Dc2 le moteur de cache de templates pour qu'une telle solution puisse marcher sans problème.