Описание вредоносного ПО

ZeuS-in-the-Mobile — факты и догадки

Вступление

Сегодня онлайн-банкинг для многих стал совершенно обычным делом. Все больше и больше банков стараются максимально расширить спектр услуг, которыми можно воспользоваться, авторизовавшись в системе онлайн-банкинга. Удобство, скорость — казалось бы, одни плюсы. Однако там, где деньги, пусть и не в виде банкнот, там всегда будут и мошенники.

Когда начались первые атаки на пользователей онлайн-банкинга, сказать сложно. Это и не так важно в данном случае. Мы имели дело с двумя видами атак: атаки с использованием методов «классического» фишинга и атаки с помощью разнообразных вредоносных программ. Изначально целью этих атак являлись средства идентификации пользователя в системе онлайн-банкинга. Проще говоря, логин и пароль. По мере совершенствования банками защитных механизмов, совершенствовались и вредоносные программы: киберпреступники научились обходить большинство существующих средств подтверждения операций в онлайн-банкинге.

На сегодняшний день самыми популярными средствами защиты в онлайн-банкинге являются коды авторизации операций (TAN, transaction authentication number) и цифровая подпись. В некоторых случаях коды авторизации операций могут присылаться банком в SMS-сообщении (mTAN, mobile transaction authentication number). До сентября 2010 года атак на мобильные коды авторизации операций (mTAN) зафиксировано не было. В 2009 году мелькали сообщения о том, что хакеры массово скупают телефоны Nokia 1100 за десятки тысяч долларов, но не все подряд, а лишь те, которые были произведены на фабрике в г. Бохум, Германия. Якобы именно эти телефоны обладали особенностями (или уязвимостями?), которые позволяли перехватывать все SMS-сообщения, в том числе содержащие mTAN’ы. Однако конкретные случаи таких перехватов зафиксированы не были.

Появившийся в конце сентября 2010 года троянец ZeuS для смартфонов (ZeuS-in-the-Mobile, или ZitMo) стал первой вредоносной программой, нацеленной на кражу мобильных кодов аутентификации банковских транзакций. Именно этой вредоносной программе посвящена данная статья.

Общая схема атаки ZitMo

Итак, мобильный ZeuS — Trojan-Spy.*.Zitmo — преследует единственную цель: незаметно и как можно быстрее украсть mTAN. В первую очередь следует отметить немаловажный факт: ZitMo работает в тесной связке с обычным ZeuS. «Обычным» ZeuS мы будем называть модификации троянца, нацеленные на платформу Win32, —Trojan-Spy.Win32.Zbot по классификации «Лаборатории Касперского».

Напомним, что ZeuS для персональных компьютеров, работающих под ОС Windows, известен достаточно давно. Первые модификации этого зловреда появились еще в 2007 году. О том, как работает данная вредоносная программа, можно почитать в статье моего коллеги Дмитрия Тараканова.

Что происходит в случае, если пользователь, на компьютере которого действует обычный ZeuS, собирается авторизоваться в системе онлайн-банкинга? Пользователь пытается зайти на страничку своего банка для авторизации в системе. Обычный ZeuS, отметив, что жертва переходит по интересующему его адресу, модифицирует веб-страницу в браузере таким образом, что персональные данные пользователя, которые он вводит при авторизации, передаются не в банк, а на сервер центра управления ботнетом ZeuS.


Общая схема работы ZeuS

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


Часть модифицированной мошенниками странички авторизации в системе онлайн-банкинга с
просьбой указать модель телефона и мобильный номер
(Источник: http://securityblog.s21sec.com/2010/09/zeus-mitmo-man-in-mobile-ii.html)

Пользователи, которые предоставили злоумышленникам информацию о мобильных телефонах, через некоторое время получали на указанные номера SMS с просьбой установить новый сертификат безопасности. Этот «сертификат безопасности» можно было скачать по ссылке, указанной в SMS-сообщении. На самом деле «сертификат» был мобильной версией троянца ZeuS. Если пользователь переходил по указанной ссылке, загружал и устанавливал это приложение, то его устройство заражалось ZitMo, основной функционал которого состоит в пересылке SMS-сообщений на номер телефона злоумышленников, указанный в теле троянца.

С той поры схема распространения мобильного ZeuS не изменилась: пользователи загружают его на свои мобильные устройства, полагая, что это легитимное ПО.

Злоумышленники, которым удалось украсть с помощью обычного ZeuS персональные данные пользователя для входа в систему онлайн-банкинга и заразить мобильное устройство жертвы троянцем ZitMo, могут преодолеть последний рубеж защиты систем онлайн-банкинга — mTAN. Используя логин/пароль пользователя они авторизуются в системе онлайн-банкинга и пытаются осуществить транзакцию (например, перевод денег со счета пользователя на свой счет). Для осуществления транзакции требуется дополнительное подтверждение с помощью кода авторизации, высылаемого банком в SMS-сообщении на телефон клиента. Банк, после запроса клиента на осуществление транзакции, отсылает на телефон SMS с кодом авторизации. Сообщение попадает на зараженный ZitMo телефон и сразу же пересылается на телефонный номер злоумышленника, который, используя украденный mTAN, подтверждает транзакцию. При этом клиент банка даже не подозревает о происходящем.

Общая схема атаки выглядит следующим образом:

  1. С помощью обычного ZeuS злоумышленник крадет данные, необходимые для доступа в онлайн-банкинг, и мобильный номер клиента банка.
  2. На мобильное устройство жертвы, у которой украли данные (см. п. 1), приходит SMS-сообщение с просьбой установить обновление сертификата безопасности или другое необходимое ПО. На самом деле, ссылка в сообщении ведет на мобильную версию ZeuS.
  3. Если пользователь установил это ПО, т.е. произошло заражение смартфона, то злоумышленник, используя украденные персональные данные пользователя, пытается осуществить транзакцию по переводу денег со счета пользователя, для авторизации которой необходимо ввести код mTAN.
  4. Банк отсылает SMS-сообщение с этим кодом на мобильное устройство клиента.
  5. ZitMo пересылает эту SMS с кодом авторизации на телефонный номер злоумышленника.
  6. Злоумышленник с помощью украденного mTAN подтверждает транзакцию.

Известные случаи атак

Впервые о ZitMo стало известно 25 сентября 2010 года. Тогда об этом зловреде написала испанская компания S21sec, занимающаяся вопросами защиты информации. Однако до сих пор неизвестно, клиенты какого банка оказались под ударом. Из всей имеющейся информации можно было сделать вывод о том, что, вероятнее всего, речь шла об одном из испанских банков.

После этой публикации антивирусные компании занялись собственными исследованиями. S21sec сообщили о том, что они обнаружили версии ZitMo для двух мобильных платформ: Symbian и Blackberry. Образцы вредоносной программы для Symbian были получены. Однако образец ZitMo для Blackberry достаточно долгое время получить не удавалось, и версия мобильного ZeuS для Blackberry существовала лишь в публикациях.

О второй атаке ZitMo 21 февраля 2011 года написал польский блоггер. Стали известны имена банков, клиенты которых подверглись атаке: это ING и mBank.


Модифицированная ZeuS страничка онлайн-банкинга ING
(Источник: http://niebezpiecznik.pl/post/zeus-straszy-polskie-banki/)

Расширился и список атакуемых платформ: теперь под ударом оказались и пользователи смартфонов под управлением ОС Windows Mobile.

На данный момент получили огласку только описанные выше случаи атак ZitMo. Были ли другие атаки, неизвестно. Если да, то, скорее всего, о них уже не появится информация в публичных источниках.

Платформы

К моменту написания статьи (октябрь 2011 года) различные модификации ZitMo обнаружены для следующих платформ: Symbian, Windows Mobile, Blackberry и Android.

Выше мы описали общую схему атаки и определили основную цель мобильной версии ZeuS — SMS-сообщения с mTAN. Функционал троянца ZitMo под различные платформы (кроме Android) идентичен, однако мы считаем необходимым более подробно рассмотреть версии для каждой мобильной ОС.

Для начала следует отметить одну очень важную и интересную деталь, опять же общую для всех версий ZitMo, кроме зловреда для платформы Android. Троянец, действующий на смартфоне, контролируется командами, которые приходят ему в SMS. Так что по сути ZeuS-in-the-Mobile является SMS-ботом, C&C которого — другой телефон, а точнее — телефонный номер.

К июлю 2011 года были известны следующие C&C-номера:

  • +44778148****
  • +44778148****
  • +44778148****
  • +44778620****
  • +44778148****

Видно, что все эти номера — британские. Является ли это косвенным свидетельством того, что авторы вредоносной программы находились на территории Великобритании во время атаки? Возможно.

Symbian

Версия ZitMo для Symbian оказалась первым образцом этого зловреда, который получили антивирусные компании (конец сентября 2010 года). Отдельным пунктом стоит отметить, что эта вредоносная программа была подписана легальной цифровой подписью (в настоящее время эта подпись отозвана).


Одна из цифровых подписей ZitMo

Как же работает ZitMo для Symbian?

Сразу же после заражения смартфона троянец отсылает SMS-сообщение с текстом ‘App installed OK’ на C&C-номер, таким образом уведомляя своего хозяина о том, что вредоносная программа установлена и способна принимать команды. После этого ZitMo создает базу данных NumbersDB.db, содержащую три таблицы: tbl_contact, tbl_phone_number, tbl_history.

После заражения ZitMo способен принимать в SMS-сообщениях с C&C-номера следующие команды:

  • ADD SENDER
  • REM SENDER
  • SET SENDER
  • SET ADMIN
  • BLOCK ON или OFF
  • ON или OFF

Команда ADD SENDER <телефонный_номер> — одна из самых важных для ZitMo, так как именно она дает старт пересылке SMS-сообщений с указанного в команде телефонного номера (номера, с которого банк присылает SMS с mTAN) на C&C-номер. Другими словами, эта команда активирует пересылку SMS-сообщений с кодами аутентификации банковских операций злоумышленникам.

Команда REM SENDER <телефонный_номер> — это прекращение пересылки SMS-сообщений с номера, указанного в команде, на C&C-номер.

Команда SET SENDER позволяет обновить номер телефона, SMS сообщения с которого будут пересылаться на C&C.

Команда SET ADMIN позволяет злоумышленникам изменить C&C-номер. Это единственная команда, которая может быть послана на зараженное мобильное устройство не с C&C-номера. Таким образом, у злоумышленников есть возможность менять C&C-номера, то есть командные центры.

Команды BLOCK ON/BLOCK OFF позволяют включить/отключить блокировку всех входящих и исходящих вызовов.

Команды ON/OFF позволяют включить/отключить ZitMo.

ZitMo не содержит никаких «лишних» команд и создан с единственной целью — пересылать SMS-сообщения с кодами аутентификации банковских операций.

Вторая версия ZitMo, которая была обнаружена во время второй известной атаки, несколько отличалась от первой, но несущественно. Во-первых, что наиболее понятно, изменился C&C-номер. Однако код страны (Великобритания) в этом номере остался прежним. Во-вторых, ZitMo стали интересовать не только входящие, но и исходящие SMS-сообщения, что на самом деле несколько странно, учитывая основную цель троянца (mTAN). И наконец в-третьих, сообщения с текстом ‘App installed OK’ стали отсылаться каждый раз при получении и успешной отработке команды SET ADMIN. В предыдущей версии сообщение посылалось только после установки троянца.

Windows Mobile

ZitMo для платформы Windows Mobile был обнаружен во время второй известной атаки троянца, вместе со второй версией зловреда под Symbian. Неудивительно, что C&C-номер в обоих зловредах (для Windows Mobile и Symbian) оказался одним и тем же.


Фрагмент кода Trojan-Spy.WinCE.Zitmo.a


Фрагмент кода Trojan-Spy.SymbOS.Zitmo.b

Никаких отличий в функционале в версии ZitMo для Windows Mobile от версии ZitMo для Symbian нет. Зловред способен принимать и исполнять те же самые команды.

Blackberry

История с версией ZitMo для платформы Blackberry получилась самой запутанной и загадочной. О том, что зловред существует и для этой операционной системы, говорилось в том же блоге, в котором впервые сообщалось об обнаружении ZitMo. Однако на протяжении пяти месяцев у антивирусных компаний не было файла ZitMo под Blackberry. Возникали даже предположения, что версии под Blackberry не существует. В конце февраля 2011, через некоторое время после второй атаки ZitMo, нам удалось обнаружить файл sertificate.cod, который и оказался тем самым ZeuS-in-the-Mobile для Blackberry.


Фрагмент файла sertificate.cod

Беглый взгляд на файл показал, что в плане команд в этой версии ZitMo никаких значимых отличий от остальных версий нет. Более же детальный анализ выявил следующее.

Основные методы, используемые в работе троянца, хранятся в файле OptionDB.java. Среди названий методов можно встретить такое, как getAdminNumber, которое используется, например, в следующей процедуре подтверждения установки троянца:


Часть процедуры подтверждения установки троянца

Среди методов можно встретить и логические. Например, значение isForwardSms определяет, будут ли пересылаться SMS-сообщения; значение isBlockAllCalls определяет, будут ли блокироваться телефонные вызовы.

Основные процедуры, которые необходимы для работы вредоносной программы, можно найти в файле SmsListener.java. Среди них есть, например, процедура проверки номера отправителя входящих SMS-сообщений, которая определяет, будет ли входящее сообщение пересылаться злоумышленникам.

Android

ZitMo для Android был обнаружен самым последним, в начале июля 2011 года. Полученный образец вредоносной программы кардинально отличался от всех предыдущих версий ZeuS-in-the-Mobile. Функционал зловреда был настолько примитивен, что могло показаться, что данный APK-файл вообще не имеет отношения к ZitMo. Однако исследования подтвердили: да, это ZeuS-in-the-Mobile для Android.

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

Первые атаки с использованием ZitMo для Android начались в первой половине июня. Схема распространения осталась прежней. В одном из конфигурационных файлов Trojan-Spy.Win32.Zbot было обнаружено следующее сообщение:


«Приветственное» сообщение ZeuS

Выбрав «Android» и нажав «Continue» («Продолжить»), пользователь окажется на следующей странице, где ему «настоятельно рекомендуют» загрузить «специальную программу, которая защитит от мошенничества»:


Рекомендация загрузить «утилиту для защиты от мошенничества»

Если пользователь выберет не «Android», а любую другую операционную систему, то ничего не произойдет, а пользователь получит такое сообщение: «Операционная система вашего мобильного устройства не требует дополнительной защиты».


Сообщение о ненужности дополнительных средств защиты в случае выбора ОС, отличной от Android

Другими словами, эта конкретная версия ZitMo была ориентирована только на устройства с ОС Android.

Загрузив и установив под видом легитимного ПО вредоносное приложение, пользователь получает на свой смартфон вредоносную программу, которая способна «всего лишь» пересылать все входящие SMS-сообщения (в том числе содержащие mTAN) на удаленный сервер http://******rifty.com/security.jsp в следующем формате:

f0={SMS_sender_number}&b0={SMS_text}&pid={infected_device_ID}

Никаких дополнительных функций, в том числе C&C-номеров и SMS-команд, в ZitMo для Android нет! Однако связь с обычным ZeuS одназначно позволяет говорить именно о ZeuS-in-the-Mobile для Android.

Стоить отметить также, что вредоносная программа некоторое время находилась на Android Market. Загружена она была туда 18 июня, точная дата удаления неизвестна. С Android Market ее загрузили менее 50 раз.

Что дальше?

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

  • Узкая «специализация» троянца: пересылка на номер злоумышленников (или на сервер в случае с версией ZitMo под Android) входящих сообщений с mTAN для подтверждения финансовых операций, осуществляемых со взломанных банковских аккаунтов.
  • Кроссплатформенность. Обнаружены версии ZitMo для Symbian, Windows Mobile, Blackberry и Android.
  • Работа «в паре». Если рассматривать ZitMo отдельно, то есть без существующей связи с обычным ZeuS, то он является обычной шпионской программой, способной пересылать SMS-сообщения. Однако его использование в паре с «классическим» ZeuS позволило злоумышленникам преодолеть рубеж защиты банковских транзакций mTAN.

В будущем атаки с помощью ZitMo (или схожей по функционалу вредоносной программы), так или иначе нацеленные на кражу mTAN (а может быть, и другой секретной информации, которая передается в SMS), продолжатся, однако, вероятнее всего, они будут носить точечный характер с небольшим числом жертв.

ZeuS-in-the-Mobile — факты и догадки

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

 

Отчеты

CloudSorcerer: новая APT-угроза, нацеленная на российские государственные организации

«Лаборатория Касперского» обнаружила новую APT-угрозу CloudSorcerer, нацеленную на российские государственные организации и использующую облачные службы в качестве командных серверов аналогично APT CloudWizard.

StripedFly: двуликий и незаметный

Разбираем фреймворк StripedFly для целевых атак, использовавший собственную версию эксплойта EternalBlue и успешно прикрывавшийся майнером.

Подпишитесь на еженедельную рассылку

Самая актуальная аналитика – в вашем почтовом ящике