Почему проверки SPF кажутся бесполезными?

454
Petr

Я установил запись SPF для домена, однако подделка отправителя все еще работает, причина довольно проста:

Похоже, в электронном письме есть 3 различных «от»:

  • Ответить на
  • Обратный путь
  • Конверт из

См. Https://stackoverflow.com/questions/1235534/what-is-the-behavior-difference-between-return-path-reply-to-and-from для получения дополнительной информации.

Ваш почтовый клиент отображается reply toкак электронная почта отправителя, однако почтовые серверы, кажется, выполняют проверку SPF return pathили envelope fromдля меня это не имеет никакого смысла.

Это означает, что, если я отправить электронную почту, которая будет говорить return pathи envelope fromесть hacker.netи reply toесть, someone@victim.orgкоторые я пытаюсь обмануть, он будет проверять SPF от hacker.net, предположим теперь, что это был мой домен, который я настроил SPF для, он будет проходить и доставлено на почтовый ящик жертвы как на почту, someone@victim.orgдаже если мне не разрешено доставлять электронные письма victim.org, эффективно обходя проверку SPF.

Есть ли способ это исправить? Кажется, что только DMARCможет предотвратить это, но если это правда, какой смысл проверки SPF?

1

1 ответ на вопрос

1
anthony don

Просто, чтобы завершить ваш список различных значений «От», я бы добавил:

  • From, который является заголовком, установленным клиентом и определенным в RFC 5322 ( RFC 5322.From)
  • Reply to, также является заголовком, установленным клиентом и определенным в RFC 5322
  • Return pathи Envelope fromоба ссылаются на аргумент MAIL FROMкоманды во время сеанса SMTP ( RFC 5321.MailFrom)

Цель DMARC - передать политику, применяемую к сообщениям, которые не работают как с SPF, так и с DKIM, вместо того, чтобы полагаться на локальные политики. Эта политика выражается владельцем доменного имени отправителя (с использованием p=параметра записи DMARC).

Во время оценки DMARC выполняется проверка выравнивания Идентификатора (см. RFC 7489, раздел 3.1), которая обеспечивает либо:

  • доменное имя RFC 5321.MailFromпереданного SPF совпадает с доменомRFC 5322.From
  • доменное имя, используемое в переданном DKIM, совпадает с доменом RFC 5322.From

Поэтому, чтобы решить вашу проблему, вы должны опубликовать запись DMARC в victim.orgзоне DNS:

_dmarc.victim.org IN TXT "v=DMARC1; p=quarantine; rua=mailto:admin@victim.org" 

Это гарантирует, что неудачное выравнивание идентификатора, как в вашем примере, приведет к сбою DMARC, и сообщение будет помечено как спам.

Смысл проверки SPF состоит в том, чтобы убедиться, что IP-адрес клиента во время сеанса SMTP разрешен владельцем hacker.net. В вашем примере, SPF здесь, чтобы защитить hacker.netне victim.org:-)

Если вы хотите посмотреть с высоты птичьего полета, я опубликовал пост с иллюстрацией того, как SPF, DKIM и DMARC работают вместе для предотвращения фишинг-фишинга (прокрутите до середины поста)

Похожие вопросы