Разбирайте файл .eml: заголовки, цепочка Received, ссылки, хеши вложений, несоответствия отправителя.
Проверка SPF, DKIM и DMARC
Сам инструмент доступен на английском языке; на этой странице приведено его описание на вашем языке.
Используйте Проверка SPF, DKIM и DMARC
Для чего это нужно
Введите домен, чтобы увидеть, насколько он защищён от подделки отправителя: дерево include в SPF с числом запросов, политику DMARC, размеры ключей DKIM, MTA-STS, TLS-RPT, BIMI и MX.
DNS-имена, которые вы ищете, отправляются на DNS-ретранслятор PhishDestroy (/api/dns-resolve.php), который запрашивает данные у Cloudflare или Google DNS по протоколу HTTPS.
Как использовать Проверка SPF, DKIM и DMARC
- Введите домен. Введите домен, адрес электронной почты или URL. Инструмент оставляет только домен, убирает начальный www. из URL и отбрасывает префиксы вроде _dmarc.
- Добавьте селекторы DKIM. Если у вас есть письмо с этого домена, скопируйте значение s= из его заголовка DKIM-Signature в поле селекторов. Проверяется до 10 селекторов.
- Запустите проверку. Нажмите Check или Try common DKIM selectors (попробовать распространённые селекторы), чтобы проверить 15 частых имён. Счётчик показывает, сколько DNS-запросов использовано.
- Прочитайте таблицу Summary. Каждая запись получает оценку pass, warn, fail, info или error с выводом в одну строку. Разделы ниже показывают исходные записи и дерево include для SPF.
- Используйте результат. Домен без SPF и без строгой политики DMARC легко подделать. Учитывайте это, когда оцениваете письмо, якобы пришедшее с него.
Пример
Домен, который не отправляет почту
example.comChecked example[.]com · 6 DNS queries through the relay (Cloudflare)
Summary
RECORD STATUS FINDING
SPF pass "v=spf1 -all": no server may send mail as example[.]com, so any message from it is forged
DMARC warn p=reject, sp=reject
DKIM info Not checked: DKIM keys can only be found by selector (see the DKIM-Signature s= of a message)
MTA-STS info No MTA-STS record (optional): senders may deliver over unencrypted or unverified TLS
TLS-RPT info No TLS-RPT record (optional): no reports about TLS delivery failures
BIMI info No BIMI record (optional). DMARC is at enforcement
MX info Null MX "0 .": the domain accepts no mail (RFC 7505)
SPF
DNS-QUERYING TERMS
0 of 10
VOID LOOKUPS
0 of 2
UNLISTED SENDERS GET
fail (-all)
v=spf1 -all
Include and redirect tree (lookups are numbered in evaluation order; include, a, mx, ptr, exists and redirect count, RFC 7208 §4.6.4)
example[.]com · 0 lookups here, 0 in this branch
fail -all
DMARC
Found at _dmarc.example[.]com
v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s
warn no rua: the owner receives no aggregate reports
TAG VALUE MEANING
v DMARC1 version
p reject policy for the domain itself — reject: failing mail is refused
sp reject policy for subdomains (default: p) — reject: failing mail is refused
adkim s DKIM alignment: r = same organization, s = exact domain (default r)
aspf s SPF alignment: r = same organization, s = exact domain (default r)
DKIM
DNS cannot list DKIM keys: each one sits under a selector chosen by the sender (selector._domainkey.example[.]com). Enter the s= value from a message's DKIM-Signature header, or press “Try common
…SPF v=spf1 -all, DMARC p=reject и нулевой MX (0 .): домен заявляет, что он не отправляет и не получает почту, поэтому любое сообщение от него является поддельным. DMARC помечен как «warn» только потому, что в записи отсутствует адрес rua=, поэтому владелец не получает сводных отчетов; сама политика (p=reject, sp=reject) соблюдается в полной мере.
Что проверяется
| Сигнал | Что это означает |
|---|---|
| Запись SPF | Отсутствие записи — это fail. +all позволяет пройти любому серверу, а ?all или отсутствие all не даёт защиты; ожидается -all или ~all. |
| Счётчики запросов и пустых запросов SPF | include, a, mx, ptr, exists и redirect требуют по одному DNS-запросу. Более 10 запросов или более 2 запросов, которые ничего не вернули, ломают SPF с ошибкой permerror. |
| Политика DMARC | p=none только наблюдает, quarantine отправляет не прошедшие проверку письма в спам, а reject их отклоняет. Предупреждения касаются также pct меньше 100, sp=none и отсутствия адреса rua. |
| Унаследованный DMARC | Если у поддомена нет записи, читается запись организационного домена и помечается как унаследованная. |
| Ключ DKIM | Показывается для каждого селектора с типом и размером. RSA меньше 1024 бит — fail, меньше 2048 — предупреждение, а пустой p= означает, что ключ отозван. |
| MTA-STS и TLS-RPT | Необязательные записи, которые просят отправителей использовать проверенный TLS и сообщать о сбоях. Если их нет, вы увидите примечание, а не ошибку. |
| BIMI | Необязательная запись с логотипом бренда. Она учитывается только при DMARC в режиме quarantine или reject с pct=100. |
| MX | Перечисляет почтовые серверы. Null MX (0 .) означает, что домен не принимает почту; NXDOMAIN — что домена не существует. |
Еще примеры
URL вместо домена
https://www.example.net/loginПримечание о том, что www.example.net проверяется как example.net, затем 6 DNS-запросов: SPF pass для "v=spf1 -all", DMARC warn для p=reject, sp=reject без адреса rua, DKIM не проверялся, записей MTA-STS, TLS-RPT и BIMI нет, а также null MX.
Несуществующий домен
nothing.exampleSPF fail (нет записи SPF), DMARC fail (нет записи DMARC) и MX fail, потому что nothing.example не существует (NXDOMAIN). В строке BIMI отмечено, что DMARC не в режиме принудительного применения.
Имя DKIM-записи
google._domainkey.example.orgСелектор google попадает в поле селекторов, а проверяется example.org. В строке DKIM написано "google: revoked" (отозван), потому что в записи ключа пустой p=.
Часто задаваемые вопросы
Что проверяет Email Authentication Checker?
Запись SPF и все подключаемые ею include и redirect: механизмы, требующие DNS-запросов, сравниваются с лимитом 10, а пустые запросы (void lookups) — с лимитом 2 (RFC 7208). Инструмент также читает запись DMARC, при необходимости переходя к организационному домену, ключи DKIM для указанных вами селекторов и записи MTA-STS, TLS-RPT, BIMI и MX.
Чего инструмент не видит?
DNS не позволяет получить список ключей DKIM: каждый находится под селектором, выбранным отправителем, поэтому введите значение s= из заголовка DKIM-Signature письма или попробуйте распространённые селекторы; если ключ не найден, это ничего не доказывает. Файл политики MTA-STS и логотип BIMI не загружаются, а макросы SPF, зависящие от отправителя, не раскрываются.
Что отправляется по сети?
Только DNS-имена, построенные из введённого домена, например _dmarc.example.com; они уходят на DNS-прокси PhishDestroy, который запрашивает Cloudflare или Google через DNS over HTTPS. Проверка использует примерно от 5 до 25 запросов; прокси допускает 60 в минуту.
Значит ли хороший результат, что письмо с этого домена подлинное?
Нет. Инструмент читает опубликованную политику домена, а не конкретное письмо. Чтобы узнать, прошло ли конкретное письмо SPF, DKIM и DMARC, откройте его исходный код в EML Analyzer.
Почему DMARC помечен warn даже при p=reject?
Предупреждения касаются и настроек, ослабляющих охват или отчётность: нет адреса rua для агрегированных отчётов, pct меньше 100 или sp=none для поддоменов. Сама политика reject при этом продолжает действовать.
Что такое пустой запрос (void lookup)?
DNS-запрос при проверке SPF, который не возвращает пригодных записей, например механизм a: или mx:, у имени которого нет адресов или почтовых серверов. SPF допускает два таких запроса; третий приводит к ошибке permerror.