Правило Spamassasin для отметки определенных IP-адресов MX

Я заметил поток спама, связанный с тем же диапазоном IP-адресов.

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

Я заметил, что MX для адресного домена "от" все находятся в небольшом диапазоне IP-адресов, все они находятся на одном узле службы VPS. ТОО «Аутлет Индия». Итак, кто-то использует эту службу для размещения фермы спам-ботов.

Я хотел бы создать правило spamassassin, которое говорит что-то вроде:

  • Извлечь домен «от»
  • Найдите MX этого домена
  • Найдите IP-адрес этого MX
  • . Он выглядит как 36.255.24.x / 21
  • Дайте ему высокий балл, например +2

Я использую прокси spampd и spamassassin, работающие в Linux.

Для пояснения, вот пример: Спам-электронное письмо отправлено из (скрытого) источника, оно проходит SPF, DMARC и подписано DKIM - все законно, но это спам. Только по этим проверкам он получает хорошие результаты.

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

Я выполняю поиск MX RR DNS на сайте stufftobuy.com, и вы получаете mail.stufftobuy.com, выполняю поиск A RR DNS на mail.stufftobuy.com, и он возвращает IPV4 с нескольких адресов, на которые указывают все записи MX от домена.

Мне нужно провести дополнительный анализ, но похоже, что это всего лишь две серверные фермы, одна в Индии, другая в Турции.

Из 1000 писем один IPV4 может появиться только дважды.

Я не могу просто забейте или заблокируйте stufftobuy.com, так как это фактическое доменное имя можно использовать только один раз. Следующее сообщение может быть от makecatvids.com или чего-то еще.

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

ОБНОВЛЕНИЕ : Я вижу, что плагин askdns существует, но я не вижу, как одно правило может влиять на другое. Одного поиска в DNS недостаточно.

1
задан 15 November 2019 в 17:38
1 ответ

Значительно более важный: Удостоверяются, что Вы используете репутацию IP отправителя, например, через [1 115] Дзэн Spamhaus и SpamCop, Блокирующий Список . Они уже включены в SpamAssassin по умолчанию (см. RCVD_IN_PBL и RCVD_IN_BL_SPAMCOP_NET), просто удостоверьтесь, что Вы имеете Почта:: SpamAssassin:: Плагин:: DNSEval правильно загрузился и что Вы работаете с включенными тестированиями сети (который также требуется для AskDNS).

Почта:: SpamAssassin:: Плагин:: AskDNS не может сделать этого. Необходимо было бы записать собственный плагин, чтобы сделать точно, что Вы ищете.

Однако, возможно, это использование AskDNS может получить Вас близко:

ifplugin Mail::SpamAssassin::Plugin::AskDNS

askdns   JM_SPF_HAS_36_255 _AUTHORDOMAIN_ TXT /\sip4:36\.255\.(?:2[0-4]|3[01])\./
describe JM_SPF_HAS_36_255 From header's SPF record blesses an IP in 36.255.24.0/21
score    JM_SPF_HAS_36_255 2.0

endif

Это проверяет Платформа политики Отправителя (SPF) запись для домена From заголовка. Протесты:

  • SPF является списком хостов, разрешенных к [1 124], отправляют почта от имени домена (см. ниже)
  • SPF проверяет домены в соединение SMTP HELO & mail from команды, не заголовки
  • записи SPF могут содержать домены, может включать другие записи, и т.д., все же это правило только смотрит на дюйм/с
    , Например: v=spf1 ip4:198.51.100.21 mx a include:example.com ~all имеет проблемы:
    • Только один IP явно перечислен здесь, и он не соответствует
    • , запись MX могла бы соответствовать, но он перечислен как всего mx, и мы не можем разрешить это к IP
    • Так же для запись
    • Так же для включения; возможно, это имеет a или другой include:…, который может перечислить этот IP

Относительно того первого маркера: запись MX относится к [1 126] получение почта, таким образом, я полагаю, что список SPF разрешенных отправка хосты более релевантен в общем случае, хотя я не могу говорить с Вашим точным намерением.

<час>

Обновление: Вы упомянули, что эти сообщения со спамом DKIM - подписаны. При принятии они все совместно используют тот же домен подписания, просто блок на основе того (никакой сетевой необходимый поиск!):

header   JM_DKIM_EVIL_EXAMPLE_COM  DKIM-Signature =~ /\sd=evil\.example\.com;/
describe JM_DKIM_EVIL_EXAMPLE_COM  Message has DKIM signed by evil.example.com
score    JM_DKIM_EVIL_EXAMPLE_COM  2.0

Вам будет нужно одно из этих правил на подписание домена (d=…), Вы находите, который я ожидаю, небольшое число.
, С другой стороны, Вы могли использовать regex чередование. Например:
/\sd=(?:(?:evil|spammer)\.example\.com|bad\.example\.info);/ заблокируется d=evil.example.com;, d=spammer.example.com;, и d=bad.example.info;.

1
ответ дан 3 December 2019 в 22:58

Теги

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