Всё бoльшую популярность у злоумышленников получает партнёрская программа Coinhive по майнингу криптовалюты в браузерах пользователей (и другие JS-майнеры). Ничего не подозревающие юзеры заходят на сайт — и не обращают внимания, что у них резко возрастает нагрузка на CPU (Coinhive майнит Monero на алгоритме CryptoNight, который создаёт большой блок в памяти и предотвращает внутренний параллелизм, поэтому майнинг исключает использование ASIC и наиболее эффективен именно на CPU).
Злоумышленники продолжают взламывать сайты и размещать скрипты для майнинга. То же самое продолжается с расширениями для браузеров. Недавно они внедрили майнер CryptoLoot даже в скрипт CookieScript.info, который помогает другим сайтам показывать предупреждение об использование кукисов по требованию Евросоюза — это самый популярный бесплатный сервис такого рода, его используют тысячи других сайтов, иначе им грозит штраф от Евросоюза до $500 000.
На деятельность злоумышленников можно было смотреть с усмешкой: ну сколько они там сгенерируют за две минуты, которые пользователь проводит на сайте? Эфемерная природа майнинга в браузере оставалась главным недостатком такого рода зловредов. Но специалисты Malwarebytes Labs отмечают, что владельцы «майнинг-ботнетов», к сожалению, сумели устранить этот недостаток. Теперь майнинг на компьютерах пользователей продолжается и после того, как они покинули заражённый сайт. И даже после закрытия браузера.
Тесты проводились в браузере Google Chrome. На анимации показано, что при закрытии браузера с обычным сайтом использование CPU сразу падает примерно до нуля. Но при закрытии сайта со встроенным майнером почему-то использование CPU остаётся на прежнем уровне более 60% (для маскировки майнер грамотно не загружает процессор по максимуму).
Хитрость в том, что несмотря на видимое закрытие окна браузера, на самом деле Google Chrome не закрывается, а остаётся в памяти. Зловред открывает невидимое всплывающее окно типа pop-under. Нужно признать, это очень грамотный приём.
Координаты всплывающего окна подобраны таким образом, чтобы спрятаться точно за часами на панели задач.
Координаты окна могут немного отличаться, в зависимости от разрешения экрана на компьютере жертвы, но в оно помещается за часами. Правда, есть один нюанс. Если в операционной установлена тема оформления с полупрозрачностью, то окошечко всё-таки слегка просматривается за панелью (см. скриншот в начале статьи).
Специалисты по безопасности совершенно случайно наткнулись на этот трюк при посещении одного из порносайтов. Там работает агрессивная рекламная сеть Ad Maven, которая обходит блокировщики рекламы и, в свою очередь, подгружает ресурсы с облака Amazon — это один из способов обойти блокировщик рекламы. Хотя сама вредоносная нагрузка .wasm загружается не непосредственно с AWS, а с постороннего хостинга.
В коде скрипта можно заметить некоторые функции, которые упоминаются в документации майнера Coinhive. Например, здесь есть проверка на поддержку WebAssembly — с помощью этой технологии браузер наиболее полно использует ресурсы установленного на компьютере аппаратного обеспечения. Если WebAssembly не поддерживается, то майнер переключается на более медленную JavaScript-версию (asm.js).
Как уже упоминалось выше, майнер не загоняет частоту процессора на 100%, а умеренно нагружает его, чтобы незаметно работать в течение длительного времени.
С учётом такого хитрого поведения вредоносных программ трудно полагаться полностью на блокировщики рекламы. Теперь после закрытия браузера нужно ещё проверить, что браузер исчез с панели задач, где висят запущенные процессы. Но если значок прикреплён к панели, он никуда не должен исчезать. Поэтому на всякий случай лучше после закрытия браузера проверить, что в диспетчере задач не осталось запущенных процессов типа chrome.exe и ему подобных. Хотя многие пользователи в наше время вообще никогда не закрывают браузер. Так что остаётся последний метод — постоянно следить за нагрузкой процессора, рекомендуют специалисты Malwarebytes Labs.
Они также публикуют индикаторы заражения для проверки, что на сайте не появилось ничего лишнего:
145.239.64.86,yourporn[.]sexy,Adult site
54.239.168.149,elthamely[.]com,Ad Maven popunder
52.85.182.32,d3iz6lralvg77g[.]cloudfront.net,Advertiser's launchpad
54.209.216.237,hatevery[.]info,Cryptomining site
Модуль Cryptonight WebAssembly:
fd472bd04c01a13bf402775441b0224edef4c062031e292adf41e5a5897a24bc
Любого мало-мальски технически грамотного человека вряд ли удастся обмануть таким образом. По крайней мере, ненадолго. Но существует огромное количество пользователей, которые ничего не знают о криптомайнерах в браузере, так что подобные зловреды могут стать весьма популярными.
Комментарии (56)
Herhen
30.11.2017 19:08А Firefox как на них реагирует?
sumanai
30.11.2017 19:44+1Сейчас это можно запретить через about:config, а ведь когда-то это делалось прямо из интерфейса, но в угоду дебилизации эту возможность вырезали из интерфейса.
В общем вот соответствующие настройки, чтобы скрипты не могли делать что им вздумается:
Move or resize popup windows:
Raise or lower windows:dom.disable_window_move_resize
Disable or replace context menus:dom.disable_window_flip
dom.event.contextmenu.enabled
dartraiden
30.11.2017 20:36dom.event.contextmenu.enabled
Из разряда «вредных советов» — сломает Google Docs, как минимум.
Вот список безопасных настроек. Лучше всего оценить, какие элементы интерфейса вам действительно нужны и запретить изменение лишь их.
// Запрещает попапам отключать элементы окон браузера. // http://kb.mozillazine.org/Dom.popup_maximum user_pref("dom.popup_maximum", 5); user_pref("dom.disable_open_during_load", true); user_pref("dom.allow_scripts_to_close_windows", false); // http://kb.mozillazine.org/JavaScript#JavaScript_settings_in_Firefox_23_and_above user_pref("dom.disable_window_move_resize", true); user_pref("dom.disable_window_flip", true); user_pref("dom.disable_window_status_change", true); // http://kb.mozillazine.org/Prevent_websites_from_disabling_new_window_features user_pref("dom.disable_window_open_feature.close", true); user_pref("dom.disable_window_open_feature.location", true); user_pref("dom.disable_window_open_feature.menubar", true); user_pref("dom.disable_window_open_feature.minimizable", true); user_pref("dom.disable_window_open_feature.personalbar", true); user_pref("dom.disable_window_open_feature.resizable", true); user_pref("dom.disable_window_open_feature.scrollbars", true); user_pref("dom.disable_window_open_feature.status", true); user_pref("dom.disable_window_open_feature.titlebar", true); user_pref("dom.disable_window_open_feature.toolbar", true);
Я, например, предпочитаю всегда видеть адресную строку в попапе.
maxzh83
30.11.2017 22:22Теперь майнинг на компьютерах пользователей продолжается и после того, как они покинули заражённый сайт. И даже после закрытия браузера.
«И даже после выключения компьютера». Именно этой фразы я ждал, но оказалось все банальнее.
QtRoS
01.12.2017 01:17Специалисты по безопасности совершенно случайно наткнулись на этот трюк при посещении одного из порносайтов.
Шикарная формулировка!prospero78su
01.12.2017 08:48А я хотел поехидничать, когда анимашку увидел. А потом прочитал дальше, и подумал, что надпись «YourPorno» теперь поводом поржать не будет))
quwy
01.12.2017 03:38Ничего не подозревающие юзеры заходят на сайт — и не обращают внимания, что у них резко возрастает нагрузка на CPU
Народ, очнитесь! Безо всяких майнеров, уже лет пять минимум, десяток вкладок со среднепопсовыми сайтами нагружает не самый дохлый четырехядерник почти до упора. Когда сайт на 90% состоит из скриптов, по другому быть просто не может.
Гугель, кстати, грозился недавно ограничить в хроме особо зажирающиеся вкладки и прогрессивно тормозить тяжелые скрипты. Как дела у данной инициативы?yea
01.12.2017 14:33Не поленился открыть 20 вкладок (гиктаймс, гмейл, мейлру, вконтактики, фейсбуки, ютуб + проигрывание видео, твитч + открытый стрим, жира и гитхаб, некоторые из них в нескольких экземплярах) и посмотреть — из результатов 2-3% CPU load, из которых хром даже не на первом месте, и какофония в наушниках. Это у нас настолько разное железо и софт, или вы безосновательны в своих заявлениях?
quwy
01.12.2017 16:34+1Гиктаймс, гмейл, гитхаб и жира? Вы смеетесь? Открыть надо то, что загружено у среднего гуманитария: развлекаловку типа яплакал; сайтец какой-нибудь онлайн-игрушки; новости типа обозревателя (имею в виду .ua); вконтакт на проигрывании музычки; что-нибудь желтушное типа рентв и далее в таком же роде.
Да даже панели управления рекламой того же яндекса или фейсбука почти постоянно грузят ядро. У жены комп не затихает ни на секунду, хотя ничего кроме этих долбаных панелей и не открыто толком.yea
01.12.2017 16:54На несколько FullHD-видеопотоков в фоновых вкладках вы внимание не обратили, зато вконтакт непременно с музычкой должен быть? Ну и почтовые сервисы это достаточно жирный функционал все же.
quwy
03.12.2017 20:21На несколько FullHD-видеопотоков в фоновых вкладках вы внимание не обратили, зато вконтакт непременно с музычкой должен быть?
За воспроизведение видео отвечают не скрипты (да и вообще это часто аппаратная фича железа). А вконтактный медиаплеер покушать CPU любил, может и поправили уже, но дело было.
Сейчас началась зима. И на некоторых не особо серьезных сайтах снова появились эти идиотские падающие снежинки. Не знаю, какой криворук писал этот скрипт, но он жрет ядро на 100%.
Или гуглодоки, например, фоновая вкладка конечно ведет себя смирно, но любая активность на странице вызывает дикий всплеск использования CPU.
valentinoshm
01.12.2017 07:26Скиньте пожалуйста ссылку на сайт с таким майнером
brzsmg
01.12.2017 08:08Например Coinhive можно найти здесь: walking-dead.ru
И ни 60% он нагружает, а 99%, GUI теряется.
Пока таких сайтов, как Coinhive, мало, можно внести их в файл hosts, но что то мне подсказывает что скоро их будет куча.Compost
01.12.2017 08:21uMatrix успешно заблокировал инициативу. Но если разрешить скрипты и XHR c coinhive начинает грузить систему.
Memiy
01.12.2017 08:15Хитрый план) Хотите знать предпочтения безопасников?
А в конце статьи поелс фразы:Они также публикуют индикаторы заражения для проверки
, не оно?
Main_Shroom
01.12.2017 09:42Интересный материал. Но хотелось бы, чтобы кто-нибудь написал актуальный краткий(или не очень) гайд на тему защиты от майнеров встроенных в сайты. Буду крайне благодарен любому, кто возьмет на себя этот труд.
P.S. если таковой уже имеется, поделитесь ссылкой.fpir
01.12.2017 10:53Хм, гайд защиты от майнеров? А Вам жалко? Отожрут пару рублей за электричество. А если самому нужно, не хватает-открываете дисетчер-монитор производительности. Смотрите что жрёт процессор, или память, или обращение к диску и понижаете приоритеты или прибиваете процесс. Если, к примеру, хром и он нужен, то- в диспетчер хрома, и смотрите вкладки.
Я не призываю поощрять таких майнеров, но сам запаиваться не собираюсь. Описанную процедуру я провожу по нескольку разв в день, и если помайнят часок-молодцы, значит могут…bacon_bacon
01.12.2017 13:05Соглашусь, что в качестве первой помощи нужно мониторить загрузку ресурсов. А насчет «жалко что ли» скажу, что не все ограничивается компьютером дома и оплатой счетов за электричество, с ноутбука без зарядки сидеть в интернете и мониторить, чтобы очередной сайт не майнил и не садил батарею довольно неудобно.
Main_Shroom
02.12.2017 05:23А Вам жалко?
По долгу службы, среди прочего приходится следить за небольшой сетью. В основном железо древнее(и это еще мягко сказано), а интернетом активно пользуется большинство пользователей — соответственно и браузер открыт постоянно, что приводит к тому, что он отъедает львиную часть ресурсов и если туда еще и впихнуть майнеры, то это капут. Жестко ограничивать список досупных ресурсов на уровне прокси нельзя по ряду причин, так что единственный вариант, это хотя бы обезопасить машины пользователей.
P.S. а вот дома, конечно не жалко, если какой-то сайт(особенно полезный) помайнит за мой счет пусть даже часок-другой. Главное, чтобы я был предупрежден(плашка, которую видно на текущей странице, а не окошко, стыдливо прячущееся за часами) и кол-во ресурсов направленных на это было адекватным, ну например 10-15%.
dartraiden
02.12.2017 18:43Напоминает случай, как владелец одного сайта встроил скрипт, заставляющий машины посетителей DoS-ить сайт конкурента.
Когда поднялся шум, он тоже пытался оправдаться тем, что посетителям урона не причинил. Проблема в том, что люди, даже если они и не против помочь повалить какой-то сайт (что, впрочем, преступно), очень возмущаются, когда их используют «втёмную».
dtBlack
01.12.2017 10:21Хм… а я то думал, что за новая мода загонять спамные окна в район часов…
У меня не прокатывает, так как я использую в семерке классическую тему, без группировки программ, и видно, что не зарылась программа или появились неучтенные окна браузера...
SchmeL
01.12.2017 11:12поэтому майнинг исключает использование ASIC и наиболее эффективен именно на CPU
Эффективен, если в bios включен аппаратный AES, но не эффективнее GPU.
Например на CORE I7 7700K выдает 300 хешей, а на RX480 — 750.
Acionyx
01.12.2017 11:30А что происходит на OS X? Есть свидетели?
Я обычно использую браузер в фулл-скрин и любое окно вызвало бы мгновенный заметный эффект открытия, но, похоже, uBlock отлично справляется.
andrey_aksamentov
01.12.2017 16:41Совсем недавно на одном из мои компов firefox стал постоянно нагружать проц на 90%, а проц тот ещё зверь — fx8320@4000mhz… Просто при запуске на пустой странице начинает сразу грузить и не перестает до закрытия браузера. Что примечательно любая активность как то просмотр видео на Ютубе никак не меняет загрузку ЦП, она остается ровно 90. Заметил не сразу точно причину понять не смог, переустановка и сброс браузера не помогли, антивирус ничего не нашел, другие браузеры работают нормально. Решил радикально переустановить Винду… Пока firefox не устанавливал. Может я конечно поспешил уничтожить инородный организм не обнаружив и не изучив его, надеюсь наука не сильно потеряет...
denticulus
03.12.2017 23:16У меня грузило маленькое расширение для создания QR кодов, которым пользовался давно, а грузить начало недавно. Удалил, зашёл в магазин расширений проверить чзх, а его там уже нет.
XDred
01.12.2017 19:20У меня 3 монитора, и в состеме все располагаются по диагонали (на каждом остаётся возможность быстро развернуть окно потянув вбок или вверх). И если кто-то захочет спрятать окно под часами то оставшаяся часть окна вылезет на втором мониторе.
А если учитывается полный размер рабочего стола то окно вылезет целиком на третьем мониторе.
Шах и мат.
SILENT_WARRIOR
03.12.2017 13:32С такими темпами могут внезапно снова стать популярными гаджеты(виджеты) на рабочий стол, отображающие текущую загрузку железа)
VT100
03.12.2017 16:36У меня на десктопе тупо слышно, как вентилятор разгоняется.
И, кстати, просмотр Гика добавляет к загрузке проца процентов 60% (на здоровых сайтах — до 10%). Почему так?
dartraiden
А зачем такие сложности с поиском окна за часами, разве значок браузера не болтается в панели задач?
benipaz
так он болтается там всегда, если прикреплен. а прикрепляется он обычно всегда при установке. при включенном браузере только фон немного меняется
creker
По крайней мере на винде очень сложно не заметить, что приложение до сих пор запущено. Даже если ярлык прикреплен.
Zidian
Это если держать браузер закрытым, сложно. А у многих он запущен днями.
creker
Вот это уже более реалистично, т.к. браузер действительно вообще не закрываю. А с последним обновлением винды он обратно запускается при включении системы. Интересно, возобновится ли работа майнера таким образом, т.к. вкладки хром восстанавливает.
sanchezzzhak
Да, зловред может быть добавлен как веб-воркер
А если поймали троян (установили что-то с интернета) то в ярлыки браузера.
Denai
Немного?
benipaz
немного. все зависит от установленной темы
kablag
Оказывается не зря я ставил ярко зелёный :)
benipaz
я вижу тоже вертикальный таскбар ))
kablag
да вроде как экономит полезное место на всех современных широкоформатных мониторах :)