Besoin de savoir si une adresse électronique existe ? Interrogez donc les serveurs SMTP grâce à quelques commandes en ligne (accessibles via Telnet) ! Si la plupart des fournisseurs d’accès ne supportent pas ces commandes (elles ont été désactivées, surtout dernièrement pour lutter contre le spam), elles sont encore souvent accessibles pour les e-mails d’entreprises.
[midtextad]
Utiliser Telnet
Via Telnet, vous pouvez utiliser 2 commandes :
- VRFY : le serveur mail dira s’il connait l’adresse ou non. Beaucoup de serveurs ne jouent pas franc-jeu et ne dévoilent pas vraiment si c’est le cas. Il faut alors faire un VRFY « bidon » pour vérifier si c’est le cas.
- EXPN (pour expand) permet aussi de lister les personnes d’une liste ou les alias d’une adresse.
Un exemple ?
[code]$ telnet asimov 25
220 asimov.zzz.com ESMTP Sendmail 8.11.7+Sun/8.9.1; Sat, 24 Mar 2007 21:47:15 GMT
ehlo localhost
250-asimov.zzz.com Hello ant.astec.com [10.95.128.228], pleased to meet you
250-ENHANCEDSTATUSCODES
250-EXPN
250-VERB
250-8BITMIME
250-SIZE
250-DSN
250-ONEX
250-ETRN
250-XUSR
250 HELP
vrfy stephane
250 2.1.5 <stephane@asimov.zzz.com>
vrfy asdasdasd
550 5.1.1 asdasdasd… User unknown
expn stephane
250 2.1.5 <stephane@zzz.com> [/code]
Ici stephane@asimov est visiblement connu et les e-mails envoyés à stephane@asimov sont en fait redirigés à l’adresse électronique stephane@zzz.com
Une autre méthode
Si les commandes VRFY ou EXPN ne sont pas supportées, on peut aussi commencer à envoyer le mail et arrêter avant la fin, c’est à dire faire le MAIL FROM suivi du RCPT TO. La réponse au RCPT TO pourra trahir le fait que l’adresse existe ou pas.
Un exemple avec Google:
[code]$ dig +noall +answer -t mx gmail.com
gmail.com. 59 IN MX 5 gmail-smtp-in.l.google.com.
gmail.com. 59 IN MX 10 alt1.gmail-smtp-in.l.google.com.
gmail.com. 59 IN MX 10 alt2.gmail-smtp-in.l.google.com.
gmail.com. 59 IN MX 50 gsmtp163.google.com.
gmail.com. 59 IN MX 50 gsmtp183.google.com.
$ telnet alt1.gmail-smtp-in.l.google.com 25
220 mx.google.com ESMTP n20si13268058pof
ehlo localhost
250-mx.google.com at your service, [82.26.173.146]
250-SIZE 20971520
250-8BITMIME
250 ENHANCEDSTATUSCODES
vrfy <stephane@gmail.com>
252 2.1.5 Send some mail, I’ll try my best
vrfy asdadasdasdqwe@gmail.com
252 2.1.5 Send some mail, I’ll try my best[/code]
[code]Conclusion : ici, la commande VRFY ne donne pas grand chose.
mail from: <stephane@spider.com>
250 2.1.0 OK
rcpt to: <stephane@gmail.com>
250 2.1.5 OK
rcpt to: <sdasdasdadads@gmail.com>
550 5.1.1 No such user n20si13268058pof[/code]
Bingo !
Les outils
Certains outils permettent d’automatiser la tâche. Par exemple l’outil vrfy, inclus dans le package Debian.
Mise en garde
Attention ! Vous pouvez vous faire black-lister avec ce genre de pratique. A utiliser donc… avec modération 😉
Merci à Stéphane pour ses infos.