Советы

С вашего сайта рассылается спам: как найти источник и остановить за 6 шагов

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

С вашего сайта рассылается спам: как найти источник и остановить за 6 шагов

Если хостинг сообщил, что с вашего сайта рассылается спам, или письма компании перестали доходить до клиентов, источник обычно один из трёх: взломанный сайт с вредоносным скриптом рассылки, форма на сайте, через которую боты отправляют письма, или скомпрометированный почтовый ящик. Действовать нужно быстро: сначала остановить рассылку, затем найти источник, закрыть уязвимость и восстановить репутацию домена. Ниже — пошаговый план, понятный без глубоких технических знаний.

Спам-рассылка с сайта компании в почтовом ящике

Признаки того, что с сайта идёт спам

Иногда о проблеме сообщает хостинг-провайдер: присылает уведомление или блокирует отправку почты. Но бывают и косвенные признаки, которые стоит знать:

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

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

Три основных источника спама

Источник Как проявляется Первое действие
Вредоносный скрипт на сайте Массовые письма идут от имени веб-сервера, в файлах сайта есть подозрительный PHP-код Остановить отправку, искать заражённые файлы
Форма обратной связи Письма-уведомления приходят пачками, в полях ссылки и мусорный текст Включить защиту формы, проверить настройки отправки
Взломанный почтовый ящик Письма отправляются через почтовый сервер с вашей учётной записи Сменить пароль ящика, проверить устройства
Открытый ретранслятор на VPS Почтовый сервер принимает и пересылает письма от кого угодно Проверить конфигурацию почтового сервера

Шаг 1. Остановите рассылку

Пока спам продолжает уходить, репутация домена и IP-адреса ухудшается. Поэтому первым делом надо прекратить отправку, даже если источник ещё не найден.

  1. Если сайт на виртуальном хостинге, напишите в поддержку: провайдер может временно ограничить отправку почты и подсказать, какой скрипт отправлял письма.
  2. Если у вас свой VPS с почтовым сервером, посмотрите очередь писем. Для Postfix это команда:
    postqueue -p

    Если очередь забита спамом, после изучения нескольких писем её можно очистить:

    postsuper -d ALL

    Будьте внимательны: эта команда удалит и нормальные письма, которые ещё не ушли.

  3. Временно отключите формы на сайте, если подозреваете их.
  4. Смените пароли к панели хостинга, FTP/SFTP, базе данных, админке сайта и почтовым ящикам.

Совет: прежде чем удалять очередь, сохраните заголовки двух-трёх спам-писем. В них часто указан скрипт или учётная запись, через которую шла отправка, а это главная улика.

Проверка почтовой очереди сервера при спам-рассылке с сайта

Шаг 2. Найдите источник по заголовкам и логам

Заголовки письма показывают его путь. Если в них есть поле X-PHP-Originating-Script (оно добавляется, когда в настройках PHP включён соответствующий параметр), там будет указан файл, из которого вызывалась отправка. Если письмо ушло через авторизацию на почтовом сервере, в логах будет видна учётная запись.

Что смотреть в логах

  • Почтовый лог (на многих Linux-серверах это /var/log/mail.log или /var/log/maillog): от какого пользователя и в каком количестве уходили письма.
  • Лог доступа веб-сервера: частые POST-запросы к одному и тому же файлу, особенно к файлу с непонятным именем, — характерный признак скрипта рассылки.
  • Панель хостинга: многие провайдеры показывают статистику отправленной почты по сайтам.

Как найти подозрительные файлы

Если доступ к серверу по SSH есть, можно поискать недавно изменённые PHP-файлы в папке сайта:

find /path/to/site -name "*.php" -mtime -7

И файлы с типичными для вредоносного кода конструкциями:

grep -rlE "eval(base64_decode|gzinflate(base64_decode" /path/to/site

Совпадение не всегда означает вирус, но такие файлы нужно изучить внимательно. Особенно подозрительны PHP-файлы в папке загрузок (в WordPress это wp-content/uploads), где их быть не должно.

Шаг 3. Если виноваты формы

Формы обратной связи — частый канал злоупотреблений. Боты заполняют форму с адресом жертвы в поле email, и если сайт отправляет «копию заявки» пользователю, ваш сервер рассылает спам от своего имени. Бывает и проще: на вас самих сыплются сотни мусорных заявок.

  1. Отключите отправку копии письма на адрес, указанный в форме, если она не обязательна.
  2. Добавьте защиту: капчу, скрытое поле-ловушку, ограничение частоты отправки.
  3. Проверьте, что в поля формы нельзя подставить дополнительные заголовки письма.
  4. Обновите плагин или скрипт формы до актуальной версии.

Подробно способы защиты разобраны в статье как защитить формы от спама.

Защита формы обратной связи на сайте от спам-ботов

Шаг 4. Если взломан почтовый ящик

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

  • Смените пароль ящика на длинный и уникальный.
  • Включите двухфакторную аутентификацию, если почтовый сервис её поддерживает.
  • Проверьте компьютеры и телефоны, с которых заходили в почту, антивирусом.
  • Посмотрите правила пересылки и фильтры в ящике — злоумышленники иногда оставляют свои.
  • Сообщите сотрудникам, чтобы не открывали подозрительные письма от «коллег».

Шаг 5. Очистите сайт и закройте уязвимость

Удалить один вредоносный файл недостаточно: если уязвимость осталась, через неделю появится новый. Порядок такой:

  1. Сделайте копию текущего состояния сайта для анализа.
  2. Восстановите сайт из чистой резервной копии, если она есть и точно сделана до заражения.
  3. Если копии нет — замените ядро CMS, темы и плагины на чистые версии из официальных источников и вручную проверьте остальные файлы.
  4. Удалите неиспользуемые темы, плагины, старые копии сайта в соседних папках.
  5. Обновите всё до актуальных версий и смените все пароли ещё раз.
  6. Проверьте список администраторов в CMS и удалите незнакомых.

Полный план действий после взлома — в нашей статье что делать, если сайт взломали.

Шаг 6. Восстановите репутацию домена

После остановки спама письма могут ещё какое-то время попадать в спам у получателей. Чтобы ускорить восстановление:

  • Проверьте IP-адрес и домен в публичных чёрных списках (например, Spamhaus) и, если они там есть, следуйте процедуре удаления на сайте конкретного списка.
  • Настройте записи SPF, DKIM и DMARC в DNS домена. Они помогают почтовым сервисам понять, кто имеет право отправлять письма от вашего имени.
  • Если используете Яндекс Почту или Gmail для писем пользователям, посмотрите их инструменты для отправителей (Postmaster), чтобы следить за репутацией.
  • Для писем с сайта используйте SMTP с авторизацией, а не встроенную функцию отправки PHP.

Пример простой записи SPF, разрешающей отправку только с серверов, указанных в MX-записях домена, и с серверов почтового сервиса:

v=spf1 mx include:_spf.yandex.net ~all

Это пример для домена на Яндекс 360 — для другого почтового сервиса значение будет своим, его указывают в справке провайдера.

Настройка SPF и DKIM в DNS для защиты домена от спама

Частые вопросы

Можно ли просто удалить подозрительный файл и забыть?

Нет. Пока не закрыта уязвимость, через которую файл попал на сервер, заражение, скорее всего, повторится. Нужно обновить ПО, сменить пароли и проверить сайт целиком.

Как долго восстанавливается репутация домена?

Зависит от масштаба рассылки и конкретных почтовых сервисов. Обычно ситуация постепенно улучшается после прекращения спама и правильной настройки SPF, DKIM и DMARC, но точных сроков никто не гарантирует.

Хостинг заблокировал сайт — что делать?

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

Нужно ли сообщать клиентам?

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

Как не допустить повторения

  • Регулярно обновляйте CMS, тему и плагины.
  • Используйте сложные уникальные пароли и менеджер паролей.
  • Делайте резервные копии и храните их отдельно от сервера.
  • Защитите все формы и следите за объёмом отправляемой почты.
  • Настройте мониторинг файлов сайта на изменения.

Мы в Pear Advert регулярно сталкиваемся с ситуациями, когда сайт тихо рассылал спам месяцами, а владелец узнавал об этом только после блокировки. Если не хотите разбираться сами — подключите поддержку сайтов: найдём источник рассылки, очистим сайт, настроим почтовые записи и возьмём сайт под постоянный контроль.

Читать дальше

Статьи по теме

Начать проект

Давайте сделаем крутой проект вместе

Расскажите о задаче — мы бесплатно проанализируем нишу, предложим решение и назовём сроки со стоимостью. Без навязчивых звонков.

Телефон

8 (926) 837 76 68

Почта

info@pear-advert.ru

Офис

Москва, ул. Гиляровского, 57с1

Оставьте заявку

Ответим в течение рабочего дня

Выберите тип проекта

Данные используются только для ответа на заявку и хранятся не дольше трёх лет.