[exim-conf] Борьба со спамерами через заголовки

Victor Ustugov victor на corvax.kiev.ua
Вт Дек 24 13:29:12 EET 2013


skeletor на lissyara.su wrote:
> Всем привет.

привет

> За последнее время получаю много спама, где поле From содержим
> легитимного юзера (понятно, что подделали), а поля envelope-from и
> Return-Path - адрес спамера. Как можно добавить такие проверки на
> совпадение полей заголовков? Например, проверки типа
> 
> envelope-from = From (только email)
> Return-Path = From (только email)
> 
> Если не совпадает, письмо отсекается. Полазив в инете, наткнулся на
> такую проверку, но она не работает правильно.
> 
> deny   condition = ${if or {{ !eqi{$authenticated_id} {$sender_address} }\
>                { !eqi{$authenticated_id} {${address:$header_From:}} }}}
>        message = Your authenticated_id != sender_address or
> authenticated_id != header_From. \
>                You must send email as the ID you authenticate with.
> 
> Подскажите, как можно бороться против таких спамеров?

этот пример не соответствует задаче проверки соответствия адреса
отправителя и адреса из заголовка From.

указанная выше конструкция проверяет соответствие SMTP логина и адреса
отправителя, а также SMTP логина и адреса из заголовка From.
входящее из мира письмо, отправленное без SMTP аутентификации, просто не
пройдет этот фильтр.

я уже не говорю о специфике использования конструкции ${address: для
извлечения адресов из заголовков, где среди кодированного в quoted
printable текста будет незакодированное двоеточие.

а если все же нужно проверять во всех подряд письмах соответствие
$sender_address и ${address:$h_From:}, то это не очень удачная идея.

в письме, на которое я отвечаю сейчас, в Return-path указан адрес
<exim-conf-bounces на mta.org.ua>, а в From указан адрес
<skeletor на lissyara.su>:

Return-path: <exim-conf-bounces на mta.org.ua>
From: "skeletor на lissyara.su" <skeletor на lissyara.su>

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

и наверняка будут проблемы с еще какими-нибудь валидными письмами, о
которых я сейчас не вспомнил.

если на том же gmail.com пользователь хочет отправлять почту с другого
адреса, то в Envelope From будет его реальный адрес на gmail.com, а в
>From альтернативный адрес. я вот прямо сейчас смотрю на письмо приятеля,
который с gmail.com пишет, а в From у него корпоративный адрес, входящая
почта которого завернута в его ящик на gmail.com.

и не надо говорить, что так делать нельзя. это специфическая ситуация,
но она имеет право на существование.

кроме того, вопрос о проверке соответствия адреса отправителя и адреса
из заголовка From скорее для exim-users на mailground.net, чем для
exim-conf на mta.org.ua.

этот список был когда-то создан для обсуждений конфигуратора exim,
созданного больше 10 лет назад.

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

> Спасибо.


-- 
Best wishes Victor Ustugov  mailto:victor на corvax.kiev.ua
public GnuPG/PGP key:       http://victor.corvax.kiev.ua/corvax.asc
ICQ UIN: 371808614          JID: corvax на corvax.kiev.ua
nic-handle: CRV-UANIC



Подробная информация о списке рассылки exim-conf