Специалисты «Лаборатории Касперского» Антон Иванов и Федор Синицын рассказали о шифровальщике, который нацелен на российских пользователей и использует протокол мессенджера Telegram для отправки своим операторам ключа для расшифровки.
Исследователи объясняют, что все шифровальщики, по сути, делятся на две группы: те, что работают в оффлайне и те, которым нужно подключение к интернету. Необходимость использования интернета обусловлена несколькими причинами. Например, злоумышленники могут отправлять шифровальщику ключ для шифрования и получать от него информацию для последующей расшифровки файлов жертвы. Разумеется, механизм, которым для этого пользуется малварь, должен быть защищен от посторонних, а значит, злоумышленники вынуждены тратить дополнительные время и силы на его разработку. Недавно специалисты «Лаборатории Касперского» обнаружили шифровальщика, авторы которого приспособили для этих целей протокол мессенджера Telegram.
Обнаруженный вредонос написан на Delphi и имеет размер более 3Мб. После запуска малварь генерирует ключ для шифрования файлов и идентификатор заражения infection_id. Затем троян связывается со своими операторами через публично доступного Telegram Bot API. По сути, троян выполняет функции бота Telegram и посредством публичного API отправляет сообщения своим создателям. Злоумышленники заранее получили от серверов Telegram уникальный токен, который однозначно идентифицирует вновь созданного бота, и поместили его в тело троянца, чтобы тот мог использовать API Telegram.
Шифровальщик отправляет запрос на адрес https://api.telegram.org/bot<token>/GetMe, где <token> – это уникальный идентификатор Telegram-бота, созданного злоумышленниками. Согласно официальной документации API, метод getMe позволяет проверить, существует ли бот с заданным токеном, и получить о нем базовую информацию. Троян никак не использует возвращаемую сервером информацию о боте.
Следующий запрос троян отправляет, используя метод sendMessage, позволяющий боту посылать сообщения в чат с заданным номером. Зловред использует зашитый в его теле номер чата и рапортует своим создателям о факте заражения и передают следующие параметра: <chat> — номер чата со злоумышленником; <computer_name> — имя зараженного компьютера; <infection_id> — идентификатор заражения; <key_seed> — число, на основе которого был сгенерирован ключ для шифрования файлов.
Исследователи пишут, что после этого малварь приступает к активным действиям: ищет на дисках файлы заданных расширений и побайтово шифрует их простейшим алгоритмом сложения с байтами ключа. В зависимости от настройки, вредонос может добавлять зашифрованным файлам расширение .Xcri, либо не менять расширение вовсе.
Чтобы потребовать выкуп, малварь скачивает со скомпрометированного сайта на базе WordPress дополнительный модуль Xhelp.exe и запускает его. Данный модуль, который злоумышленники называют «Информатор», имеет графический интерфейс и сообщает жертве о произошедшем, а также выдвигает требования выкупа. Сумма составляет 5000 руб, а в качестве методов оплаты предлагаются Qiwi и Яндекс.Деньги.
Исследователи отмечают, что это первый известный случай использования протокола Telegram шифровальщиком.