[Tips] Petite astuce pour la collecte d’email sur internet
Hello à tous,
La collecte de données est un peu le nerf de la guerre aujourd’hui (avec l’argent).
Moi-même, j’en fait assez souvent, pour tout un tas de raisons inavouables =)
(retrouver le propriétaire d’un email en est une …)
Aussi j’étais l’autre jour, sur l’une des plateformes de recrutements en vogue « DoYouB… » et j’ai trouvé assez amusant la sécurité mise en place pour éviter le crawling* … ce qui m’a inspiré cet article !
Vocabulaire
Un petit point vocabulaire, pour que les personnes qui ne sont pas familières au langage « technique » puissent appréhender facilement le sujet.
Crawling : Collecte de donnée
Crawler : Outil de collecte de donnée
User Agent : Méta donnée attachée à un programme qui indique à un serveur / site internet le nom du programme (Firefox, Google Chrome, Opéra, Internet Explorer …)
Timers : Petites pauses dans un programme
Obfuscations : Le fait de dissimuler une donnée derrière une très faible protection.
Rétro-engineering : Analyse de bout en bout du fonctionnement de quelque chose (programme, protocole, …)
L’user Agent
Si vous scannez une page avec un crawler* sans user agent*… vous tomberez parfois sur des faux liens qui vous amènent nulle part …
Néanmoins si dans votre crawler vous définissez un faux user agent … hop cette sécurité (sur la plupart des sites) est contournée …
La vitesse
Eh oui … un crawler va parcourir beaucoup plus de page à la minute, qu’un simple mortel comme nous …
Les sites internet dont vous allez récupérer les données vous verront venir de loin avec l’ouverture de 500 pages par minute …
Aussi, si vous mettez des « timers* » de 1 à 2 secondes entre chacune de vos requêtes …
ça vous prendra peut-être plus de temps, MAIS, vous pourrez faire votre collecte tranquillement … sans risque d’éveiller le moindre soupçon …
Les obfuscations* bidon
Pour ne prendre qu’un cas d’exemple, celui de DoYouB…
Ils cachent leurs emails avec ce genre d’obfuscations …
Oui oui vous ne voyez pas d’email …
un crawler non plus d’ailleurs …
Sauf que le crawler n’est ni plus ni moins qu’un programme, qui fait ce qu’on lui demande de faire, et donc, que l’on peut faire évoluer …
Donc si je prends cette jolie suite de numéros (cf. image) ….
101.98.115.101.98.106.111.102.109.118.100.98.116.65.104.110.98.106.109.47.100.112.110
Je me dis …
hmmm des chiffres
à quoi cela peut-il correspondre …
Il existe probablement un lien entre ces chiffres et les lettres de l’adresse email….
J’ai dans l’idée, que je vais trouver mon bonheur dans une table ascii*
J’essaie de faire quelques correspondances
101 => e
98 => b
115 => s
101 => e
98 => b
106 => j
…
Bon après avoir décortiqué quelques lettres :
ebsebj …. ?fl`hk
Mouai mouai …. tiens et si je faisais juste un -1 sur chaque nombre :
101 – 1 = 100 soit d
98 – 1 = 97 soit a
115 -1 = 114 soit r
…
darad…@gmail.com
ah ah, ça fonctionne !!!
J’obtiens une véritable adresse email !
Avec un petit script php c’est décodé en 1 seconde
Et voilà comment un peu de rétro-engineering*, peut vous aider à obtenir ce que vous voulez …
Recommandation
Si vous souhaitez vraiment exposer sur votre site des adresses emails, faites de belles images plutôt que du texte ou des chiffres …
Je vous invite également à bloquer la consultation des emails des utilisateurs au bout d’un certain nombre par jour (comme le fait LebonCoin) !