C’est quoi le CSRF (cross site request forgeries) ? c’est une technique ‘assez’ nouvelle pour contourner les protections de type CAPTCHA afin de (par exemple) créer des comptes d’email protéger par le système captcha. Ce dernier est une image qui fait apparaître des caractères / chiffres qui sont compréhensibles par un « humain » afin de s’assurer que la personne est bien un « humain » et non une moulinette informatique.
Le principe du CSRF est simple. On attire un internaute avec des images « pour adulte » et pour voir la suivante, on doit saisir un code de caractères de type CAPTCHA. Cette image de caractères a, en fait, été détournée, et provient d’un site « honnête ». L’internaute saisie le code (attiré par l’envie d’une nouvelle image), et permet ainsi au pirate / spammers d’avoir un code captcha validé afin par exemple de créer un compte email sur un webmail afin d’envoyer des emails SPAM.
Comment peut-on mettre cela en place ?
En utilisant l’injection de IFRAME (un peu comme le XSS (cross site scripting)) tout simplement. En effet, beaucoup de sites internet ne vérifient pas la possibilité d’exécuter du code HTML / XHTML dans les paramètres de formulaires.
Mieux que des discours, quelques captures d’écrans pour démonstration :
Commençons par une recherche sur Google sur une adresse IP qui sert de plateforme de piratage. Ici, le mot-clé est l’adresse IP, mais il suffit de chercher sur d’autres mots-clés « honnêtes » pour tomber sur ce type de lien.
Un clic sur l’un de ces liens, renvoi vers un site « honnête » :
Mais attention, vous allez être redirigé automatiquement vers un site avec des images pour adulte. On remarquera l’ajout de la chaîne « <IFRAME src=//ADRESSE_IP> aux mots-clés du champ recherche. C’est inclut depuis la recherche de Google…
On arrive sur cette page qui présente une grande photo pour adulte, ainsi que des thumbnails pour « montrer la marchandise ».
Il ne reste plus qu’a cliquer sur le lien Suivant pour voir la prochaine.
C’est là que l’internaute va devoir travailler pour le pirate. Et oui, une image Captcha apparaît et l’internaute doit saisir le code pour voir la prochaine image.
Le vice est poussé assez loin, puisque si le code est erroné, un message d’erreur apparaît et l’internaute ne verra pas l’image suivante…
Ainsi, l’internaute quand il saisit correctement les caractères du code Captcha, aide le pirate à créer des comptes de messagerie pour faire du spam (par exemple)…
C’est du donnant-donnant 😉 (ou de l’échange de services)