Странное название для поста в блоге про Delphi, Lazarus и Pascal не правда ли? На самом деле пост будет именно про программирование.
Но для начала объясню кто такие гоблины в моем понимании и как я собираюсь с ними воевать.
В моем понимании гоблин (он же гад, он же редиска, он же нехороший человек и т.д.) — это владелец какого-либо веб-сайта или исполнитель, выполняющий раскрутку чужого веб-сайта, который раскручивает ресурс обманным путем, например добавляет в распространяемые им скрипты свой код с ссылками на раскручиваемый сайт и т.д.
Каким образом происходит раскрутка, думаю особо разглогольствовать не надо — левый сайт получает абсолютно бесплатно кучу исходящих ссылок с сайта на котором установлен «вшивый» скрипт или тема. А вот, чем грозит Вам такая раскрутка, тут видимо пока в стане SEOшников полного согласия нет. Однако попробую немного обобщить всю найденную в Рунете информацию.
В самом-самом лучшем случае Вы потеряете в популярности по версии Гугла, т.е. снизится PR сайта за счёт того, что на страницах вашего сайта появится большое количество исходящих ссылок. Худшие случаи можно рассматривать от временной пессимизации в выдаче до полного бана Вашего ресурса, особенно, если «левых» ссылок станет непомерно много и все они будут вести на ГС. Это в случае, если Вы доверчивый владелец сайта и долгое или вообще никогда не проверяете то, что устанавливаете на свой сайт.
Теперь рассмотрим такую ситуацию: вы устанавливаете на блог «вшивую» тему оформления (пример такой темы можно посмотреть в тут) и не задумываясь работаете дальше, пишете интересные статьи, раз в полгода радуетесь тому, что PR вдруг стал не 0, а, скажем 2, тИЦ подрос. Вобщем всё отлично. И тут на глаза попадается заметка, наподобие этой. Вы решаете проверить свой сайт на наличие «левых» ссылок, например с использованием сервиса pr-cy.ru и он выдает Вам тучу таких ссылок, о которых вы и не подозревали. Что делать? Естаственно вычищать грязь. Удаляете тот самый зловредный кусок кода, который расставляет ссылки по блогу, ссылки моментально исчезают со всех страниц и больше не появляются. Думаете все довольны и гоблин побежден? Ничего подобного — вы рискуете и достаточно сильно.
Резкое исчезновение ссылок со страниц сайта может быть расценено поисковиком примерно так «исчезло более N ссылок одновременно, следовательно ссылки были продажны, следовательно сайт нарушил правила, следовательно — в бан». Я могу ошибаться в точности этой формулировки, но то, что такой бан возможен — знаю на собственном опыте с предыдущим моим сайтом, где как раз стоял скрипт от биржи ссылок. После того как перестал продавать ссылки сайт в течение месяца попал в бан к Яндексу и получил PR=0 (исчезла гора проданных ссылок).
И как тогда быть бедному доверчивому веб-мастеру, владельцу блога? В случае если проблема запущена, к сожалению, ничего пока на ум не идет. Можно, конечно, убрать все левые ссылки и молиться. Можно отписаться в саппорты, отправить жалобу и т.д. и т.п. Вариантов море, но гарантий — никаких.
Другое дело, что можно обезовасить себя заранее ещё ДО установки скрипта или темы. И именно про это и пойдет сегодня речь — безопасность блога.
И сначала немного слов о том, каким образом гоблины пропихивают свои ссылки в наши с Вами блоги. Рассмотрим с чем нам придётся иметь дело.
1. Самые распространенные способы обмана.
На первом месте по популярности стоят невидимые прямые ссылки. Пример такой ссылки может быть таким:
.;
Ссылка установлена на точку — невооруженным глазом заметить практически невозможно. Также ссылки могут ставится на другие знаки пунктуации, пробелы и т.д. Обычно гоблины не программисты, поэтому тупо устанавливают такие прямые ссылки в теме, которую потом распространяют через свои сайты.
Другой вариант невидимой ссылки — ссылка с атрибутом. С такой ссылкой я сталкивался на собственном опыте. Выглядит ссылка так:
ссылка
Как видите за пустую ссылку поисковик вроде бы не накажет — текст есть. А класс описывается как:
a.xl{
display: none !important;
}То есть ссылку Вы не увидите, а поисковик её прекрасно обнаружит и проиндексирует, еще и жирный плюс гоблинскому сайту нарисует.
Второе место по популярности занимают php-функции. Например, как те с которыми столкнулся я при установке этой темы:
function bloqinfo($name = '') {echo 'http://govnosait.gs http://govnosait.gs';}
Далее гоблин вставляет в шаблон уже не прямую ссылку, а что-то типа:
< ? bloqinfo('name') ? >
и радуется жизни. А вы бесплатно снабжаете его все большим и большим количеством бэклинков.
Третий вариант — закодированные участки в файле. Обычно кодируется footer или header. К такому варианту прибегают обычно гоблины мудрые, которые знают хотя бы основы программирования. В файле шаблона закодированный участок может выглядеть примерно так:
"base64_decode('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKT..."Кто-нибудь может сказать сходу, без специальных программ и т.д. что тут написано? Я не могу. А в таком вот куске кода можгут содержаться гоблинские ссылки, иногда много и разных конфигураций — от видимых до невидимых.
Вот такие варианты используют гоблины. Теперь переходим к следующему шагу — основам ведения нашеё «праведной войны» :)
2. Обнаруживаем и избавляемся от нежелательных ссылок
Прежде всего следует оговориться, кого будем «бить». Я, например, не вижу ничего зазорного\позорного\плохого в том, чтобы отблагодарить создателя темы прямой ссылкой на его сайт, и подобное желание автора темы получить ссылку не считаю гоблинством — труд должен оплачиваться, хотя бы так, через ссылки.
Также не следует сразу бросать камни\топоры\тухлые помидоры в тех, кто распространяет «вшивые» темы. Конечно, в большинстве случаев это и есть самые заядлые гоблины, но может получиться так, что человек слухом не слыхивал про кодирование, скрытые ссылки и т.д. Скачал темы с другого сайта и выложил у себя. Поэтому не будем спешить и рубить с плеча — до «убийства» доводить не будем, но ссылок таких людей лишим ради профилактики.
А теперь по поводу обнаружения «левых» ссылок. Говорю спасибо тем, кто прочитал мой первый пост на эту тему и подсказал доступные в настоящее время решения проблемы, а также дополнил мой багаж знаний по теме: 13-й, ManGysITI, crystalbit. Спасибо за Ваши комментарии. Надеюсь и дальше у Вас не пропадет желание что-нибудь подсказать и рассказать :)
Первый вариант обнаружения «левых» ссылок — использование сервисов, наподобие pr-cy.ru. Как может помочь Вам этот сервис?
Во-первых, лишний раз проверить свой сайт никогда не повредит. Во-вторых, используя такой сервис Вы сможете увидеть все ссылки (и внешние и внутренние), которые обнаружены на заданной странице и анкоры этих ссылок. Таким образом станет сразу ясно есть ли у Вас «левак» на сайте или нет.
Второй вариант — использование плагинов к WordPress или движку Вашего сайта по проверки скриптов и тем оформления на «вшивость». Например, для WordPress есть плагин TAC для проверки тем оформления. Проверка осуществляется на наличие статических ссылок и закодированных участков. Результат проверки см. на рисунке:
Темы, содержащие закодированные участки автоматически считаются «вшивыми».
Третий вариант — это использование различных тулбаров и плагинов к браузерам. Например для FireFox может пригодиться плагин NoDoFollow, который подсвечивает различными цветами ссылки с атрибутами nofollow и без них.
А тулбар SEOBar покажет все входящие/исходящие ссылки на странице.
Отдельного упоминания достоин способ раскодирования. Раскодировать закодированный участок темы можно, например, воспользовавшись методом, который предложил один из пользователей форума по WordPress в этой теме
Варианты обнаружения «левых» ссылок нашли. И теперь опять же ситуация: Вы или ваш знакомый собираетесь открыть опять-таки сайт на котором планируете размещать бесплатные темы того же WordPress. Исходим из предположения, что намерения чисты, как слеза младенца — просто делиться награбленным найденным в Сети добром. Думаю мало кому понравится, если на почту или, не дай бог, в комментарии посыпятся гневные крики о том, что вы распространяете «вшивость»? Проверять каждую тему в отдельности — не вариант, особенно на старте проекта, когда выкладываются сотни тем. Поэтому я решил предложить такое решение проблемы:
пишем программу по массовой проверке архивов с темами/скриптами.
На текущий момент я написал код, осуществляющий проверку примерно как в плагине TAC, но без лишних распаковок темы.
Дополнительно перед проверкой на статические ссылки и закодированные участки программа проверяет кодировки файлов. Это делается потому, что у WordPress все файлы сохраняются в utf-8 без BOM, а гоблины, когда суют свои потные пальчёнки в файлы обычно настолько спешат, что забывают воспользоваться нормальной программой, а используют Блокнот, который сохраняет файлик в utf8 c BOM. И тут можно сразу определить — лез кто-то в файлы темы или нет.
Также планирую дописать код с прицелом на то, чтобы не просто констатировать факт «вшивости» темы, а, например указывать участки кода где вызываются php-функции с «левыми» ссылками, проверка стилей, используемых для ссылок и т.д.
И вот тут у меня вопрос к Вам, уважаемые читатели блога, а также те кто так или иначе связан с распространением тем и плагинов WordPress: какие бы Вы ещё хотели увидеть функции в программе?
В скором времени планирую выложить первую версию своего творения на всеобщее обозрение, так что жду от Вас предложений и советов.

Да уж, гоблины достают просто. Я встречался с случаем закодированных ссылок. При этом там была аккуратно закодирована ссылка на разработчика темы, а рядом почти незаметная точка с ссылкой на какой-то левый сайт. На сайте Лебедева есть прикольный дешифратор, который мне и помог разобраться с непонятным текстом. В результате я удалил все, что там было, чтобы перестраховаться! ;-) Спасибо за статью, особенно за плагин TAC. :-)
Да, в принципе, не за что :) Сейчас попробую дописать небоольшой кусок программы для всеобщего обозрения
Мда.. тема удивила и… не порадовала.
Скачал ТАС, ушел проверять. Спасибо.
А «может, что-то в консерватории подправить?» (с) М.Жванецкий
Почему бы не выполнять эту работу тем же поисковикам.
Поисковики свою работу знают — забанят ни в чем неповинный блог за то, что в блоге туча скрытых ссылок и всего делов :)
Есть еще много способов спрятать ссылки с помощью CSS (каскадные листы стилей или проще — стили оформления html-элементов). Лучше сразу проверять тему на вшивость и не надеяться на глаза. Мне больше всего нравится в этом плане плагин для FireFox SEOQuake. С его помощь сразу легко увидеть все исходящие ссылки.
[…] только скрытые ссылки, которые я рассматривал в первой части (с использованием php и класса в css), а третья — […]
[…] Война с гоблинами. Часть 3. Разбор завалов. Война с гоблинами. Часть 1. Основы ведения боя. […]