Причины рассылки спама с сайта

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

Диаграмма источников и причин рассылки спама представлена ниже: 

Рассмотрим все возможные причины рассылок почтового спама с сайта (или сервера) и варианты решения этой проблемы.

Спам-рассылка в результате взлома

Взлом сайта или сервера - это наиболее популярная причина возникновения несанкционированной рассылки. Как все происходит? Сайт взламывается хакерами через уязвимости в скриптах или в результате раскрытия доступов (учетных записей) к FTP/SSH/админ-панели сайта или панели хостинга. Получив возможность загружать  файлы, хакер (или его бот) размещает спам-скрипты в каталогах сайта или сервера  и рассылает спам через них. Обнаружить источник спам-рассылки данном случае поможет анализ служебных заголовков спам-письма (или логов почтового сервиса) и журнала access_log.

Иногда взламывают не сам сайт, а сервер (например, арендованный VPS), загружают по SSH скрипты Perl или Python и через них организуют рассылку почтового спама или туннель.

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

Спам-рассылка без взлома

Рассмотрим более интересные варианты: как спам может рассылаться без взлома сайта (сервера) и спам-скриптов. Их пять.

  1. Спам через уязвимости в скриптах отправки писем

    Если на сайте есть скрипты, которые не проверяют значения, передаваемые в запросе, то велика вероятность эксплуатации уязвимости и рассылки спама через легитимные скрипты. Так было, например, с рассылкой спама через рекомендательный компонент плагина virtuemart в Joomla, где любой желающий мог отправить произвольный текст произвольному адресату.

    Второй популярный вариант рассылки спама – это использование форм обратной связи, у которых не реализован механизм защиты от ботов (captcha) или со слабой защитой (стандартная captcha). Слабые капчи легко обходятся современными спам-ботами, а если форма не содержит никаких механизмов защиты от ботов, то вероятность спама близка к 100%. Например, проблемы часто возникают у сайтов с формами “Позвоните мне” или “Быстрый заказ”, которые реализованы в виде всплывающего окна с ajax-обработчиком.

    Проблема спам-рассылки решается посредством добавления к форме специального поля со сложным механизмом проверки “я не бот”, например, от Google Recaptcha2.
     
  2. Спам из-за массовых регистраций пользователей или атак на сайт

    На многих сайтах, где (возможно и неявно) активирована функция регистрации пользователей, большой поток писем может генерироваться в результате отправки уведомлений о регистрации. Как это работает: специальный бот несколько раз в секунду отправляет специально сформированные запросы на сайт, в результате чего в базе данных создаются новые пользователи, а администратору на email отправляется уведомление о том, что необходимо одобрить или отклонить регистрацию (или просто письмо-уведомление с информацией о том, что на форуме или сайте появился новый пользователь). Таких писем может отправляться несколько сотен в час. Данная проблема часто встречается на сайтах Joomla с активным компонентом K2 или на форумах, где администратор включил опцию отправки уведомлений о регистрации.

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

    Проблема решается посредством добавления механизма защиты от авторегистраций (например, через Google Recaptcha2) или (в качестве временного решения) отключения уведомлений о регистрации пользователей.


    Еще одним источником несанкционированной рассылки писем может быть проактивная защита или плагин мониторинга на сайте. Правда жизни в том, что на все публичные веб-ресурсы (например, если сайт проиндексирован в поисковой системе) идут постоянные атаки: сканеры, боты и хакеры ищут “чувствительные” файлы и уязвимости в скриптах. И если на сайте есть плагин, отслеживающий веб-атаки, то любой хакерский запрос к страницам сайта формирует отправку уведомления администратору сайта по электронной почте. Учитывая, что атак в секунду может быть несколько десятков, то подобные уведомления быстро превращаются в спам и забивают очередь почтового сервиса, а за это хостер может блокировать почтовый сервис или даже целиком сайт. Часто проблема наблюдается на Битрикс-сайтах, если включена проактивная защита и уведомления администратора по email.
     

  3. Отправка писем через SMTP другого сервера

    К счастью, некорректно настроенный SMTP на VPS или выделенном сервере - явление сейчас редкое, но тем не менее возможное. Проблема называется “Open Relay” – это почтовый сервер, через который любой неавторизованный пользователь может отправлять почту по SMTP протоколу.

    Если на вашем выделенном сервере в результате некорректных настроек присутствует SMTP-relay, то сервер будет активно эксплуатироваться для спам-рассылок и, скорее всего, его заблокирует обслуживающая компания по жалобе от SpamCop или другого мониторингового сервиса. Проверить корректность настройки SMTP на сервере можно  на этой странице. Если у вас обнаружена некорректная настройка почтового сервера, обратитесь к администратору.
     
  4. Рассылка спама через взлом почтового ящика домена

    Последнее, что приходит в голову владельцу сайта, которого заблокировали за спам – это проверить свои почтовые ящики домена на взлом.
    В последнее время все чаще подвергаются компрометации именно корпоративные email, зарегистрированные в домене сайта. Доступ к почте хакеры получают в результате подбора/перехвата/кражи паролей, а это, в свою очередь, случается при работе пользователя по небезопасному сетевому подключению, в результате работы троянских программ или клавиатурных шпионов на компьютере и мобильном устройстве. Взломать могут email бухгалтера или менеджера по работе с клиентами – тех, кто не особенно посвящен в тему информационной безопасности.

    Если почта размещена в серверах хостера, то спам, отправляемый через взломанный email, будет идти также через почтовый сервер хостинг-компании, и владелец сайта получит уведомление о спам-рассылке. По анализу служебных заголовков отправляемых писем можно определить, с какого именно email отправляются письма.

    В качестве превентивной меры следует как можно чаще менять пароли от почтовых ящиков, устанавливать их сложными и разными.
     
  5. Отправка спама с подменой отправителя

    Часто владельцы сайтов, у которых почта находится на почтовых серверах хостера, получают так называемые NDR (Non Delivery Report) – уведомления о недоставленных почтовых письмах. При этом текст письма может содержать спам-сообщение (рекламный текст, фишинговая ссылка или вредоносный аттач). Естественно, данные письма пользователь почтового ящика не отправлял. В каких случаях данная проблема может возникать?

    Варианта два:
    1. Взлом почтового ящика, про который мы писали в пункте №4.
    2. Отправка писем с фальшивого email.

    Например, в качестве email отправителя хакеры могут использовать случайную последовательность символов вместо имени пользователя: asdfjhawfkjwf@mysite.ru В этом случае, если письмо не доставлено получателю (а в случае спам-рассылки таких писем сотни или даже тысячи), то email возвращается на asdfjhawfkjwf@mysite.ru. Конечно, вероятнее всего данного почтового ящика не будет зарегистрировано в домене и письмо попадет или в ящик, который назначен как обработчик “по-умолчанию” для всех недоставленных писем (например, email администратора или владельца сайта), или будет удалено. Это еще полбеды. Но зачастую злоумышленники используют существующие email для отправки спама. Ничто не мешает хакеру отправить email, указав в поле From чей-нибудь существующий адрес, например, admin@mysite.ru . Особенно, если для домена mysite.ru, на котором зарегистрирован email, не настроены соответствующие аутентификационные механизмы SPF и DKIM. Тогда все недоставленные письма вернутся на admin@mysite.ru и единственный вариант борьбы с ними – это настройка антиспам-фильтра на почтовом сервере или фильтра, который будет удалять NDR письма автоматически.

Рекомендации по настройке почты

Несколько базовых рекомендаций по безопасной настройке почты на домене:

  1. Подключите домен к специализированным почтовым сервисам pdd.yandex.ru, корпоративный gmail, mail.ru для бизнеса. Это гарантирует корректную работу SMTP сервера, позволит работать по безопасному IMAP и обеспечит должный уровень защиты от спама.
  2. Настройте DMARC, SPF, DKIM для вашего домена, чтобы защититься от помены отправителя.

В качестве заключения

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