PRATIQUE ALGO/METHODES 
Remonter l'origine d'un e-mail
 
"Comment trouver d'où provient un e-mail anonyme, voire idéalement connaître son expéditeur réel ?" (24/02/2006)
  Forum

Réagissez dans les forums de JDN Développeurs

Il faut comprendre que sur Internet, rien n'est réellement anonyme, et tout échange de données se fait entre deux adresses IP, donc entre deux ordinateurs/serveurs. Les données échangées, comme les e-mails, sont accompagnées d'en-têtes décrivant le contenu, l'origine et le destinataire, et parfois beaucoup plus.

Les courriers électroniques comportent ainsi une flopée d'en-têtes, qui sont le plus souvent cachés au lecteur, mais restent toujours accessibles d'un clic de souris. Ainsi, si Outlook n'affiche par défaut que le contenu des en-têtes From, To, Cc, Subject et Date, un clic sur le menu Affichage/Options… révèle la totalité de l'e-mail, dans le champ En-tête Internet. Tous les logiciels d'e-mail sont capables de vous fournir ces champs.

Parmi les en-têtes que l'on peut y trouver, le plus intéressant en ce qui nous concerne ici est Received. Celui-ci est ajouté chaque fois que le message transite par un serveur Internet. Il y a donc autant d'en-tête Received que des serveurs intermédiaires. Chaque nouvel en-tête s'ajoute au début du message, donc le premier en-tête, c'est-à-dire celui correspond au premier ordinateur ayant vu ce message, est le dernier dans l'ordre de lecture.

Received contient une syntaxe particulière : on peut y trouver from, by, via, with, id ou for, et un horodatage. Pour le traçage de l'e-mail, from et by sont les plus intéressants.
From nous indique le serveur de passage, et donc en théorie, pour le premier Received, l'ordinateur d'origine. From donne normalement l'adresse IP, ou le nom du serveur DNS qui y est hébergé.
By, de son côté, nous indique le nom donné au serveur d'e-mail. Il peut-être utile de le connaître, mais dans le cas d'un spammeur, inutile de s'y fier…

Les en-têtes Received doivent normalement comporter la même adresse IP entre le champ by du plus ancien et le champ from du plus récent. L'adresse IP véritable n'est pas forcément celle contenue dans le tout premier Received (car potentiellement adaptée par le spammeur), mais dans le from du Received supérieur (ou du serveur suivant, normalement indépendant).

Une fois cette adresse IP obtenue, il reste à contacter le serveur d'origine - par e-mail. Tous les hébergeurs disposent d'une adresse pour leur signaler un abus, il suffit de la trouver. Pour cela, faites un whois sur l'adresse, par exemple en passant par le formulaire idoine de l'ARIN. L'adresse doit se trouver dans le champ OrgAbuseEmail, sous la forme abuse@hebergeur.com.

Envoyez votre message à l'hébergeur en donnant toutes les en-têtes de l'e-mail, et laissez faire la suite.

De votre côté, vous pouvez tirer des conclusions sur la personne à partir du nom du DNS d'origine, qui correspond au nom de l'ordinateur qui a envoyé cet e-mail. Une information comme OrdinateurDeFrancis ou Accueil peut vous mettre dans la bonne direction.
De même, si vous trouvez l'en-tête X-Sender, il vous donnera potentiellement l'identifiant de la personne connectée au serveur e-mail d'origine.
 
Xavier Borderie, JDN Développeurs
 
 
Accueil | Haut de page