Вчера не смог зайти на свой VPS
Несмотря на то что оплачен, он оказался заблокирован. Написал в тех.подержку, оказывается сутки назад тех. поддержка отправила мне письмо, которое я не увидел. Вот его содержание.
Здравствуйте.
Нами были получены многократные жалобы об исходящем e-mail спаме с Вашего сервера:
" This is a complaint regarding spam received from (Server Name).
Mail originating from this IP, has actively been marked as spam/junk by the receiver.
We ask that you investigate and take appropriate action against the offending IP-address.
For forensic purposes, the offending email is attached to this mail (along with other report formats). Below are some key headers from the mail:
Received: from unknown (HELO My IP Address and Name Server)
by IP Address with SMTP; 23 Apr 2024 07:34:03 -0000
Received: (qmail 60562 invoked by uid 502); 23 Apr 2024 07:34:03 -0000
Return-Path: SRS1-xvJVXV6F=xxx.com=-7uscc0mP=L4=site.ru=support@xxx.com
From: "DARIA" support@site.ru
To: <x>
Subject: Salutations! mr. Blameless!
Date: Fri, 19 Apr 2024 14:28:33 +0300
Message-ID: ba28________________________b7b4@site.ru
IP has received degraded delivery-reputation as a result of the report. "
Образец письма из спам-рассылки совместно со всеми техническими заголовками прилагается в текстовом виде по ссылке (ссылка)
Подобная деятельность не допускается Условиями использования - (условия)
Ожидаем получить от Вас объяснение причин происхождения подобных исходящих e-mail писем с Вашего сервера в течение следующих 24 часов с момента создания данного запроса.
В случае, если с Вашей стороны не поступит объяснений и плана действий по решению проблемы в течение этого срока, услуга будет заблокирована.
Но 3 дня назад я обнаружил что один из моих сайтов взломан и я в тот же день перенес его на свой домашний сервер для дальнейшего изучения.
В общем к моменту получения данного письма проблема была решена, но так как я не ответил на письмо в течении суток то сервер заблокировали.
Разбор полётов
Так как у меня настроены еженедельные Backup’ы, Удалось восстановить хронологию ‑неделю назад один из моих сайтов (чтобы не палить, назову его site.ru) был взломан и стал рассылать СПАМ.
Решение проблемы
Написал две программы
- snapshot — программу которая делает снимок всей папки с подпапками /www/wwwroot (там находятся все сайты). Снимок это список абсолютно всех файлов с их контрольными суммами.
- check — программа которая сверяет текущие файлы со списком snapshot и предоставляет отчет — какие файлы были изменены, какие удалены, какие добавлены.
После этого я восстановил из Backup’а зараженный сайт, на момент когда он ещё не был заражен. Сделал снимок /www/wwwroot и в Cron через каждые 12 часов прописал запуск check.
Через 12 часов я получил следующие данные:
Добавлен файл: /www/wwwroot/site.ru/wp-content/plugins/wp-automatic/inc/csv.phpc73637d6eeed.php
Добавлен файл: /www/wwwroot/site.ru/wp-content/plugins/wp-automatic/c73637d6eeed.php
Добавлен файл: /www/wwwroot/site.ru/wp-content/plugins/background-image-cropper/background-image-cropper.js
Добавлен файл: /www/wwwroot/site.ru/wp-content/plugins/background-image-cropper/background-image-cropper.php
Добавлен файл: /www/wwwroot/site.ru/wp-content/plugins/background-image-cropper/readme.txt
Добавлен файл: /www/wwwroot/site.ru/wp-content/plugins/background-image-cropper/c73637d6eeed.php
Добавлен файл: /www/wwwroot/site.ru/wp-content/uploads/c73637d6eeed.php
Добавлен файл: /www/wwwroot/site.ru/wp-content/uploads/c73637d6eeed-1.php
по отчёту видно что вирусные файлы появляются в папках
/wp-content/plugins/wp-automatic/
/wp-content/plugins/background-image-cropper/
Кстати backgroung-image-cropper у меня вообще не было и админке его так же нет.
Закрались сомнения что в этом виноват плагин wp-automatic, так как я его скачивал с варезника, опять восстановил сайт из резервной копии, удалил данный плагин, уменьшил время проверки раз в час и пошёл спать.
На утро меня ждала следующая информация
Изменен файл: /www/wwwroot/site.ru/wp-content/themes/twentytwentytwo/index.php
Добавлен файл: /www/wwwroot/site.ru/wp-content/plugins/background-image-cropper/background-image-cropper.js
Добавлен файл: /www/wwwroot/site.ru/wp-content/plugins/background-image-cropper/background-image-cropper.php
Добавлен файл: /www/wwwroot/site.ru/wp-content/plugins/background-image-cropper/readme.txt
Добавлен файл: /www/wwwroot/site.ru/wp-content/plugins/background-image-cropper/c73637d6eeed.php
Добавлен файл: /www/wwwroot/site.ru/wp-content/themes/twentytwentytwo/c73637d6eeed.php
то есть, несмотря на то что я удалил плагин wp-automatic, который ставил не из репозитория — взлом возобновился, опять появился /wp-content/plugins/background-image-cropper/ и в добавок к этому левый файл в папке темы.
Открыл админку сайта, чтобы посмотреть, нет ли там плагина background-image-cropper — его там нет, но что более интересно ‑все плагины отключены. Ну думаю — не могли же узнать пароль от админки, но на всякий случай решаю его поменять. А там два левых админа.
Удалил этих админов, поменял пароль в админке, удалил все лишние темы, оставив только одну которой пользуюсь. Пока наблюдаю.
Методом нехитрого анализа пришёл к выводу:
- Плагин wp-automatic скаченный с варезного сайта создаёт дополнительного админа. Почему вообще думаю на него ? У меня есть ещё один сайт, который объединяет с этим то что на обоих используется этот плагин и второй сайт тоже взломан.
- Через этого админа ставится плагин background-image-cropper. Кстати почитав форумы не один я сталкиваюсь с тем что через background-image-cropper происходит взлом сайта.
Итоги
Для подтверждения этой теории восстановлю сегодня второй сайт который так же взломан, посмотрю во первых нет ли там дополнительного админа и немного подожду. Если он появляется то удаляю wp-automatic, удаляю этого дополнительного админа и смотрю что будет. И что то мне подсказывает что на этом взлом закончится.
Вы спросите — так ты же удалял wp-automatic и взлом на этом не остановился ? Отвечаю — да, я удалил плагин, но в базу то я не лазил чтобы посмотреть наличие дополнительного администратора.