Троян Qakbot встревает в переписку жертв, чтобы увеличить свою популяцию

Троян Qakbot встревает в переписку жертв, чтобы увеличить свою популяцию

Троян Qakbot встревает в переписку жертв, чтобы увеличить свою популяцию

Исследователи из Sophos изучили повадки Qakbot — модульного Windows-зловреда, который, несмотря на почтенный возраст, сохранил свою актуальность как угроза. Троян даже стал еще более агрессивным в отсутствие основных конкурентов — сошедшего со сцены Trickbot и потерявшего былую мощь Emotet.

Дебютировавший как банкер вредонос за десять с лишним лет научился воровать и другую информацию, а также регистрировать клавиатурный ввод, открывать бэкдор, избегать обнаружения и, следуя примеру Trickbot и Emotet, загружать другие вредоносные программы, в том числе шифровальщиков.

Разбор недавних атак Qakbot, он же QBot, QuackBot и Pinkslipbot, показал, что он по-прежнему распространяется через спам, доставляет различную полезную нагрузку и сканирует сети жертв в поисках слабых мест. Вредонос также сохранил способность к самораспространению через перехват переписки своих жертв в Outlook и рассылку поддельных реплик на найденные входящие сообщения.

Как оказалось, такие зловредные письма используют форму reply-all («ответить всем»); в них даже цитируется легитимное сообщение, на которое троян отозвался от имени жертвы. Фальшивое послание лаконично: оно состоит из одной фразы и ссылки (URL или хотлинк), указывающей на веб-ресурс с архивным файлом, содержащим вредоносный документ в редком формате .xlsb (Excel Binary Workbook).

Примечательно, URL в письмах Qakbot обычно включают несколько слов на латыни, как в этом примере Sophos (nulla quia — «никаких ибо», eum — «ему»):

 

Как и следовало ожидать, при открытии xlsb-файла пользователя попросят включить режим редактирования и активировать макрос, запускающий цепочку заражения. Опасная функциональность Microsoft Office по умолчанию отключена, а скоро, видимо, и вовсе исчезнет из пользовательского интерфейса.

При установке Qakbot создает на диске C: папку с произвольным 5-значным именем для своих файлов, а затем начинает собирать подробную информацию о зараженной машине. Каждые пять минут работающий в памяти троян (DLL загружаются в память процесса Exporer.exe или Msedge.exe с помощью regsvr32) пытается связаться со своим сервером.

В ответ на присланные данные зловреду отдают дополнительные модули, которые тоже загружаются в память по методу process hollowing (создание нового экземпляра запущенного процесса в состоянии ожидания и замена легитимного кода в памяти вредоносным). Экспертам удалось выявить три таких компонента:

  • инжектор, внедряющий код для кражи паролей в веб-страницы Facebook, Microsoft, Google и систем онлайн-банкинга;
  • сканер сети, использующий протокол ARP;
  • модуль-спамер, который пытается подключиться к SMTP-серверу (заданный список содержит десяток позиций) и начать рассылку вредоносных писем.

Зловредные коды и C2-коммуникации тщательно маскируются с использованием обфускации и шифрования. Аналитикам пришлось изрядно повозиться, чтобы добраться до ключевых строк кода Qakbot, параметров конфигурации и вшитых адресов центра управления.

Зловред также умеет скрывать обращения к API Windows с помощью хеш-таблиц — похожий механизм использует Dridex. Кешируя данные в системном реестре, троян шифрует их ключом, сгенерированным в ходе заражения. При выполнении многих функций он использует команды WMI, которые тоже шифруются (по методу XOR).

Обмен с C2-сервером осуществляется по HTTPS (с TLS-щифрованием); каждое послание кодируется по base64 уникальным ключом. Сохраняемую локально информацию вредонос тоже шифрует, генерируя для этого отдельный ключ.

Не исключено, что авторы Qakbot-атак подрабатывают, продавая доступ к взломанным сетям. Экспертам попадались сэмплы, пытавшиеся загрузить на хост маячок Cobalt Strike, который можно потом использовать для дальнейшего проникновения в сеть.

Подпишитесь на новости

Обновите Telegram для Android: версия 13.2.2 закрыла опасную уязвимость

Telegram исправил уязвимость в HTML-виджетах, которые мессенджер открыл для ботов 9 ноября. Через ошибку скрипт из обычного сообщения мог выйти за пределы песочницы и выполнить машинный код на устройстве. Проблема находилась в движке JavaScript QuickJS, который Telegram использует в собственном форке QuickJS-ng.

Патч описан в журнале изменений песочницы виджетов Telegram на GitHub. Парсер QuickJS принимал конструкцию await using в заголовке цикла даже внутри обычных, неасинхронных функций.

В таком случае движок завершал функцию по пути для асинхронного кода и не закрывал ссылки на ее локальные переменные. Вложенные функции после возврата продолжали обращаться к уже освобожденному участку стека. Такой класс ошибок называют use-after-return.

О проблеме сообщили применительно к Telegram для Android 13.2.1, но, по данным Telegram, она затрагивала все платформы, где собирается форк движка. Исправление внесли 10 ноября: теперь парсер выдает синтаксическую ошибку на такую конструкцию. В тот же день вышла версия Telegram для Android 13.2.2.

Уязвимый код попал в основную ветку QuickJS-ng 16 мая вместе с поддержкой явного управления ресурсами. Ошибку описал разработчик Андреас Рёсдал.

9 ноября он опубликовал в репозитории QuickJS-ng аудит безопасности всего движка, проведенный с помощью модели Claude от Anthropic. В отчете 27 находок, уязвимость с await using в нем третья, с высоким уровнем опасности.

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