Технические заголовки письма содержат в себе полную информацию не только об отправителе или получателе, но и обо всех почтовых серверах, через которое оно прошло.
В заголовках отображается уникальный номер (идентификатор), формат и кодировка содержимого письма, а также другие заголовки, которые позволяют получить информацию технического плана.

В качестве примера используются реальные заголовки спам-письма, отправленного с помощью спам-скрипта, загруженного на сайт через уязвимость. Из примера убрана вся лишняя информация, и для удобства восприятия произведена замена всех реальных значений на понятные.
Обратите внимание, что заголовки читаются сверху вниз, от получателя к отправителю.

  • MAILBOX@DST-DOMAIN - почтовый ящик получателя
  • MAILBOX@SRC-DOMAIN - почтовый ящик отправителя
  • SRC-DOMAIN - почтовый домен отправителя
  • SRC-IP - IP-адрес сервера-отправителя
  • SRC-HOST- доменное имя сервера-отправителя
  • John Doe - имя отправителя
  • SRC-USERNAME - имя пользователя (владельца сайта) на сервере
  • DOMAIN.MAIL.TRANSITx - доменное имя транзитного почтового сервера
  • DST-DOMAIN - доменное имя почтового сервера-получателя
  • 172.31.157.6, 172.27.129.26, 172.27.255.58 - IP-адреса транзитных почтовых серверов

Ключевые моменты выделены и описаны ниже под примером технических заголовков письма

[ Offending message ]
>>1> Delivered-To: MAILBOX@DST-DOMAIN
Return-Path: <MAILBOX@DOMAIN>
Delivered-To: MAILBOX@DST-DOMAIN
>>2> Received: from DOMAIN.MAIL.TRANSIT3 ([172.31.157.6])
            by DST-DOMAIN (Dovecot) with LMTP id CBM1CFGLE1nsdAAAglA2ZQ
            for <MAILBOX@DST-DOMAIN>; Wed, 10 May 2017 17:51:13 -0400
>>3> Received: from DOMAIN.MAIL.TRANSIT2 ([172.27.129.26])
            by DOMAIN.MAIL.TRANSIT3 (Dovecot) with LMTP id JF4uNbseE1mkdQAAaisozw
            ; Wed, 10 May 2017 17:51:13 -0400
>>4> Received: from DOMAIN.MAIL.TRANSIT1 ([172.27.255.58])
            (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
            by DOMAIN.MAIL.TRANSIT2 (Dovecot) with LMTP id m+iRJ8GKE1k/KQAAhn5joQ
            ; Wed, 10 May 2017 17:51:13 -0400
Return-Path: <MAILBOX@DOMAIN>
X-Spam-Threshold: 95
X-Spam-Score: 100
X-MS-Exchange-Organization-SCL: 9
Precedence: junk
X-Spam-Flag: YES
X-Virus-Scanned: OK
X-MessageSniffer-Scan-Result: 57
X-MessageSniffer-Rules: 57-8096348-1336-1414-m
                            57-8062039-3853-3956-m
                            57-8062040-3958-4024-m
                            57-8096348-0-4845-f
X-CMAE-Scan-Result: 100
X-CNFS-Analysis: v=2.2 <..skip..> a=hgfeASsxMpdrz9XU3H7z:22
X-Orig-To: MAILBOX@DST-DOMAIN
X-Originating-Ip: [SRC-IP]
Authentication-Results: DOMAIN.MAIL.TRANSIT1; iprev=pass policy.iprev="SRC-IP"; spf=neutral smtp.mailfrom="MAILBOX@SRC-DOMAIN" smtp.helo="SRC-HOST"; dkim=none (message not signed) header.d=none; dmarc=none (p=nil; dis=none) header.from=SRC-DOMAIN
X-Classification-ID: c7ea1d24-35ca-11e7-8599-bc305bf58d14-1-1
>>5> Received: from [SRC-IP] ([SRC-IP:33387] helo=SRC-HOST)
            by DOMAIN.MAIL.TRANSIT1 (envelope-from <MAILBOX@SRC-DOMAIN>)
            (ecelerity 4.2.1.56364 r(Core:4.2.1.14)) with ESMTPS (cipher=DHE-RSA-AES256-GCM-SHA384)
            id 7A/CE-02492-05B83195; Wed, 10 May 2017 17:51:13 -0400
>>6> Received: from SRC-USERNAME by SRC-HOST with local (Exim 4.72)
            (envelope-from <MAILBOX@SRC-DOMAIN>)
            id 1d8ZVj-0002fE-UZ
            for MAILBOX@DST-DOMAIN; Wed, 10 May 2017 21:51:07 +0000
>>7> To: MAILBOX@DST-DOMAIN
Subject: <ТЕМА ПИСЬМА>
>>8> X-PHP-Originating-Script: 511:blog38.php(1937) : eval()'d code
>>9> Date: Thu, 11 May 2017 00:51:07 +0300
>>10> From: USERNAME <MAILBOX@SRC-DOMAIN>
Message-ID: <3a8c________________________eb45@SRC-DOMAIN>
X-Priority: 3
MIME-Version: 1.0
Content-Type: multipart/alternative;
              boundary="b1_3a8c2ade0cc7c877cf504b145e1deb45"
Content-Transfer-Encoding: 8bit

<СОДЕРЖИМОЕ>
  1. Сообщение доставлено получателю
  2. Сервер4. Серверы получателя, которые обработали письмо и добавили различные заголовки, которые говорят о различных проверках (наличие домена и IP в спам-базах и тому подобное)
  3. Сервер3
  4. Сервер2
  5. Сервер1
  6. Поле Received указывает на то, откуда было принято письмо. В самом первом поле отмечается локальный почтовый сервер. В этой же строке указан пользователь, под которым это письмо было отправлено
  7. Почтовый адрес получателя
  8. Скрипт, с помощью которого было отправлено письмо
  9. Дата отправки письма
  10. Почтовый адрес отправителя (поддельный)

Дополнительная информация