Лечение вирусов на сайте, удаление Include.

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

И так начнем, возьмем сайт, клиент жалуется на вирус.

Первое на что мы обращаем внимание, так ли это, как ни странно клиент он по определению не компетентен для такого заключения.

Нам нужно подтвердить факт вируса.

В начале делаем бэкап всего сайта!!!

  1. Вирус может уже проиндексирвоаться поисковыми системами и выдавать предупреждение о инфицирование сайта может уже браузер.
  2. Вирус может резко увеличить количество страниц на сайте, порой в разы больше чем сам сайт.
  3. Вирус может увеличить количество инклудов.
  4. Вирус может увеличить количество внешних ссылок.
  5. Вирус может модифицировать файлы по отдельности и по маски, как правило нам следует проверить php/js/html (если ваш сайт на движке, но есть целые папки с хтмл файлами)
  6. Ну и еще маленький признак вирусов, он может быть где угодно как угодно и их как правило МНОГО!

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

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

 (/(android|midp|j2me|symbian|series 60|symbos|windows mobile|windows ce|ppc|smartphone|blackberry|mtk|bada|windows phone)/i)!

Сразу пробегаемся по index.php

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

Просматриваем /templates/ваш шаблон/index.php в самом шаблоне, если их несколько, в каждом, но особое внимание текущему.

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

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

Вероятность найти данной утилитой вирус примерно 70% а для автоматизации это отличный результат. http://www.revisium.com/ai/

Лечение вирусов на сайте, удаление include

Скачиваем wget, переименовываем в zip файл, распаковываем, копируем все в папку сайта, запускаем с консоли

php –q ai-bolit.php

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

Лечение вирусов на сайте, удаление include

По репорту видим 3 base64 в joomla их нет, 99% что это вирусы, остальное по мелочи удалим руками. Поскольку видно, что вирусы шли не регуляркой, а направлены на определенные файлы.

Давайте глянем более подробный репорт, он создан в виде html файла в корне сайта.

Лечение вирусов на сайте, удаление include

Открываем первую ссылку:

Лечение вирусов на сайте, удаление include

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

Удаляем весь файл. Тут явно нужный файл и нам потребуется определить, что именно тут вирус, а что нет.

А вот вторая ссылка интереснее.

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

Лечение вирусов на сайте, удаление include Лечение вирусов на сайте, удаление include

Фактически нам нужно только вот это.

Лечение вирусов на сайте, удаление include

Вот он же в MC, думаю так будет более понятно.

Лечение вирусов на сайте, удаление include

Обратите внимание на табуляции, с виду почти нормальный файл.

Поскольку вирус не во всех php файлах, а только в одном мы удаляем его руками не используя рекурсивные выражения. Обратите внимание в конце файла тоже табуляция, там закрывающая скобка. Пока лечил файлы нашел те же вирусы в архивах в /administrator собственно их там достаточно много, пришлось почистить в joomla файлов zip нет, тем более типа 239054index.zip Ну и естественно, в самом начале я пропустил и не проверил папку /images на файлы .php

Поскольку все они 100% вирусы.

И собственно там и лежали сами shell скрипты, Порой в них, более удобные и функциональные чем интерфейс хостера.

/media/system/js/mootools.js вынесу в отдельный пункт, этот файл достал меня уже давно, мало того что он практически не используется, мало того, что он здоровый как конь и весь не читаемый.

Так еще и каждый порядочный вирус в него пытается залезть. И его мы проверяем с особой внимательностью, а фактически я накачу на него заведомо чистый файл с такой же версии joomla и не буду даже им париться.

Собственно даже на взгляд видно что файлик дописан

Лечение вирусов на сайте, удаление include

Остальные алиарды выданные скриптом нам не подошли, по дороге мы удалили еще пару троек файлов которые он не учел. Но в общем и целом помог нам в работе. Так же были пройдены все модификации в js скриптах с момента последнего индексирвоания в мониторинговой системе, все они оказались доработками программиста.

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

RewriteRule ^([^/]+)\.(htm|css|js|png)$ index2.php?i1=$1&i2=$2 [L]

Собственно ее тоже пустили под нож.

И наконец, все что нам осталось - навести косметику.

sudo find . -type f -exec chmod 644 {} \; &&  find . -type d -exec chmod  755 {} \;

И естественно, вирус нашел брешь в вашей системе обороны, а следовательно повторное инфицирование однозначно возможно. Как показывает практика одну уязвимость вирусы используют не больше месяца потом активность спадает в сотни раз, но не до нуля. Так что вам в любом случае рекомендовано обновить все компоненты движка и его самого. Самый же лучший вариант перейти на битрикс. Не на правах рекламы, но по статистики битрикс ломают в тысячи раз реже. Фактически, за несколько лет я видел всего пару взломанных сайтов на битрикс. И некоторые из них могли инфицировать сайты лежащие на текущем аккаунте. Достоверно битрикс взломан при мне 2 раза. Что по сути можно посчитать как погрешность. Более защищенного движка в интернете я не видел. Самопись кстати к ним точно не относится.


Оставить комментарий