Как удалить скрытые внешние ссылки в Joomla 2.5/3.5 Сегодня в интернете можно скачать огромное количество бесплатных шаблонов для Joomla. Можно без проблем подобрать шаблон любого цвета и стиля. Это, конечно же, привлекает новичков. А какие подводные камни существуют в бесплатных шаблонах из интернета? Чем же они плохи? Как правило, все варезные шаблоны содержат скрытые ссылки. Вшивание вредоносного кода в бесплатные шаблоны - это целый бизнес поднимающий ТИЦ сайтам на заказ. Из-за вредоносного кода оказывается, что ваш сайт ссылается на несколько левых ресурсов о которых вы никогда и не слышали.
Авторы этих ссылок получают деньги за размещение кодов, поисковики пренебрежительно смотрят на ваш сайт, а вы ни сном, ни духом. В худшем случае ваш сайт могут взломать, а поисковики его забанят. Стоит отметить, что обнаружить скрытые ссылки не так то просто, но всё же можно.
Установив в браузер Mozilla Firefox RDS bar или SEObar можно обнаружить исходящие ссылки на абсолютно сторонние ресурсы. Но эти плагины помогут Вам обнаружить внешние ссылки в том случае, если Ваш сайт уже загружен на сервер, на локальном же сервере (Denwer) они не работают.
А что делать если Вы сначала хотите почистить шаблон от внешних ссылок, наполнить его контентом и только потом загрузить его на сервер? Выход есть и о нём сегодня пойдет речь.
Для начала проверьте скачанный архив с шаблоном антивирусом, это не помешает. Затем установите шаблон на локальный сервер Денвер (Denwer), а если это пакет QuickStart , то можно погонять шаблон на наличие в нём технических глюков.
Зайдите на страницу шаблона на локальном сервере и с помощью комбинации клавиш "Ctrl + U" откройте исходный код страницы. Этот же результат можно получить кликнув правой клавишей мыши в окне браузера и, в выпадающем меню выберите "Исходный код страницы". Далее с помощью комбинации клавиш "Ctrl + F" открываем поиск, забиваем в поле поиска "http" и внимательно просматриваем каждую ссылку.
Если обнаруженные ссылки на сторонние сайты попытаться найти через поиск программы Total Commander, то ничего у нас не будет обнаружено. Дело в том, что эти ссылки скрытые, т.е. закодированы через base 64. Поэтому дальнейший поиск будем вести через id ссылки. В моем примере id="yt_xijtw".
Открываем Total Commander и заходим прямо в архивированную папку шаблона (можете разархивировать) и, сочетанием клавиш "ALT+F7", вызываем функцию "Поиск файлов".
В строке "С текстом" ставим чекбокс и вписываем "yt_xijtw".
Total Commander находит данный id сразу в нескольких файлах.
Открываем поочередно найденные файлы любым редактором текста, лучший из которых "Notepad++", и воспользовавшись функцией поиска, находим всё тот же текст "yt_xijtw".
В данной строке меняем позиционироваие right: 4111px на right: 0px, т.е. выводим ссылки в видимую позицию.
Теперь Notepad++ сможет "увидеть" закодированные ссылки. Если Вы хотите ускорить процесс поиска сторонних ссылок, то предыдущий этап, связанный с поиском id и выводом ссылки в видимую позицию можно не производить. Вы можете сразу перейти к поиску ссылок через base64, но только с помощью кроссплатформенного текстового редактора Sublime Text (Саблайм Текст). Дело в том, что в отличие от Notepad++ редактор Sublime Text найдет ссылки независимо от их позиции. Пусть Вас не пугает то, что редактор Sublime Text платный, дело в том, что после окончания бесплатного тестового периода он всё равно продолжает работать лишь изредка предлагая Вам оплатить его стоимость. Скачать этот замечательный редактор можно здесь.
Снова открываем программу Total Commander и вызываем функцию "Поиск файлов". В строке "С текстом" ставим чекбокс и вписываем base64.
Система находит великое множество файлов, но это не значит, что везде сидят вредоносные ссылки. Команда base64 используется при зашифровке Ваших логинов, паролей и не только. Поэтому она встречается так часто. И в этом, заключается основная сложность при поиске файлов с вшитыми ссылками. Ссылки на сторонние сайты скрываются в шаблоне в файле, который отвечает за вывод статей сайта. Для шаблонов от студии YooTheme, как правило, этот файл лежит по такому пути:
templates/ваш_шаблон/warp/systems/joomla/layouts/com_content/article/default.php В шаблонах других разработчиков файл с вшитыми ссылками, как правило, находится здесь: com_content/article/default.php.
Открываем файл default.php редактором "Notepad++" и сочетанием клавиш для поиска "CTRL+F" ищем команду "base64" теперь уже непосредственно в файле. Сразу находим подозрительную переменную ($yt_ijt) в строке с "base64".
В этом же файле default.php редактором Notepad++ ищем переменную "$yt_ijt" (забиваем имя этой переменной в строку поиска).
И находим длинный непонятный код: 'PGRpdiBpZD0'. 'ieXRf'. 'eGlqd'. 'HciPj'. 'xhIGhy'…'hPjwvZ'. 'Gl2Pg0K'
Обратите внимание на строку php if ($this- >item- > hits>'23'). Эта команда означает, что скрытые ссылки появятся на сайте только после того, как материал будет просмотрен пользователями 23 раза.
То есть, Вы установили шаблон, наполнили его контентом, выложили его на сервер, не обнаружили внешних ссылок и успокоились. А через некоторое время, ссылки на сторонний ресурс начинают работать.
Выделяем текст, заключенный в одинарные кавычки, копируем с помощью комбинации клавиш "Ctrl + C" и переходим на сайт http://base64.ru . В средней части окна выбираем "Base64 – Текст" и вставляем в верхнее окно код. В нижнем окне видим, что в данном тексте закодированы сразу две ссылки на сторонние сайты.
Возвращаемся в файл и удаляем команду "php" вместе с кодировкой. В этом же файле (default.php) есть ещё одна ссылка на эту переменную, которую также удаляем: echo base64_decode($yt_ijti);
Повторяем поиск по шаблону (ALT+7), выбрав теперь любой отрезок из найденного кода, например: 'PGRpdiBpZD0'
И если обнаруживаем еще файлы с кодами, то чистим их вышеуказанным способом. Теперь можно проверить, исчезли внешние ссылки с шаблона или нет. Зайдите на страницу шаблона на локальном сервере и с помощью комбинации клавиш "Ctrl + U" откройте исходный код страницы. Далее открываем поиск, забиваем в поле поиска "http" и снова просматриваем каждую ссылку, ссылки на сторонние сайты должны исчезнуть.
На этом все, надеюсь я предоставил вам довольно полезную информацию о поиске и последствиях вшитых ссылок.