Ищем и убираем вредоносный код на WordPress. Как удалить вирус или вредоносный код из WordPress

Мы выпустили новую книгу «Контент-маркетинг в социальных сетях: Как засесть в голову подписчиков и влюбить их в свой бренд».

Подписаться

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


Больше видео на нашем канале - изучайте интернет-маркетинг с SEMANTICA

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

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

Общее назначение всех вредоносных кодов сводится к нарушению работы веб-страниц.

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

Как вредоносный код попадает на сайт

Есть два способа, как на сайт может попасть вредоносный код.

1. Скачивание файлов и плагинов с сомнительных и ненадежных ресурсов. Чаще всего таким способам на сайт проникают зашифрованные ссылки. Явный код редко проникает на сайт этим путем.

2. с последующим проникновением . Этот способ считается более опасным, ведь взлом веб-страницы дает возможность передать не только "одноразовый" код, но и целые конструкции с элементами вредоносной программы (malware).

Такой код очень тяжело уничтожить, т.к. он может восстанавливаться после удаления.

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

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

  • Вручную. Для этого нужно сравнить содержимое всех актуальных файлов с незараженными версиями бэкапа. Все что отличается необходимо удалить.
  • С помощью плагинов безопасности. В частности WordPress предлагает плагин Wordfence Security. У него есть опция сканирования файлов страницы на содержание постороннего кода.
  • С помощью саппорта хостинга. Владелец сайта имеет право обратиться к ним с просьбой просканировать ресурс своим антивирусом. В результате они предоставят отчет, отражающий наличие зараженных файлов. Эти файлы можно очистить от посторонних конструкций с помощью обычного текстового редактора.
  • Через SSH-доступ к сайту. Сам поиск осуществляется с помощью команд:

find /текущий каталог страницы -type f -iname "*" -exek -"eval" {} \; > ./eval.log

find /текущий каталог страницы -type f -iname "*" -exek-"base64" {} \; > ./base64.log

find /текущий каталог страницы -type f -iname "*" -exek -"file_get_contents" {} \; > ./file_get_contents.log

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

  • Проверка сайта на вредоносный код с помощью функции eval. Эта php-функция запускает на выполнение любой, даже зашифрованный код. В качестве одного из аргументов, на вход этой функции подается тип кодировки (как правило это base64_decode или str_rot13). Именно благодаря использованию популярных кодировок вредоносный код выглядит как бессмысленный набор латинских символов.

Открываете редактор страницы.

Копируете в буфер содержимое файла functions.php.

Вставляете его в любой текстовый редактор (блокнот).

Находите команду eval.

  • Перед тем, как удалить вредоносный код, проанализируйте, какие параметры функция ожидает на вход. Т.к. параметры поступают в зашифрованном виде, их нужно расшифровать с помощью декодеков. Распознав входной параметр, вы можете принять решение о его дальнейшем нахождении в тексте файла functions.php.
Удаление вредоносного кода

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

Защита от вредоносного кода

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

Используйте только проверенное ПО:
  • Загружайте дистрибутивы только из надежных источников.
  • Во время запускайте обновление серверного ПО.
  • Совершайте регулярный аудит системы безопасности сервера.
  • Удаляйте устаревшие отладочные скрипты.
Ставьте на серверное ПО надежные пароли:
  • Придумайте конструкцию из 12 символов, включающую цифры и буквы разных регистров.
  • Для каждого из сервисов придумайте свой уникальный пароль.
  • Меняйте свои пароли раз в 3 месяца.
Осуществляйте контроль данных, вводимых пользователями:
  • Настройте фильтры HTML-разметки в полях ввода, содержимое которых попадет в код страницы.
  • Организуйте серверную проверку входных данных на соответствие допустимому интервалу.
  • Используйте WAF. Web Application Firewall - это мощный инструмент защиты сайта от хакерских атак.
Разграничивайте права доступа к своему ресурсу.

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

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

1. Организуйте защиту от ботов. Для этих целей многие CMS оснащены специальными плагинами;

2. Настройте проверку вводимых пользователями данных:

  • Запретите вставку JavaScript-кода внутри конструкции t>.
  • Ведите перечень безопасных HTML-тегов и отсеивайте конструкции, не вошедшие в этот список.
  • Анализируйте ссылки, которые присылают пользователи.
  • Для этого существуют специальные сервисы, например Safe Browsing API. Он позволяет проверить безопасность документа по URL.

Как предупредить случайное размещение вредоносного кода.

  • Тщательно следите за используемым ПО:

Загружайте библиотеки и расширения CMS только с проверенных источников, а лучше всего с официальных сайтов.

Изучайте код нестандартных расширений, которые вы собираетесь поставить на движок своего сайта.

  • Размещайте рекламу очень осторожно:

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

Старайтесь размещать на своей странице статический контент.

Остерегайтесь партнерских программ со скрытыми блоками.

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

Но большинство Web-сайтов, построенных на базе этой бесплатной CMS, обладают определёнными уязвимостями в системе безопасности. Разработчики WordPress, конечно, стараются оперативно закрывать их и выпускают обновления не только для самой платформы, но и для стандартных тем и плагинов. Тем не менее, защититься от взлома удаётся не всегда.

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

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

Резервное копирование

Существуют два способа резервного копирования Web-сайта: копирование исходных файлов сайта и копирование базы данных (БД). Для WordPress существует стандартный инструмент для резервного копирования, но он создаёт только копию базы данных.

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

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

Восстановление или лечение

Практически все Web-сайты предназначены для принесения дохода своему владельцу. Поэтому обязательным требованием для Web-сайта является работа в режиме 24х7 (24 часа в сутки, 7 дней в неделю) с минимальными периодами отключения для проведения технических работ.

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

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

Как определить наличие вредоносного ПО

Как узнать, был ли взломан Web-сайт, и определить первые симптомы заражения? На самом деле, это очень просто, провал статистики посещаемости, переадресация на незнакомые Web-сайты, чрезмерное потребление трафика – всё это признаки заражения и наличия вредоносных ссылок, понижающих рейтинг ресурса. Не говоря уже о явных ситуациях, когда в поисковой выдаче Яндекс или Google появляется отметка о "заражённости" вашего Web-сайта.

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

Как надо поступать в подобных ситуациях? Для начала следует определить, где скрывается вирус или рекламная ссылка, и каким образом они попали на сайт, так как могут быть "заражены" темы оформления, база данных или ядро сайта.

Самый простой, но и самый долгий способ поиска вируса – это попытаться отследить даты изменения файлов. Допустим, основная масса файлов в важнейших каталогах (wp-includes , wp-admin и др.) имеют одну и ту же дату создания, но есть один или два файла с более поздними датами создания. Отметьте эти файлы и сравните их с файлами из дистрибутива WordPress. Также можно сравнить файлы по размеру в программе Total Commander. Остаётся только сравнить содержимое подозрительных файлов и выяснить, для чего предназначены найденные лишние фрагменты кода.

Как проверить обрабатываемый HTML-код

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

Потребуется открыть "заражённый" Web-сайт в браузере (предпочтительнее в Opera или Firefox) и выбрать в контекстном меню пункт "Показать исходный код сайта ". Если вы знаете HTML, то наверняка сможете заметить подозрительные строки. Это могут быть незнакомые ссылки на сайты, куски "сжатого" или зашифрованного (способом base64) кода, также это может быть неизвестный фрагмент Javascript, который наверняка тоже будет зашифрован. Определить его можно по включенной в код фрагмента команде eval . Обычно это означает, что кто-то пытался скрыть истинный код Javascript, что должно вызывать определенные подозрения. На рисунке 1 представлен пример подозрительного кода.

Рис. 1 Фрагмент подозрительного HTML-кода

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

Когда вредоносный код на страницах сайта не удается обнаружить способами, описанными выше, то можно воспользоваться сторонними online-инструментами. Например, можно установить плагин WordPress Exploit Scanner, который будет регулярно проверять Web-сайт и выявлять вредоносное ПО. Плагин представляет подробный отчет и выделяет строки, которые впоследствии следует удалить.

Кроме того, можно просканировать Web-сайт online-сканнером Sucuri SiteCheck – эта услуга абсолютно бесплатна, а за определенную плату можно заказать полное лечение ресурса.

Как проверить плагины и темы на наличие вредоносного кода

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

Определить наличие вируса в теме оформления или в коде плагина очень просто. Если активная тема построена на основе одной из официальных тем, то нужно просто сравнить оригинальный код с кодом проверяемой темы. Для этого скачайте тему по умолчанию, которая входит в дистрибутив WordPress, измените её название и переключите оформление на нее. Остаётся только проверить сгенерированный сервером HTML-код на наличие вируса, и если он обнаружится, то проблема кроется явно не здесь.

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

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

Лучшие способы защиты плагинов и тем Wordpress:

  • скачивайте и устанавливайте темы и плагины только с проверенных Web-сайтов;
  • не используйте "взломанные" платные плагины и темы;
  • удаляйте неиспользуемые плагины и темы;
Как найти вредоносный код в файлах ядра WordPress

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

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

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

RewriteCond %{HTTP_REFERER} .*yandex.* RewriteRule ^(.*)$ http://неизвестныйсайт.com/

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

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

Профилактика такого вида угроз довольно проста и не требует особых затрат. Важно помнить следующие правила:

  • не храните пароли в FTP-менеджерах или в почтовых сообщениях;
  • регулярно обновляйте ядро WordPress;
  • обновляете плагины и темы;
  • не используйте простые пароли.

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

Как найти инъекцию вредоносного SQL-кода в WordPress

Итак, мы уже рассмотрели различные способы заражения и лечения Web-сайта, основанного на бесплатной CMS WordPress. Но одним из популярных методов проникновения и взлома является SQL-инъекция (sql injection). Этот способ заражения основан на составлении запроса в базу данных, в котором производится кража пароля от административного интерфейса или получение другой конфиденциальной информации. В отношении WordPress можно сказать, что известные на момент последнего обновления "бреши" в системе безопасности базы данных и в фильтрации запросов, были устранены.

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

Большинство CMS построены таким образом, чтобы пользователь с минимальными навыками программирования смог ее установить, настроить, включить один из предложенных видов оформления и начать наполнять Web-сайт необходимой информацией. Поэтому Web-сайты зачастую находятся в руках неопытных администраторов, которые не могут распознать подобное вторжение с помощью SQL-инъекции.

Но плагин WordPress Exploit Scanner, упоминавшийся ранее, умеет работать и с базой данных, и в некоторых случаях он может найти внедренную в базу данных постороннюю функциональность. Вот только удалять ее придется вручную с помощью специальных SQL команд в программе администрирования баз данных PHPMyAdmin. Подобные действия нужно выполнять очень аккуратно, так как неправильный запрос или команда может повредить структуру или содержимое базы данных. Чтобы этого не произошло, стоит заранее озаботиться процессом создания резервных копий БД. Кстати, сам Exploit Scanner может выдавать рекомендации по исправлению SQL-запросов.

Практические способы защиты Web-сайтов, построенных на базе WordPress

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

  • следует изменить и никогда не использовать стандартные имена для пользователей, имеющих администраторские права, например, admin, administrator и т.д.;
  • необходимо установить капчу, которая существенно снижает риск от взлома путём перебора паролей;
  • для входа в административный интерфейс должен использоваться сложный буквенно-цифровой пароль, не менее 8-10 символов;
  • пароль не стоит хранить в Web-браузере, текстовых файлах и т.д, offline-хранение на листке бумаге гораздо надёжнее;
  • необходимо защищать и пароль почтового ящика, который был указан при установке WordPress;
  • регулярно выполняйте резервное копирование вручную или с помощью специальных плагинов или сторонних программ, при этом полученные резервные копии обязательно должны храниться в нескольких местах;
  • не устанавливайте плагины из неизвестных источников, взломанные платные плагины и темы;
  • следует установить плагины, отвечающие за безопасность файлов и базы данных WordPress, и регулярно проверять состояние сайта с помощью антивируса;
  • вовремя обновляйте ядро, плагины и темы (перед каждым обновлением обязательно делайте полное резервное копирование);
  • файл admin.php стоит переименовать, чтобы затруднить его идентификацию;
  • зарегистрируйте Web-сайт в Яндекс или Google, чтобы быть в курсе проблем, связанных с безопасностью сайта и его индексацией;
  • необходимо проверить права для каталогов и файлов WordPress: для каталогов выставляются права 755 , для всех файлов 644 , отдельно для каталога wp-content права должны быть 777 ;
  • если нет необходимости в регистрации пользователей, то лучше эту функцию отключить совсем;
  • также можно отключить возможность комментирования и оставить только форму для комментирования через социальные сети;
  • следует удалить файл readme.htm , расположенный в корневом каталоге, в котором хранятся сведения об установленной версии WordPress (это надо делать после каждого обновления CMS);
  • также упоминание об используемой версии WordPress следует удалить из файла functions.php , добавив туда строчку: remove_action("wp_head", "wp_generator");
Что делать если проблему так и не удалось решить?

Безвыходных ситуаций не бывает. Может казаться, что вы перепробовали абсолютно все способы обезвреживания вирусного кода или скрытых рекламных ссылок. Возможно, что Web-сайт перестал работать после неудачного лечения от вирусов, и вы уже не в состоянии восстановить его работу. Не отчаивайтесь, а попробуйте обратиться к специалистам, которые за плату помогут восстановить Web-сайт и дадут советы, как улучшить его безопасность и работоспособность. Можно написать в техподдержку WordPress, найти ответ в WordPress Codex или задать вопрос на официальном форуме.

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

Заключение

Большинство представленных советов останутся актуальными еще очень долго, так как они относятся не только к WordPress, но и к любым Web-сайтам, независимо от используемой платформы. Интернет стремительно развивается, постоянно появляются новые обновления и пишутся новые вирусы, закрываются пробелы в безопасности CMS и различных сервисов. Шагайте в ногу со временем, регулярно модернизируйте и обновляйте Web-сайт, и тогда вы сможете избежать подобных чрезвычайных ситуаций.

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

Но даже, если шаблон чист в плане безопасности, а его дизайн, юзабилити и функционал вас полностью устраивают – это не значит, что все в порядке. Тема должна иметь валидный HTML и CSS код, а также соответствовать всем стандартам CMS WordPress. С последним есть проблемы даже у платных тем и шаблонов, сделанных на заказ.

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

Сегодня я покажу 2 способа проверки тем WordPress на соответствие стандартам. Эти инструменты используются при их добавлении в официальный каталог https://wordpress.org/themes/

Сервис проверки тем WordPress и шаблонов Joomla на соответствие стандартам

ThemeCheck.org – это бесплатный сервис, который позволяет проверить безопасность и качество шаблонов для CMS WordPress и Joomla перед установкой на сайт.

Для проверки темы, загрузите ее архив с вашего компьютера, нажав кнопку “Select file ” на сайте themecheck.org . Если не хотите, чтобы результаты проверки сохранялись на сервисе и были доступны другим пользователям, установите галочку “Forget uploaded data after results “. Теперь жмите кнопку “Submit “.

Для примера я взял тему Interface , которую скачал на официальном сайте. 99 из 100 – 0 критических ошибок и 1 предупреждение. Это очень хороший результат.

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

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

На Главной есть большой выбор ранее проверенных веб-тем WordPress и Joomla с возможностью сортировки по времени добавления или оценке. При клике по ним можно увидеть подробную информацию и ссылки на сайт автора и страницу для скачивания.

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

Ценность сервиса ThemeCheck.org в том, что любой вебмастер может с его помощью выбрать качественную тему еще до ее установки на блог.

Плагин Theme Check

Проверить уже установленный шаблон на совместимость с последними стандартами Вордпресс, можно с помощью плагина Theme Check . Ссылка на скачивание последней версии: https://wordpress.org/plugins/theme-check/

Функционал плагина аналогичен сервису, о котором я рассказал выше. Никаких настроек после стандартной установки и активации производить не надо. Порядок проверки:

  • Перейдите в админке на страницу меню “Внешний вид ” – “Theme Check “.
  • Выберите из выпадающего списка нужную тему, если их установлено несколько.
  • Установите галочку “Suppress INFO “, если не хотите отправлять информацию.
  • Нажмите кнопку “Check it “.
  • Результаты будут показаны на этой же странице.

    Как видите, стандартная тема Twenty Ten тоже не идеальна, а вот, например, Twenty Fourteen ошибок не имеет.

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

    Вывод. Перед установкой нового шаблона WordPress проверяйте его не только на наличие скрытых ссылок и вредоносного кода плагином TAC, но и с помощью сервиса ThemeCheck.org или плагина Theme Check на соответствие последним стандартам CMS.

    P.S. Недавно просматривая TopSape Reader, увидел новый SEO-блог zenpr.ru , который держит 1 место среди блоггеров по переходам за месяц. Если учесть, что его возраст чуть более месяца, то результат достоин уважения. Дизайн в стиле минимализма, если не сказать, что его вообще нет, но пишет автор – зачитаешься. Все по делу и без воды. Точно как в заголовке блога – «ноль лишних символов». Рекомендую почитать, найдете много полезной информации.

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

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

    1. Установите надежный антивирус

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

    IT-рынок предлагает множество антивирусов. Тем не менее, наиболее разумный выбор — продукты крупных компаний:
    ● Среди отечественных лидирующие позиции занимают предложения лаборатории Касперского и Dr. Web.
    ● В числе зарубежных коммерческих решений можно выделить линейку Norton от корпорации Symantek и популярный ESET NOD;
    ● Если же говорить о бесплатных вариантах, то здесь безоговорочно лидируют Avast и Comodo.

    2. Сканируйте сайт с помощью онлайн-сервисов

    При обнаружении подозрительной активности (ошибки движка, тормоза, появление всплывающих окон и сторонних баннеров), самое простое, что можно придумать — прогнать ресурс через онлайн-сканер, способный определить факт заражения. Бесспорным лидером здесь является VirusTotal, расположенный по адресу virustotal.com. Чтобы им воспользоваться, достаточно перейти на вкладку “URL-адрес”, вбить интересующую ссылку и нажать на кнопку “Проверить!”

    Через некоторое время система выдаст отчет следующего содержания:

    Следует уточнить: VirusTotal — не независимый проект, а своеобразный агрегатор антивирусных сканеров. В связи с этим появляется возможность проверить WordPress на вирусы одновременно в 67 системах. Несомненным преимуществом является подробный отчет, в котором приводятся данные по всем поддерживаемым сервисам. Ведь антивирусы очень любят бить ложную тревогу, так что даже если показатель выявления отличается от идеального (например, 3/64), это еще не значит, что ресурс заражен. Ориентируйтесь, прежде всего, на крупных игроков (Kaspersky, McAfee, Symantec NOD32 и другие), небольшие конторы часто определяют те или иные участки кода, как опасные — не стоит принимать это всерьез!

    3. Используйте Яндекс.Вебмастер

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

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

    4. Сверяйтесь с отчетами Google

    Самая популярная поисковая система в мире предлагает еще более простой способ мониторинга — достаточно перейти по ссылке google.com/transparencyreport/safebrowsing/diagnostic/?hl=ru, и вбить адрес интересующего сайта в соответствующее поле. Вы получите исчерпывающие данные по ресурсу, и увидите, имеются ли у Гугла какие-либо претензии с точки зрения обнаружения вредоносных скриптов:

    Как почистить сайт Водпресс от вирусных ссылок?

    От общих рекомендаций перейдем к частным. Начнем же с распространенных вариантов вредоносного кода — внедрения посторонних URL и редиректов на целевой веб-ресурс. К сожалению, черное СЕО все еще популярно, а значит и хакеры не сидят без дела, благо эта задача — одна из самых простых. Давайте разбираться по порядку.

    1. Редирект на сторонние ресурсы

    Представьте ситуацию: вы заходите на собственный сайт, однако вас тут же перекидывает на очередной каталог “досуга”, или лэндинг, предлагающий заработать на Форекс. Почти наверняка это означает, что веб-ресурс был взломан, а в.htaccess появилось несколько новых строчек. Лечение элементарно: открываете файл, находите директивы, содержащие адрес, на который идет перенаправление, а затем удаляете их. Так, для условного malwaresite.com нужные конструкции могут быть таковы:

    < IfModule mod_alias. c> Redirect 301 https: //сайт/ http://malwaresite.com/

    RewriteEngine On RewriteBase / RewriteCond % { HTTP_HOST} ! ^tekseo\. su [ NC] RewriteRule ^(.* ) http: //malwaresite.com/$1

    RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} !^tekseo\.su RewriteRule ^(.*) http://malwaresite.com/$1

    Более изощренный вариант — постоянный редирект, написанный на PHP. Если вы проверили , но не нашли ничего подозрительного, скорее всего загвоздка кроется в файле index.php. Перенаправление здесь осуществляется путем отправки посетителю нужных заголовков:

    include("redirect.php"); exit();

    Запомните — в оригинальном index.php таких фрагментов не встречается, так что можете смело удалять их все. Также найдите и ликвидируйте подключаемый файл (в нашем примере это будет redirect.php, расположенный в корневой папке).

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

    1. .htaccess
    Наиболее простой способ, который без труда вычисляется. Устройство определяется по предъявляемому User Agent. Выглядеть может так:

    < IfModule mod_rewrite. c> RewriteEngine on RewriteBase / RewriteCond % { HTTP_USER_AGENT} ^.* (ipod| iphone| android) .* [ NC] RewriteRule ^(.* ) $ http: //malwaresite.com/

    RewriteEngine on RewriteBase / RewriteCond %{HTTP_USER_AGENT} ^.*(ipod|iphone|android).* RewriteRule ^(.*)$ http://malwaresite.com/

    2. PHP
    Похожим образом редирект реализуется и на PHP. Конструкцию, указанную ниже, можно найти в индексном файле. Опять же не забываем о вездесущих include:

    3. JavaScript
    Здесь идет проверка разрешения экрана, если ширина составляет 480 пикселей, или менее, посетителя перебрасывают на вредоносный сайт. Если на вашем проекте используется аналогичный метод, обязательно проверьте этот блок на предмет изменения адреса.

    < script type= "text/javascript" > if (screen. width ID.’&m=47&n’));

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

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

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

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

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