Вторая волна вируса(повтор того что было в 12.2016). Подвержены все версии EVO до 1.2.1

Симптомы:
— Все странички отдают код главной.

Как лечить:
— 1 заходим в базу данных и удаляем там фейковый плагин с непонятным кодом, обычно это дубль одного из других плагинов. в админке дубль плагина не видно!!!
— 2 Удаляем .htaccess (все равно он заражен иначе б симптома не было)
— 3 ставим заплатку: extras.evolution-cms.com/packages/core/security-fix.html
— 4 Обновляем систему до последней версии, рекомендую вот эту:
modx.com.ua/download/
— 5 проверяем на вирусы с помощью Ai-bolit
— 6 если сайт старый то рекомендую проверить актуальность версий следующих сниппетов: Ditto, eForm, AjaxSearch, evoGallery так как больше всего взломов было через них.

Если хорошо присмотреться вот тут(на главной в админке) то увидим следующее:


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

p.s. не забываем про наш канал и чат в телеграм:
t.me/evolutioncmsnews
t.me/evolutioncms

22 комментария

avatar
Спасибо!
avatar
Вопрос: ежели заплатка стоит на версии 1.1-d8.0, ajaxSearch и eForm последние, evoGallery не установлен и сайты в порядке, всё равно обновляться?
avatar
В целом всегда лучше обновляться но будет работать и так.
avatar
Не фачит на этой версии почему-то updateNotify или curl'a на хостинге нету, а ручками обновлять лень… да и сайты почти статичные, бэкапы делаются, поэтому действую по принципу: «работает — не трогай» :)
avatar
Если 1.2.1 официальная стоит, то все хорошо?
avatar
да там эти дыры закрыты
avatar
Добавлю в копилку — сегодня чистил сайт и ai-bolit проигнорировал файл с расширением ico. Я и сам его не заметил, но выкачивал сайт пофайлово и НОД заругался. Выглядит как favicon_43.ico, но содержит вирусный код. Так что чистить нужно очень тщательно.
avatar
Тоже был вариант вируса… В корне пара папок wp-чегото-там… И в index.php в корне, в первой строке стоял редирект на файлы этих папок…
avatar
Версия сайта MODX EVO Custom 1.2.1-d9.1.4 До этого не подвергалась вирусной атаке, было все проверено и обновлено. Сегодня понял что сайт завирусован.(
avatar
Как давно обновляли и с какой версии?
avatar
так как зачастую это ajaxSearch то его нужно обновлять было руками в новых сборках его давно нет. Был security fix его нужно было ставить и после обновлять тогда проблем нет
avatar
Версию с какой обновлялся не скажу так как не вспомню. Обновляюсь регулярно стоит плагин для уведомления новых версий.
Версия на сегодня утром стояла 1.2.1-d9.1.4, с утра еще было все в порядке.
avatar
стоит в систему ajaxSearch? если да то какой версии
и evogalery есть ли?
avatar
AjaxSearch 1.10.1
Старая версия(
avatar
Стоит 1.2.1-d9.1.0. Обновлял modx месяц назад с допотопной версии 2013 года. ajaxSearch и evogalery стоят. Найти фейковый плагин не получается. Из репозитория ничего не ставится, может из-за вируса, а может хостер ввёл какие-то ограничения т.к. от нас полез спам. Может кто-то возьмётся почистить и устранить уязвимость? Напишите ЛС, обсудим цену.
Комментарий отредактирован 2017-05-30 20:19:01 пользователем LNA
avatar
Сегодня с утра постигла та же участь. 1.0.12-d6. Всё остальное — тоже древнее стоит… Завтра полезу обновляться. Пока вычистил ручками (файлы поискал по дате изменения): удалил несколько php файлов в разных папках, пару xml файлов (в корне), пару файлов в /manager/processors подправил (были изменены), ну и .htaccess исправил, после этого всё заработало как надо, сайт забэкапил…
А вот как фейковый плагин то в базе искать?
avatar
А чего его искать-то — выборку из таблицы modx_site_plugins делаете, и смотрите, что «родное», а что «приобретенное»…

Плюс, модуль evo_check от Дмитрия умеет искать сюрпризы в плагинах.
Комментарий отредактирован 2017-06-05 23:33:15 пользователем Dreamer
avatar
Если количество плагинов в таблице modx_site_plugins соответствует количеству в админке, и все родные, значит там должно быть всё ок? Или в какой-то из родных плагинов тоже могло что-то влезть?
avatar
В моем случае зараза прописывалась в отдельный плагин, замаскировавшись под какой-то из стандартных — название плагина и описание совпадало, а вот код был другим.
Впрочем, по коду было заметно — там было явное отличие от стандартных плагинов по стилю написания кода (base64-закодированные строки и хитрая обработка get-параметров).
Такой же случай, или иной у вас — естественно, неизвестно.
Плагинов-то обычно не настолько много, поэтому глянуть хотя бы визуально на код стоит. «Добавки», как правило, видны невооруженным глазом.

Также несколько обеспокоила ваша описанная методика поиска зараженных файлов — их надо не по дате изменения искать. Я для этого обычно использую какую-либо программу, умеющую сравнивать файлы (какой-нибудь KDiff3 или к примеру аналогичную функцию, встроенную в тотал командер), распаковываю на винт дистрибутив той версии системы, которая стоит на сайта, рядом в соседнюю папку распаковываю архив файлов с сайта — и запускаю сравнение в этих двух каталогах. Программа показывает новые и различающиеся файлы — вот их быстренько и просматриваю. Часть из этих файлов будет результат ваш собственного труда, а часть труда «постороннего» :)
avatar
Ну, само собой, я всё подряд не удалял, я всё-таки немного имею представление, что я мог менять, а что — нет! )
А учитывая, что на сайте достаточно редко вношу изменения, особенно в системных файлах, то свежие «нововведения» довольно отчётливо бросаются в глаза! Хотя, конечно, мог что-то и упустить…
Комментарий отредактирован 2017-06-06 10:34:45 пользователем OSBoy
avatar
Дело не в этом. А в том, что дата изменения файла может и не измениться в случае внедрения вредоносного кода. Поэтому проверять надо абсолютно все файлы.
Комментарий отредактирован 2017-06-06 10:49:12 пользователем Dreamer
avatar
Согласен. Например .htaccess был со старой датой изменения… Впрочем, примерно то, что Вы описали выше (base64-закодированные строки и хитрая обработка get-параметров) как раз было в удалённых и исправленных php-файлах. В любом случае, ай-болитом попробую пройтись ещё.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.