Аналитики «Лаборатории Касперского» рассказали об эволюции написанной на Python рекламной малвари PBot (PythonBot), которая теперь устанавливает скрытые майнеры и расширения для браузера.
Впервые вредонос попал на радары специалистов еще год назад, и с тех пор он успел претерпеть значительные изменения. Так, одна из модификаций PythonBot устанавливает и запускает скрытые майнеры на компьютерах пользователей. Другие две обнаруженные вариации имеют одну цель: дополнять нежелательной рекламой веб-страницы, посещаемые жертвой.
В обоих вариантах рекламная малварь первоначально пытается внедрить в браузеры вредоносную DLL-библиотеку. В первом варианте она используется для запуска на страницах JS-скриптов, отображающих на них рекламу, а во втором – для установки в браузер рекламных расширений.
Последний случай заинтересовал исследователей больше всего: вирусописатели постоянно выпускают новые версии этой модификации, в каждой из которых усложняют обфускацию скриптов. Также отличительной особенностью данной вариации PBot является наличие в ней модуля, который обновляет скрипты и скачивает свежие расширения для браузеров.
В апреле 2018 года было зафиксировано более 50 000 попыток установки PBot на компьютеры пользователей продуктов «Лаборатории Касперского». В следующем месяце это значение увеличилось, что говорит о «подъеме» этой рекламной программы. Основной аудиторией PBot являются Россия, Украина и Казахстан.
Как правило PBot распространяется через сайты-партнеры, которые внедряют в свои страницы скрипты, перенаправляющие пользователя на рекламные ссылки:
- пользователь заходит на партнерский сайт;
- при нажатии на любую точку страницы всплывает новое окно браузера, открывающее промежуточную ссылку;
- промежуточная ссылка перенаправляет жертву на страницу загрузки PBot, задача которой – обманным путем добиться его скачивания и запуска на компьютере жертвы. Часть кода одной из таких страниц:
После начинается скачивание hta-файла, который при запуске скачивает установщик PBot.
Исследователи рассказывают, что PBot состоит из нескольких Python-скриптов, выполняющихся последовательно. В новых версиях программы они обфусцированы с помощью Pyminifier. В свежих версиях PBot модули выполняются по следующей схеме:
В результате атака выглядит следующим образом.
- Исходный файл *.hta скачивает в %AppData% исполняемый файл, который является NSIS-инсталлятором PBot.
- Инсталлятор дропает в %AppData% папку с интерпретатором Python 3, Python-скрипты и расширение для браузеров.
- Скрипт ml.py, с помощью библиотеки subprocess, добавляет в планировщик заданий Windows две задачи. Первая нацелена на выполнение ml.py при входе пользователя в систему, вторая – ежедневно в 5:00 запускает app.py. Также при помощи библиотеки winreg скрипт app.py прописывается в автозагрузку.
- Скрипт launchall.py запускает app.py, который отвечает за обновление скриптов PBot и скачивание новых расширений для браузеров.
- Далее launchall.py проверяет, активны ли следующие процессы:
- browser.exe
- chrome.exe
- opera.exe
- Если процессы найдены, запускается скрипт brplugin.py, который формирует DLL-библиотеку. Последняя внедряется в запущенный браузер и устанавливает рекламное расширение.
Расширение для браузера, устанавливаемое PBot, как правило, дополняет страницы различными баннерами, а также перенаправляет жертву на рекламные сайты.
Фото: "Лаборатория Касперского"