- Все для CMS | Joomla, Drupal, phpBB, Wordpress, DLE, IPB - http://cmsart.ru -
WordPress шаблоны: уязвимости, безопасность и скрытые ссылки. Методы избавления. Часть 2.
Posted By Archi On 31.05.2012 @ 5:56 пп In Статьи Wordpress | No Comments
В этой статье мы рассмотрим второй способ встраивания скрытых ссылок в WordPress-шаблоны, — закодированные/шифрованные ссылки.
Обычно это «добро» располагается в файле footer.php вашей темы и выглядит примерно так:
<?php
$_F=__FILE__;
$_X='Pz48ZDR2IGNw+... И ещё куча символов';
eval(base64_decode('JF9YPWJhc2U2NF... И ещё куча символов'));
?>
Причём не как здесь, а всё в 1 строчку.
Лечится очень просто. Помечаем «неизвестный» код простым комментарием в начале и в конце, например вот так:
<!-- кодировка -->
<?php
$_F=__FILE__;
$_X='Pz48ZDR2IGNw+... И ещё куча символов';
eval(base64_decode('JF9YPWJhc2U2NF... И ещё куча символов'));
?>
<!-- /кодировка -->
Далее в окне браузера кликаём ПКМ/вызываем меню «Исходный код страницы». Смотрим где у нас начинается наш комментарий и где заканчивается. Это и есть наш зашифрованный участок кода, копируем его. Заменяем каракули в footer.php (место, где была шифровка) на скопированный код из окна браузера. Сохраняем изменения в UTF-8 без BOM.
А теперь о «подводных камешках». Не удаётся вызвать открыть «Исходный код страницы»? Нет доступа? Без паники, это всего лишь JS, отключаем его любыми известными способами. Код блокировки контекстного меню браузера на JavaScript (пример):
<script type="text/javascript">
var message="";
function clickIE() {
if (document.all) {
(message);return false;
}
}
function clickNS(e) {
if (document.layers||(document.getElementById&&!document.all)) {
if (e.which==2||e.which==3) {(message);return false;}
}
}
if (document.layers) {
document.captureEvents(Event.MOUSEDOWN);
document.onmousedown=clickNS;
}
else {
document.onmouseup=clickNS;document.oncontextmenu=clickIE;
}
document.oncontextmenu=new Function("return false")
</script>
Как? Отключили JS, а вместо этого редирект в админку? Это тэг <noscript>. Просто вовремя остановите перенаправление, нажав клавишу Esc. Код переправления:
<noscript>
<meta content="0;URL=<?php bloginfo('url'); ?>/wp-admin/"
http-equiv="refresh" />
</noscript>
Как видите, избавиться от «излишков» не так уж сложно, как бы не старались «по ту сторону баррикад».
Источник: sooource.net [1]
Article printed from Все для CMS | Joomla, Drupal, phpBB, Wordpress, DLE, IPB: http://cmsart.ru
URL to article: http://cmsart.ru/wordpress/wordpress-articles/wordpress-shablonyi-uyazvimosti-bezopasnost-i-2
URLs in this post:
[1] sooource.net: http://cmsart.ru/?goto=http%3A%2F%2Fwww.sooource.net
Click here to print.
Copyright © 2012 Поддержка CMS | Документация, статьи по Joomla, Drupal, phpBB. All rights reserved.