Устранение вирусов на сайте с CMS ModX Evolution (Evolution CMS)

Приметы, что у вас на сайте вирусы:

  • Появление множества подозрительных файлов в корневой и других директориях
  • Не открываются страницы сайта помимо главной
  • Повышенная нагрузка на сервер
  • Наличие посторонних пользователей с правами администратора
  • Наличие файлов с расширением php или неизвестными расширениями там, где их быть не должно (например каталог с изображениями)
  • Жалобы со стороны хостинга на спам рассылку или вредоносное ПО.

Что делать? Выполнять действия приведенные ниже.


  1. Делаем бекап файлов и БД.
  2. Скачиваем бекап и прогоняем через антивирус и web-антивирус типа aibolit
  3. На локальном вебсервере разворачиваем чистую версию ModX Evolution (Evolution CMS). Версия должна быть аналогичной той, на которой работает пострадавший сайт. В качестве локального сервера рекомендую Open Server, поскольку он позволяет выбрать конфигурацию сервера, в том числе и версию php
  4. Разворачиваем на чистый сайт копию БД с зараженного сайта.
  5. Прогоняем базу через evoCheck.
  6. Проверяем пользователей на наличие неизвестных пользователей с административными правами. Удаляем их.
  7. Подбрасываем нужные файлы (изображения, js, css, другие файлы)
  8. Подбрасываем при необходимости файлы сниппетов и плагинов, по возможности из чистых источников или проверенные антивирусами
  9. Также бывает, что пользователями в контент могут быть случайно занесены вредоносные js скрипты, то есть еще желательно с помощью поиска поискать в контенте сайта слова
    script
  10. Устраняем конфликты, добиваемся работоспособности сайта
  11. Постепенно обновляем версию CMS до последней версии.
  12. Устраняем конфликты, добиваемся работоспособности сайта на обновленной версии
  13. Проверяем служебные файлы и другие сайты на хостинге. При необходимости связываемся с хостинг провайдером для проверки
  14. Переносим сайт на боевой сервер
  15. Рекомендуется поменять пароли к административной панели, к хостингу / FTP и к БД

Этот небольшой список действий способен помочь в большинстве случаев.
Рекомендуется проверять сайт веб-антивирусом AI-BOLIT последней версии в режиме
Paranoic mode

При проверке в данном режиме будьте аккуратны — не все найденные подозрительные файлы являются вирусами!!!

6 комментариев

avatar
Спасибо. Я еще делаю так: с помощью утилиты ftpuse подключаю ftp-папку сайта как сетевой диск и периодически сканирую им эту папку сайта, как если бы она была обычным диском. Очень удобно.
avatar
Вообще есть менее трудозатратная и более эффективная версия Эффективная потому, что если сайт делали не вы, то всегда есть варианты что не все файлы перетянете. Навскидку — конфиги мультиТВ можно пропустить, если устанавливались модули типа efilter или evoBabel то там правка разметки идет в файлах конфигурации ну и в таком духе. Потому разворачивание новой системы мне кажется избыточным шагом, проще нормально проверить имеющуюся и обновиться.

P.S. Лично я вылечил десятки сайтов таким способом и довольно успешно.
avatar
Спасибо за ссылку на хорошую статью.
По поводу избыточности — очень часто страдают в ходе заражения файлы и папки самой CMS, плюс большой риск пропустить зараженные файлы.
Да у вашего метода производительность выше, у моего чуть выше безопасность за счет избыточности.
Относительно потери файлов — я специально 2 раза выделил про проверку работоспособности сайта, но да, при моем методе проблемы иногда возникают :(
avatar
На самом деле айболит все показывает, нужно просто немного вникать в то, что он показывает. Если есть сомнения — можно скачать с гита нужный релиз и просто сравнить файлы. После первых десяти проверок уже запоминаешь на что он ругается и быстро видишь что не имеет значения, а что нужно лечить.
avatar
После первых десяти проверок уже запоминаешь на что он ругается и быстро видишь что не имеет значения, а что нужно лечить.
Вот с этим согласен, в Ай-болите и Эвочеке файл при проверке в Paranoic mode светится как подозрительный.
На первый взгляд вроде чистый, но вирусный код размещен в максимально правом расположении экрана первой строки — через 4-5 прокруткок скролом, расшифровывал — обычно воруют пароли к аккаунтам в платежных системах…
images.vfl.ru/ii/1511207682/e745328c/19503725.jpg
avatar
Дополню, мне помогло.Для владельцев SSH-доступа.
Айболит может писать ошибки, если версия php ниже 5.6 Проверяем версию php. Вводим
php -v

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

Команда даст список путей, где стоят разные версии пыхи. Выбираем нужный.
Допустим, у меня текущая версия php старая, запускаем айболита вот так:
/usr/bin/php5.6 ai-bolit.php --mode=2 

Всё. Отчёт будет валяться тоже в домашней папке.
Если по-умолчанию всё ок с версией, то просто
php ai-bolit.php --mode=2

Список команд в консоли можно найти на сайте разработчиков, рекомендую ознакомиться — реально помогает делать всё быстрей, скажем, не сканить джипеги и css =)
Для очистки совести можно потом просто пробежаться поиском по всем файлам домена или даже всего хостинга. Найдём строчку «base64_decode» и запишем в файл все вхождения:
find ~ -name "*.php" -exec grep -i -H base64_decode '{}' \; >/home/users/domains/log.txt

В файлике будет список подозрительных мест. Не забудьте поправить /home/users/domains под себя.
  • 1px
  • 0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.