Войти
Главная→Документация→Защита от NDR-спуфинга

Защита от NDR-спуфинга (backscatter)

Спамеры подставляют адреса вашего домена в поле «отправитель» своих рассылок. Чужие почтовые серверы не могут доставить такие письма и присылают вам уведомления о недоставке (NDR, bounce) на письма, которых вы никогда не отправляли. Шлюз распознаёт такие уведомления и не пропускает их к пользователям.

Как это работает

  1. Исходящие письма запоминаются. Когда пользователь отправляет письмо через шлюз, шлюз сохраняет в Redis идентификатор письма (Message-ID) на заданное число дней. Сами адреса и текст не сохраняются, хранится только хэш идентификатора.
  2. Входящее уведомление проверяется. Уведомлением считается письмо с пустым адресом отправителя или письмо типа multipart/report (отчёт о доставке, квитанция о прочтении, автоответ). Шлюз берёт из него идентификаторы исходного письма: заголовки In-Reply-To и References самого уведомления, а также Message-ID и Original-Message-ID в процитированной части. Собственный Message-ID уведомления не учитывается, его создал чужой сервер.
  3. Решение. Если хотя бы один идентификатор известен шлюзу, уведомление настоящее: ваше письмо действительно ушло и не дошло. Если ни один не найден, уведомление относится к письму, которого вы не отправляли, то есть это backscatter.

Режимы

Режим выбирается в «Настройки → Уведомления о недоставке (NDR) → Защита от NDR-спуфинга».

РежимЧто происходит с поддельным уведомлением
Наблюдение (по умолчанию)Письмо доставляется, в него добавляется заголовок X-SPZ-NDR: unmatched, событие пишется в журнал. Подтверждённые уведомления получают X-SPZ-NDR: matched.
КарантинШлюз принимает письмо (SMTP 250) и кладёт его в карантин. Пользователь его не видит, администратор может просмотреть и при необходимости выпустить.
ОтклонениеШлюз отвечает SMTP 5xx. У уведомления пустой отправитель, поэтому отказ не порождает новых писем. Копия остаётся в карантине.
ВыключенаПроверка не выполняется, исходящие письма не запоминаются.
Начните с режима «Наблюдение» и подождите срок хранения (по умолчанию 14 дней). За это время шлюз накопит идентификаторы ваших исходящих писем. Затем посмотрите в журнале события «NDR … отправлено не отсюда» и переходите на «Карантин» или «Отклонение». Если включить блокировку сразу, настоящие уведомления о недоставке писем, отправленных до включения защиты, будут восприняты как поддельные.

Настройка

ПараметрЗначение
Защита от NDR-спуфингаРежим: выключена, наблюдение, карантин, отклонение. Хранится в control/spamorez/ndr_mode.
Сколько дней помнить исходящие письмаОт 1 до 365, по умолчанию 14. Должно быть не меньше, чем время, за которое чужие серверы успевают сообщить о недоставке (до 5 дней для большинства серверов). Хранится в control/spamorez/ndr_ttl.

Изменения вступают в силу для следующих писем, перезапуск не нужен.

Что отражается в журнале

КодСобытие
636Уведомление подтверждено: оно отвечает на письмо, ушедшее через шлюз.
635Поддельное уведомление, режим наблюдения: доставлено с пометкой.
634Поддельное уведомление помещено в карантин.
596Поддельное уведомление отклонено.

События передаются и в SIEM. В системном журнале шлюза строки начинаются с ndr:.

Ограничения