Pull to refresh
0

Банковский троян Caphaw атакует европейские банки с использованием плагина веб-инжектов

Reading time 5 min
Views 13K
Банковское вредоносное ПО Win32/Caphaw (также известен как Shylock) использовался злоумышленниками при осуществлении атак на крупные европейские банки, которые продолжались более года. Эта угроза начала распространяться с осени 2011 г. Наш коллега Александр Матросов осуществил детальный анализ этого банковского трояна, и мы хотим представить наиболее интересные находки, сделанные в процессе этого анализа. Win32/Caphaw отличает от других подобных угроз тот факт, что это один из немногих троянов, который может автоматически похитить деньги с банковского счета, когда пользователь активно работает с этим счетом.



География распространения показывает, что Win32/Caphaw преобладает в Англии, Италии, Дании и Турции. Согласно нашей статистике ESET Virus Radar, периодом времени, на который приходится наибольшая активность этого трояна, является декабрь 2012 г. На следующем скриншоте приводится география распространения Win32/Caphaw за последнюю неделю (на момент исследования).


Рис. География распространенности Caphaw.

Бот

Win32/Caphaw обладает возможностями типичного банковского вредоносного ПО, а также имеет возможности по проверке среды, в которой его пытаются запустить. Такие проверки, очевидно, направлены на то, чтобы не допустить запуска дроппера в системе, предназначенной для автоматического анализа семплов. Мы обнаружили, что Caphaw внедряет свой код во все запущенные процессы, и имеет многопоточную архитектуру для исполнения задач, присылаемых от C&C. Этот код может использовать механизм межпроцессного взаимодействия (IPC) с использованием именованных каналов.


Рис. Создание потока, в котором будет осуществляться IPC взаимодействие.

Caphaw устанавливает множество перехватов для системных функций. Особенно интересной является функция-перехват для advapi32!InitiateSystemShutdownEx. Она может контролировать процесс перезагрузки и выключения системы, а также дает возможность вредоносному коду произвести свою повторную установку в системе.


Рис. Перехват функции advapi32!InitiateSystemShutdownEx. Производится повторная установка троянской программы в систему.

Все строки в теле Caphaw зашифрованы с использованием простого алгоритма.


Рис. Код расшифровки строк.

Caphaw осуществляет проверку окружения ОС на предмет того, пытаются ли его запустить в среде виртуальной машины (VMware, VirtualBox и VirtualPC). Вредоносный код проверяет имена запущенных процессов и драйверов в системе. Проверка имен производится с помощью заранее подсчитанного хэша.


Рис. Функция, которая рассчитывает хэш строки при проверке имен.

Например, проверка на окружение VMware выглядит следующим образом.


Рис. Код проверки на предмет окружения VMware; по заранее подсчитанному хэшу проверяются имена запущенных процессов и драйверов

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


Рис. Ссылки, ведущие к установке дропперов Caphaw.

Формат таких URL:

hxxps://[random subdomain].[domain]/[DIR]/[DIR-random string]/[dropper file]?r=[random number]

Для генерации случайных чисел Caphaw использует такой алгоритм:


Рис. Алгоритм генерации случайных чисел в Caphaw.

Caphaw использует C&C для загрузки дополнительных модулей, веб-инжектов, конфигурационных файлов и получения инструкций. При этом ссылки URL для работы с C&C имеют вид:


Рис. Ссылки URL, которые Caphaw использует для взаимодействия с C&C.

Такие URL, которые используются для обращения к C&C, формируются по специальному шаблону.

hxxp://[URL format]/[key]&id=[bot id]&inst=[master or slave]&net[botnet id] &cmd=cfg

Ответ от C&C сервера имеет вид:



В таком случае также используется специальный шаблон:

hxxp:// [random subdomain].[domain]/[DIR]/[file_name.jpg]?r=[random number]

Конфигурационный файл бота зашифрован с использованием RC4 и Base64. Схема шифрования имеет вид: Base64(RC4(cfg_data)). После расшифровки конфигурационный файл имеет вид:


Рис. Конфигурационный файл после расшифровки.

Плагины

Win32/Caphaw имеет возможности по загрузке и исполнению дополнительных плагинов. Плагины, которые мы наблюдали за время отслеживания ботнета, приведены в таблице.



Плагин, который используется для распространения Caphaw через Skype, был описан нашими коллегами из CSIS. Еще один интересный плагин – это модуль MBR-буткита (определяется ESET как Win32/Wolcape.A), который загружается на зараженные машины по специальному запросу от C&C. Буткит основан на модификации MBR и обеспечивает загрузку неподписанного драйвера. Функция-перехват для прерывания int13 (прерывание используется для чтения секторов с жесткого диска) для этого буткита выглядит следующим образом:


Рис. Перехват на int13.

Расположение вредоносного драйвера:



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


Рис. Граф работы функции, которая загружает драйвер в систему.

Драйвер перехватывает типичные системные функции в ядре для сокрытия файлов и процессов. Наиболее интересные из них перехватывают функции у объектов \Driver\nsiproxy и \Device\Tcp для получения контроля за проходящим сетевым трафиком. Конфигурационный файл буткита зашифрован по аналогичной схеме, как и в случае с уже вышеописанным. В нем также используется похожая XML структура:


Рис. Конфигурационный файл буткита.

Веб-инжекты и схема похищения средств

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



Ниже приведен список банков из последних конфигурационных файлов веб-инжектов:



Одной из наиболее интересных деталей в коде, внедряемом в веб-страницу при посещении онлайн-банка, является подстановка всех телефонных номеров на поддельные номера, принадлежащие злоумышленникам (Merchant of Malice: Trojan.Shylock Injects Phone Numbers into Online Banking Websites). Эта подстановка основана на специальной конфигурации веб-инжектов и имеет уникальную структуру для каждого отдельно взятого банка.



Заключение

Win32/Caphaw представляет из себя интересное семейство банковских троянов. Этот вредоносный код является одним из немногих, кто имеет функционал по автоматическому похищению денежных средств, когда пользователь работает с его банковским аккаунтом. Фактически, зараженному пользователю очень сложно распознать факт кражи денежных средств, т. к. он видит поддельные формы на странице онлайн-банкинга. Аналогичная функциональность отслеживалась нами ранее в таких семействах банковских троянов, как Carberp (Carberp Gang Evolution), Gataka (Win32/Gataka banking Trojan – Detailed analysis), Win32/Spy.Ranbyus (Win32/Spy.Ranbyus нацелен на модификацию Java-кода систем удаленного банкинга Украины) и Tinba.
Tags:
Hubs:
+24
Comments 23
Comments Comments 23

Articles

Information

Website
www.esetnod32.ru
Registered
Founded
Employees
1,001–5,000 employees
Location
Словакия