LinkFluence, votre crawler est bugué

Auteur :  x0r Publié le   Nombre de commentaires : 0
Mots-clefs : bot web linkfluence crawler fail coupdegueule

Je surveille mes logs Nginx avec ferveur et j'ai un tail -f /var/log/nginx/access_log en permanence dans un de mes screens.

J'ai soudainement remarqué qu'une IP fait de nombreuses requêtes sur l'URL servant à poster un commentaire, tout en se faisant jeter. En effet, le bot essayait de poster des commentaires sur de très nombreux articles de mon blog, mais sans renseigner d'auteur, ni de texte, ni les quelques champs invisibles servant de protection contre la plupart des spambots. Et en se gourant dans la méthode HTTP (GET au lieu de POST) à utiliser.

Je vous présente donc le bot de LinkFluence, dont l'user-agent est Mozilla/5.0 (compatible; Crawler/0.9; http://linkfluence.net/), et qui est yet another analyseur de contenus sociaux parmi les trouzmille qui s'amusent parfois à crawler mon site et que je laisse généralement faire (enfin... en général).

Je me suis d'ailleurs toujours demandé pourquoi, par « réseaux sociaux », les gens incluent généralement les blogs. Surtout que le mien, en étant exempt de bouton "J'aime", "Repioupiouter" ou d'autres délires socioréticulaires, ne fait pas vraiment dans le social.

Bref, les logs (que j'abrège par concision) sont ici :

37.59.42.102 - - [06/May/2013:10:33:16 +0200] "GET /blog/16 HTTP/1.1" 200 
37.59.42.102 - - [06/May/2013:10:33:16 +0200] "GET /blog/15 HTTP/1.1" 200
37.59.42.102 - - [06/May/2013:10:33:16 +0200] "GET /blog/18 HTTP/1.1" 200
37.59.42.102 - - [06/May/2013:10:33:17 +0200] "GET /blog/21 HTTP/1.1" 200
37.59.42.102 - - [06/May/2013:10:33:17 +0200] "GET /blog HTTP/1.1" 200
37.59.42.102 - - [06/May/2013:10:33:21 +0200] "GET /blog/23 HTTP/1.1" 200
37.59.42.102 - - [06/May/2013:10:33:21 +0200] "GET /blog/14 HTTP/1.1" 200
37.59.42.102 - - [06/May/2013:10:33:22 +0200] "GET /blog/17 HTTP/1.1" 200
37.59.42.102 - - [06/May/2013:10:33:22 +0200] "GET /blog/22 HTTP/1.1" 200
37.59.42.102 - - [06/May/2013:10:33:27 +0200] "GET /blog/20 HTTP/1.1" 200
37.59.42.102 - - [06/May/2013:10:33:27 +0200] "GET /blog/19 HTTP/1.1" 200

Puis quelques secondes plus tard, surprise, des requêtes GET sur une ressource sur laquelle on n'est censé que faire des POST :

37.59.42.102 - - [06/May/2013:10:33:31 +0200] "GET /blog/16/post_comment HTTP/1.1" 403
37.59.42.102 - - [06/May/2013:10:33:31 +0200] "GET /blog/15/post_comment HTTP/1.1" 403
37.59.42.102 - - [06/May/2013:10:33:31 +0200] "GET /blog/18/post_comment HTTP/1.1" 403
37.59.42.102 - - [06/May/2013:10:33:36 +0200] "GET /blog/21/post_comment HTTP/1.1" 403
37.59.42.102 - - [06/May/2013:10:34:05 +0200] "GET /blog/23/post_comment HTTP/1.1" 403
37.59.42.102 - - [06/May/2013:10:34:08 +0200] "GET /blog/17/post_comment HTTP/1.1" 403
37.59.42.102 - - [06/May/2013:10:34:08 +0200] "GET /blog/22/post_comment HTTP/1.1" 403
37.59.42.102 - - [06/May/2013:10:34:35 +0200] "GET /blog/20/post_comment HTTP/1.1" 403
37.59.42.102 - - [06/May/2013:10:34:35 +0200] "GET /blog/19/post_comment HTTP/1.1" 403
37.59.42.102 - - [06/May/2013:10:35:14 +0200] "GET /blog/12/post_comment HTTP/1.1" 403

Alors, suivre les liens <a>, c'est bien ; éviter de le faire avec les URLs d'action pour des formulaires, c'est mieux, et, ça aurait pu éviter à ce pauvre bot de se manger un ban permanent.

Et décidément, ils n'en sont pas à leur premier fail.

Commentaires

Poster un commentaire

Poster un commentaire