Новостей | Акций


Взлом сайта Версия для печати
» Взлом сайта

Как только у вас появилось подозрения, что на сайте появился вирус, нужно как можно скорее убедится так ли это на самом деле. Ниже описан полный процесс выявления и уничтожения вируса. Итак, очередность действий следующий:
1 Диагностика.
2 Удаление вируса.
3 Устранение причины заражения.
Диагностику начните с проверки Вашего сайта онлайн-сканером вирусов. Вы можете воспользоваться приведенной ниже формой.



Также можете использовать аналогичные сервисы: https://www.virustotal.com/ru/ или http://sucuri.net/
После этого просмотрите исходный код html страницы и обратите внимание на все iframe, script, object, возможно вы найдете чужеродный код. На рис. 1 вид простого вредоносного iframe

скрытие вируса
Рис. 1

Проверить сайт поможет Firebug, если при загрузке страницы на вкладках сеть/консоль, можно увидеть подозрительную активность: редирект, загрузка iframe -это сигнал о наличии вируса. Стоит проверить картинки, подгружаемые с других сайтов. При запросе браузером этих картинок реферрер и агент должны быть как при обычном открытии страницы Вашего сайта с этой картинкой. Если вместо картинки выдается редирект, запрос пароля или иное чужеродное содержимое - это как правило вирус.
Так же можно воспользоваться программой онлайн- проверки скриптов Diff checker. В которой можно легко увидеть любые изменения в коде. Пример ниже.

выявление вируса
Рис. 2

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

диагностика вирусов
Рис. 3
В приведенном выше примере все пользователи, оказавшиеся на этом веб-сайте, пройдя по ссылке в большинстве крупных поисковых систем (параметр HTTP_REFERER), перенаправляются на вредоносную URL-ссылку.
Помимо этого, в этом файле .htaccess определено достаточно большое количество браузеров и ботов, для которых перенаправление не производится (параметр HTTP_USER_AGENT). Перенаправление не происходит также в случае, если веб-страница читается из кеша (referer == cache) или загружается повторно с того же компьютера (параметр cookie)
4. Используйте веб-прокси для отслеживания возможных переходов с сайта и загрузки в браузер любого контента. Это может быть HandyCache, Fiddler и др.
5. Стоит зарегистрироваться в Яндекс.Вебмастере http://help.yandex.ru/webmaster и проанализировать свой сайт с его помощью. В результате можно будет получить следующую информацию о заражении:
•    список зараженных страниц;
•    вынесенные антивирусом вердикты (примеры вредоносного кода);
Имея примеры кода, который следует искать и список страниц, исправить ситуацию не составит труда. В случае, если такая проверка не дала положительных результатов, искать вредоносный код нужно более тщательно, как это делать описано ниже.
- Проверьте и очистите компьютеры с которых производиться доступ к сайтам антивирусными программами со свежими обновленными базами. Локальная сеть, в которой Вы находитесь, так же должна быть безопасна. Ниже представлен список бесплатных антивирусов и утилит:
•    avast! Free Antivirus;
•    Kaspersky AVP Tool;
•    Dr.Web CureIt!;
•    AVG AntiVirus FREE;
•    McAfee;
- Обязательно смените пароли: FTP, SSH, от административных панелей хостинга, CMS, а также баз данных. И никогда не сохраняйте пароли в FTP-клиенте.
- Установите все обновления безопасности для CMS и плагинов, и впредь делайте это регулярно.
- Проверьте какие права выставлены для файлов и папок (chmod). Рекомендуемые права: на файл - 644, на папку - 751. Если требуется выставление иных прав, то необходимо ставить защиту через .htaccess .
- Используйте страницу заглушки, возможно даже стоит остановить веб-сервер, чтобы оградить посетителей сайта от потенциальной опасности. Если нет возможности заблокировать доступ посетителей, заблокируйте хотя бы запросы POST. Это предотвратит возможность применения большинства стандартных эксплойтов.
Дальнейшие действия зависят от того, есть ли в вашем распоряжении чистая резервная копия. Если есть, тогда для эффективного восстановления также необходимо произвести полную переустановку ПО, работающего на сервере. Используйте для этого самые последние версии. В случае когда Beckup'а нет, придется искать и удалять вредоносный код. Это можно делать автоматизированными методами и вручную.
Если вы владелец сервера, или если на сервере работает защитное решение, на использование которого у вас есть права, вы можете выполнить проверку на стороне сервера. Можно также загрузить содержимое вашего сервера на локальный компьютер и осуществить его проверку при помощи антивирусной программы для стационарного компьютера.
Для проверки существуют специальные скрипты, например AI-Bolit. Прочитать о его возможностях и скачать можно тут http://www.revisium.com/ai/ . Подробное описание применения(для Windows) находиться здесь http://www.revisium.com/kb/scan_site_windows.html.
Если автоматическая проверка не дала результатов и сообщения о заражении вашего сайта поступают по-прежнему, единственный способ избавиться от вируса - найти его вручную и удалить весь вредоносный код.
Найдите файлы или код в файлах не принадлежащий сайту.
•    Проверьте все индексные файлы Index.php/html.
•    Файлы, имеющие необычное название и выделяющиеся из собственных. Например: krxp.php , gwd.php.
•    Проверьте .htaccess файлы во всех директориях.
•    Вирус может быть спрятан в других конфигурационных файлах веб-сервера, интерпретатора скриптового языка, шаблонов или настроек CMS.
•    Следует обратить внимание на подключаемые сервером модули, если модуль добавлен не Вами, скорей всего он является вредоносным.
При поиске участка вредоносного кода стоит обратить внимание на следующие моменты:
•    Обратите внимание на обфусцированный код, если вы не обфусцировали код сами, у вас есть все основания иметь относительно него подозрения. Но нужно быть аккуратным - вредоносным может оказаться не весь обфусцированный код. Потому, чтобы быть уверенным какую часть удалять - деобфусцируйте его.
•    Имеет смысл искать следующие, наиболее распространенные, образцы кода: String["fromCharCode"], base64_decode, auth_pass, fromCharCode, shell_exec, passthru, system, passwd, mkdir, eval(str_replace, eval(gzinflate, ="";function, "ev"+"al"; на Рис. 4 представлен пример обфусцированного кода для функции eval:
•    Если вы нашли вредоносный код в файле, не спешите его удалять. Посмотрите на дату доступа, модификации и изменения атрибутов файла. Это можно сделать с помощью команды stat [stat infected.js].
•    Это важно, так как зная приблизительную дату заражения легко найти остальные зараженные файлы.

вредоносный код
Рис. 4

В заключение статьи приведем несколько простых правил, Выполнение которых поможет снизить вероятность заражения в будущем:
•    Регулярное обновление ПО;
•    Регулярное создание резервных копий;
•    Обеспечение безопасности ПК;
•    Не забывать:
-удалять неиспользуемые программы;
-деактивировать ненужные сервисы и модули;
-установить адекватные права доступа к определенным файлам и директориям;
-отключить показ файлов и каталогов веб-сервера;
-вести журналы событий, регулярно проверять их на наличие подозрительной активности;
-использовать шифрование и безопасных протоколов.
Эти действия снизят вероятность последующего взлома и уберегут от потери данных.