Zanubis, банковский троян для Android, впервые появился примерно в августе 2022 года и был нацелен на пользователей финансовых учреждений и криптовалютных бирж в Перу. Основной путь заражения Zanubis лежит через выдачу себя за легитимные перуанские Android-приложения и последующий обман пользователя с целью включения разрешений Accessibility для получения полного контроля над устройством.
Zanubis
Более поздние образцы Zanubis были обнаружены Kaspersky Lab примерно в апреле 2023 года. Вредоносная программа была замаскирована под официальное Android-приложение для перуанской правительственной организации SUNAT (Superintendencia Nacional de Aduanas y de Administración Tributaria).
Zanubis обфусцирован с помощью Obfuscapk, популярного обфускатора APK-файлов для Android. После того как жертва предоставляет вредоносному приложению разрешения Accessibility, позволяя ему работать в фоновом режиме, программа с помощью WebView загружает легитимный сайт SUNAT, используемый для поиска долгов. При этом предполагается, что ничего не подозревающий пользователь будет считать, что приложение является частью экосистемы сервисов SUNAT.
Для связи с C2 используются WebSockets и библиотека Socket.IO. Последняя позволяет вредоносной программе устанавливать постоянное соединение с C2, что обеспечивает возможность отказоустойчивости (с WebSockets на HTTP и наоборот). Еще одним преимуществом является создание масштабируемой среды, в которой все новые заражения Zanubis при необходимости могут массово получать команды (также называемые событиями) от C2. После запуска вредоносной программы имплант вызывает функцию для проверки соединения с C2. Он устанавливает два соединения с одним и тем же сервером C2, но они выполняют разные типы действий, а второе соединение устанавливается только по запросу C2.
Zanubis намеренно не имеет заранее заполненного и жестко заданного списка приложений, на которые он нацелен. В последние годы разработчики вредоносного ПО склонны добавлять или удалять названия приложений из списка целей. Чтобы установить целевые приложения на импланте, C2 отправляет событие config_packages. JSON-объект, передаваемый с этим событием, содержит массив, в котором указаны приложения, которые вредоносная программа должна отслеживать. Вредоносная программа анализирует список целевых приложений каждый раз, когда на экране происходит событие, например, открытие приложения, которое она обнаруживает с помощью функции onAccessibilityEvent. Обнаружив запущенное на устройстве приложение из списка, Zanubis, в зависимости от конфигурации, предпринимает одно из двух действий для кражи информации о жертве: регистрирует события/клавиши или записывает экран.
После установки нового соединения Zanubis отправляет на сервер событие VncInit, информирующее о завершении инициализации второго набора функций, и ежесекундно отправляет информацию о рендеринге экрана, например, о его размере. Можно предположить, что таким образом операторы могут получить контроль над зараженным телефоном или установить на него "черный ход".
Интересной особенностью второго набора является событие bloqueoUpdate. Это одно из самых навязчивых и убедительных действий вредоносной программы: она выдает себя за обновление Android и тем самым блокирует использование телефона. Во время выполнения "обновления" телефон остается непригодным для использования, вплоть до невозможности заблокировать или разблокировать его, поскольку вредоносная программа отслеживает эти попытки и блокирует их.
Согласно проведенному Kaspersky Lab анализу, объектами атак являются банки и финансовые организации Перу. Этот факт в сочетании с данными телеметрии позволяет нам предположить, что Zanubis нацелен именно на пользователей этой страны. Список целевых приложений содержит более 40 названий пакетов. Собранные на сегодняшний день образцы Zanubis способны заразить любой телефон с ОС Android, но все они были написаны с учетом испанского языка как системного.
Indicators of Compromise
MD5
- 054061a4f0c37b0b353580f644eac554
- 248b2b76b5fb6e35c2d0a8657e080759
- 41d72de9df70205289c9ae8f3b4f0bcb
- 8d99c2b7cf55cac1ba0035ae265c1ac5
- 9b00a65f117756134fdb9f6ba4cef61d
- a2c115d38b500c5dfd80d6208368ff55
- a518eff78ae5a529dc044ed4bbd3c360