Назад | Перейти на главную страницу

Остановить скрипты, размещенные на сервере, отправлять электронные письма с использованием адреса другого домена на том же сервере

Позвольте мне немного объяснить вам ситуацию ..

На одном сервере размещены два веб-сайта: example1.com и example2.com. Предположим, что Example2 взломан, и злоумышленник пишет функцию PHP для отправки электронной почты с помощью функции PHP mail или sendmail, и он отправляет электронную почту с адресами домена @ example1.com. Записи SPF и DKIM будут определять исходящие письма из сценария example2.com как легитимные, потому что запись SPF указывает на правильный адрес сервера, верно?

Тогда .. Можно ли запретить веб-сайту, размещенному на вашем собственном частном сервере, отправлять электронные письма (через почту PHP или sendmail) с именем другого размещенного домена?

Существуют различные варианты, которые можно использовать в зависимости от MTA. Я больше всего знаком с Exim4, который позволяет использовать несколько опций:

  • Требовать аутентификации для всей почты, отправленной с использованием идентификатора пользователя веб-сервера.
  • Предотвратить исходящие сообщения, поступающие на неаутентифицированные IP-соединения. Вы можете разрешить пересылку сообщений.
  • Ограничение скорости исходящих сообщений. Это может быть основано на нескольких факторах.

Вышеупомянутое не касается того факта, что сценарий может просто искать MX для пункта назначения и обходить ваш почтовый сервер. Здесь не будет подписи DKIM, но DKIM часто / обычно неправильно настроен. В результате я далек от использования DKIM для проверки электронной почты. DMARC помогает тем доменам, которые публикуют политику, но не получили широкого распространения.

В Linux вы можете запретить обход почтового сервера с помощью правила брандмауэра. Можно фильтровать трафик на основе пользователя, так что только ID пользователя почтового сервера может отправлять трафик на порт 25. Вы можете разрешить трафик на порт 587, поскольку для этого потребуется аутентификация.