Chthonic: новая модификация ZeuS

Осенью этого года мы обнаружили новый банковский троянец, который привлек наше внимание двумя фактами:

  • во-первых, он интересен с технической точки зрения, поскольку в нем используется новый способ загрузки модулей;
  • во-вторых, анализ конфигурационных файлов показал, что зловред нацелен на множество систем интернет-банкинга: более чем 150 различных банков и 20 платежных систем, расположенных в 15 странах. Среди его потенциальных мишеней больше всего банков в Великобритании, Испании, США, России, Японии и Италии.

Продуктами «Лаборатории Касперского» новый банковский зловред детектируется как Trojan-Banker.Win32.Chthonic.

Судя по всему, данный троянец является эволюцией ZeusVM, хотя он и претерпел ряд значительных изменений. В Chthonic применяется тот же криптор, что и у ботов Andromeda, шифрование, как в троянцах Zeus AES и Zeus V2, и виртуальная машина, подобная той, что используется в зловредах ZeusVM или KINS.

Заражение

Мы зафиксировали несколько путей заражения Trojan-Banker.Win32.Chthonic:

  • рассылка писем с эксплойтами;
  • загрузка ботом Andromeda (Backdoor.Win32.Androm по классификации «Лаборатории Касперского»).

В случае, когда рассылались письма с эксплойтами, злоумышленники прикрепляли к сообщению специально сформированный RTF документ, нацеленный на использование уязвимости CVE-2014-1761 в продуктах MS Office. Файлу присвоено расширение .DOC, чтобы не вызвать подозрений.

Пример письма  с эксплоитом CVE-2014-1761

Пример письма с эксплоитом CVE-2014-1761

Если эксплуатация уязвимости проходила успешно, то на атакуемый компьютер скачивался файл – загрузчик троянца. В приведенном примере скачивание происходит со взломанного сайта hxxp://valtex-guma.com.ua/docs/tasklost.exe.

Бот Andromeda скачивал загрузчик по адресу hxxp://globalblinds.org/BATH/lider.exe.

Загрузка троянца

Скачанный загрузчик внедряет свой код в процесс msiexec.exe. Этот загрузчик, похоже, основан на исходных кодах бота Andromeda, однако протокол общения у них отличается.

Пример общего функционала загрузчиков Andromeda и Chthonic

Пример общего функционала загрузчиков Andromeda и Chthonic

Различия  в протоколах общения с C&C у Andromeda и Chthonic

Различия в протоколах общения с C&C у Andromeda и Chthonic

Загрузчик Chthonic содержит зашифрованный конфигурационный файл (подобное шифрование с использованием виртуальной машины применялось в KINS и ZeusVM). Основные данные в конфигурационном файле: список С&С серверов, 16-байтный ключ для RC4 шифрования, UserAgent, botnet id.

Основной цикл вызова  функций виртуальной машины

Основной цикл вызова функций виртуальной машины

После расшифровки конфигурационного файла отдельные его части сохраняются в куче (heap – выделенный блок памяти) в следующем формате:

Chthonic_5

Указатели при этом никуда не передаются. Бот находит нужные значения, перебирая все элементы кучи с помощью функции RtlWalkHeap и сравнивая первые 4 байта с нужным MAGIC VALUE.

Загрузчик формирует типичный для ZeuS-троянцев пакет с данными о системе (local_ip, bot_id, botnet_id, os_info, lang_info, bot_uptime и некоторые другие) и шифрует его сначала с помощью XorWithNextByte, а затем с помощью RC4. Далее пакет отправляется на один из записанных в конфигурационном файле адресов командных центров.

В ответ зловред получает расширенный загрузчик – модуль в формате данных, типичном для ZeuS, т.е. не стандартный PE-файл, а именно набор секций, которые отображаются в память самим загрузчиком: исполняемый код, таблица релокаций, точка входа, экспортируемые функции, таблица импорта.

Код с идентификаторами секций, соответствующих структурам модулей

Код с идентификаторами секций, соответствующих структурам модулей

Следует отметить, что секция импорта представлена лишь хешами от имен API функций. Сама таблица импорта настраивается с применением метода Stolen Bytes, для чего в загрузчике есть встроенный дизассемблер. Похожую настройку импорта мы ранее видели в Andromeda.

Часть кода функции  настройки импорта в Andromeda и Chthonic

Часть кода функции настройки импорта в Andromeda и Chthonic

Заголовок структуры с модулем

Заголовок структуры с модулем

Расширенный загрузчик также содержит конфигурационный файл, зашифрованный с помощью виртуальной машины. Он загружает главный модуль троянца, который, в свою очередь, скачивает остальные. Однако в качестве шифрования расширенный загрузчик использует AES, а некоторые секции упакованы с помощью UCL. Главный модуль загружает дополнительные модули и настраивает таблицы импорта практически так же, как это делает исходный загрузчик Chthonic, т.е. данный вариант ZeuS вобрал в себя часть функционала Andromeda.

Вот полная последовательность загрузки зловреда, включая модули, о которых мы расскажем далее:

Chthonic_9

Модули

Троянец Trojan-Banker.Win32.Chthonic имеет модульную структуру, и на сегодняшний день мы обнаружили следующие модули:

Название Описание Наличие 64-битной версии
main Основной модуль (v4.6.15.0 — v4.7.0.0) Да
info Сбор информации о системе Да
pony Модуль для кражи сохраненных паролей Нет
klog Кейлоггер Да
http Модуль вебинжектов и formgrabber Да
vnc Удаленный доступ Да
socks Прокси Да
cam_recorder Запись видео с вебкамеры Да

Внушительный список функций позволяет различными способами воровать данные для доступа к системам онлайн-банкинга. Помимо этого, модули VNC и cam recorder позволяют злоумышленникам удаленно подключаться и совершать транзакции с зараженного ПК, а также записывать видео и звук, если на компьютере есть вебкамера и микрофон.

Инъекции

Главным оружием троянца Chthonic являются веб-инъекции: возможность вставить в код загружаемой в браузере страницы свой код и картинки. Благодаря этому злоумышленники не только получают введенные жертвой логин и пароль, но и могут выудить у нее номер телефона, одноразовые пароли и PIN-коды.

Например, для одного из японских банков троянец скрывает предупреждения банка и внедряет скрипт, позволяющий злоумышленникам проводить различные операции с аккаунтом жертвы:

Скриншот страницы интернет-банкинга до и после инжекта

Скриншот страницы интернет-банкинга до и после инжекта

Интересные  функции в инжектируемом скрипте

Интересные функции в инжектируемом скрипте

Также скрипт может показывать различные поддельные окна с целью получить нужную злоумышленникам информацию. Ниже пример окна, в котором пользователю сообщается о якобы имеющихся проблемах с идентификацией и предлагается ввести его TAN:

Поддельное окно для получения TAN

Поддельное окно для получения TAN

Анализируя атаки на клиентов российских банков, мы увидели нетипичный сценарий использования веб-инъекций. При заходе на страницу интернет-банка в браузере происходит полная подмена содержимого веб-страницы, а не ее частей, как при обычной атаке. С технической точки зрения троянец создает iframe c фишинговой копией сайта на все окно.

Вот как это выглядит в коде инъекции, которая заменяет всё между закрывающими тегами title и body на следующий текст:

Chthonic_13

И сам скрипт:

Chthonic_14

Кроме того, бот получает команду на установку backconnect-соединения при успешном инжекте:

Chthonic_15

Охват

Существует несколько ботнетов, имеющих разные конфигурационные файлы. Суммарно во всех известных нам ботсетях целями злоумышленников являются системы интернет-банкинга более чем 150 различных банков и 20 платежных систем, расположенных в 15 странах. Наибольшее внимание злоумышленников привлекли банки в Великобритании, Испании, США, России, Японии и Италии.

Распределение целей по странам

Распределение целей по странам

Стоит отметить, что несмотря на большое количество целей в списке, многие фрагменты кода, используемые троянцем для инъекции уже не работоспособны, т.к. банки сменили структуру своих страниц, а в некоторых случаях и сам домен. Кроме того, многие из этих фрагментов мы видели в конфигурационных файлах других ботов (например, Zeus V2) еще несколько лет назад.

Заключение

Мы видим, что троянец ZeuS не перестает активно развиваться, и в его новых реализациях используются передовые достижения создателей вредоносных программ. Во многом этому способствует утечка исходных кодов ZeuS. Таким образом, в мире создателей вредоносных программ он стал чем-то вроде фреймворка, который доступен всем желающим и легко может быть адаптирован под новые потребности злоумышленников. Новый троянец Chthonic представляет собой очередной этап эволюции ZeuS: он использует шифрование Zeus AES, виртуальную машину, подобную той, что была в ZeusVM и KINS, и загрузчик Andromeda.

Все это говорит о том, что мы, определенно, еще увидим новые варианты ZeuS.

Некоторые md5:

12b6717d2b16e24c5bd3c5f55e59528c
148563b1ca625bbdbb60673db2edb74a
6db7ecc5c90c90b6077d5aef59435e02
5a1b8c82479d003aa37dd7b1dd877493
2ab73f2d1966cd5820512fbe86986618
329d62ee33bec5c17c2eb5e701b28639
615e46c2ff5f81a11e73794efee96b38
77b42fb633369de146785c83270bb289
78575db9f70374f4bf2f5a401f70d8ac
97d010a31ba0ddc0febbd87190dc6078
b670dceef9bc29b49f7415c31ffb776a
bafcf2476bea39b338abfb524c451836
c15d1caccab5462e090555bcbec58bde
ceb9d5c20280579f316141569d2335ca
d0c017fef12095c45fe01b7773a48d13
d438a17c15ce6cec4b60d25dbc5421cd

Постинги на схожие темы 

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *