Обнаружено новое семейство вредоносных программ для Android под названием RatHat. Основная задача - кража денег и данных через заражённый смартфон. Следы разработки указывают на группу, которая, судя по косвенным признакам, работает из Китая. Главное отличие от прежних образцов - управление через генеративный искусственный интеллект. Программа разбирается в интерфейсе устройства сама и действует без заранее прописанных сценариев.
Описание
Распространяют RatHat через СМС-фишинг и вредоносную рекламу. Сообщения и объявления ведут на поддельные сайты, где жертве предлагают скачать приложение вручную, в обход официального магазина. Чаще всего подделка выдаёт себя за популярный сервис. Отдельные сборки маскируются под приложение для просмотра видео: используется чужой значок и название. Позже оператор может переименовать ярлык, например в "Chrome", чтобы не вызывать подозрений. Ссылки встречаются и на сторонних форумах, где пользователи привыкли к неофициальным сборкам. География целей широка: под удар попадают владельцы банковских приложений из разных стран.
Установка разбита на несколько шагов, и здесь заметна ставка авторов на незаметность. По данным zLabs, установщик несёт внутри зашифрованную полезную нагрузку и распаковывает её только в памяти. Затем он обращается к встроенным системным механизмам установки и обходит ограничения на опасные разрешения. Сам исполняемый файл прячется под видом системной библиотеки. Так вредоносная программа дольше остаётся невидимой для антивирусных сканеров.
После запуска главное для RatHat - получить доступ к службе специальных возможностей. Это системный инструмент Android, который позволяет управлять интерфейсом от имени пользователя. Через него программа сама включает режим разработчика и беспроводную отладку. Потом она читает с экрана код сопряжения и подключается к отладочному интерфейсу смартфона, получая права уровня командной оболочки. Этот шаг открывает доступ к функциям, недоступным обычному приложению. Далее на устройстве закрепляются два вспомогательных компонента: один выполняет команды, второй держит постоянный канал связи с сервером злоумышленников.
Отдельного разбора требует работа с искусственным интеллектом. Программа собирает описание текущего экрана в текстовом виде и отправляет его популярному чат-боту. Тот в ответ подсказывает координаты нужной кнопки. Так вредоносное ПО нажимает на элементы интерфейса, листает страницы и заполняет формы. Скриптовые аналоги ломаются при малейшем изменении дизайна, а здесь поведение подстраивается на ходу.
Ещё один механизм перехватывает ввод на аппаратном уровне. Вспомогательный компонент читает поток данных от сенсорного экрана и получает только координаты касаний. Обычному приложению такой доступ закрыт, а оболочка с расширенными правами его получает - ради этого и затевается вся возня с беспроводной отладкой. Дальше координаты сопоставляются с заранее сохранёнными раскладками клавиатур всех крупных производителей. Координаты плюс модель устройства дают конкретную цифру PIN-кода. Для графического ключа последовательность касаний накладывается на сетку из девяти точек. Такой способ обходит запрет на снимки экрана, сторонние клавиатуры и скрытие цифр на экране блокировки.
Удаление не решает проблему. Программа перехватывает диалог подтверждения и показывает поддельное сообщение об ошибке в стиле магазина приложений. Даже если пользователь всё же удалит основное приложение, вспомогательная служба останется: она работает вне обычного цикла программы. Служба проверяет наличие приложения и при необходимости устанавливает его заново, автоматически выдавая все разрешения и возвращая доступ к службе специальных возможностей. Пока приложение работает, оно следит за состоянием службы и перезапускает её при остановке.
Банковские данные собирают через поддельные формы. При открытии нужного приложения поверх него появляется копия настоящего интерфейса, и жертва вводит логин с паролем прямо в неё. Отдельные шаблоны рассчитаны на платёжные сервисы WeChat и Alipay: их экранные формы встроены в код. Параллельно перехватываются СМС и уведомления, поэтому коды двухфакторной аутентификации тоже попадают к злоумышленникам. Собранное уходит на сервер вместе с копиями экрана и записями ввода.
Ещё одну линию защиты авторы выстроили против разбора кода. Служебный файл описания приложения раздут до десятков мегабайт и заполнен посторонними блоками. Инструменты анализа на них падают или уходят в бесконечный цикл, тогда как сама система такие блоки пропускает. Строки внутри программы зашифрованы, есть проверки на подключённый отладчик, на инструменты перехвата и на признаки эмулятора. Часть проверок рассчитана на то, что файл попытаются распаковать и подписать заново.
Наблюдения указывают на смену подхода в мобильных атаках. На место жёстких сценариев приходят гибкие цепочки, которые выходят за пределы песочницы - изолированной среды, где работает обычное приложение, - и подстраиваются под поведение человека. Пока подобных образцов немного, но их появление задаёт планку для следующих версий. Для пользователя базовая защита остаётся прежней: свежая версия Android, осторожность со сторонними установочными файлами и проверка списка активных служб специальных возможностей. Компаниям стоит учитывать, что корпоративные данные на смартфонах сотрудников доступны такому инструменту напрямую.