Stan zagrożeń w internecie znajduje się obecnie na poziomie standardowym. Nie występują duże epidemie a eksperci z Kaspersky Lab nie zanotowali żadnych poważnych incydentów związanych z bezpieczeństwem. Poziom zagrożenia: 1

ZeuS-in-the-Mobile - fakty i teorie


Denis Maslennikow
Ekspert z Kaspersky Lab

Wstęp

Bankowość internetowa jest obecnie codziennością dla większości osób. Coraz więcej banków próbuje zwiększyć zakres usług dostępnych dla klientów online. Wydawać by się mogło, że przy wygodzie i szybkości, jaką oferuje bankowość elektroniczna, nie będzie już żadnych minusów. Niestety, gdy w grę wchodzą pieniądze - w jakiejkolwiek postaci - tam zazwyczaj pojawiają się oszuści i przestępcy.

Trudno jest wskazać dokładną datę pierwszego ataku na klientów bankowości internetowej, ale w tej sytuacji jest to mało istotne. Jak do tej pory spotkaliśmy się z dwoma typami ataków: ataki z wykorzystaniem klasycznych metod phishingowych oraz ataki z użyciem różnych szkodliwych programów. Początkowo ataki te miały na celu identyfikację użytkowników systemów bankowości elektronicznej, czyli gromadziły nazwy użytkowników i hasła. Na wzmocnione przez banki mechanizmy bezpieczeństwa cyberprzestępcy odpowiedzieli udoskonaleniem szkodliwych programów. Nauczyli się oni również omijać większość procesów potwierdzania transakcji.

Obecnie najpopularniejszą metodą zabezpieczającą usługi bankowości elektronicznej są kody TAN (Transaction Authentication Number) z podpisami cyfrowymi. W niektórych przypadkach banki wysyłają kody TAN w wiadomościach tekstowych (kody te zwane są mTAN lub kody do mobilnej autoryzacji transakcji). Do września 2010 roku nie zarejestrowano przypadków ataków z wykorzystaniem kodów mTAN. W 2009 roku krążyły plotki, że hakerzy wykupują telefony Nokia 1100s i to tylko te, które zostały wyprodukowane w fabryce w Bochum (Niemcy). Podobno te konkretne telefony miały specjalne funkcje, które umożliwiały przechwytywanie wszystkich wiadomości tekstowych, łącznie z tymi zawierającymi kody mTAN. Nigdy nie zostało to potwierdzone.

Gdy we wrześniu 2010 roku pojawił się trojan ZeuS na platformy mobilne (zwany ZeuS-in-the-Mobile lub ZitMo), stał się on pierwszym szkodliwym programem zaprojektowanym do wykradania kodów mTAN. Niniejszy artykuł szczegółowo opisuje trojana ZitMo.

Sposób działania trojana ZitMo

Mobilny ZeuS (Trojan-Spy.*.Zitmo) został zaprojektowany w jednym konkretnym celu: do szybkiej kradzieży kodów mTAN w sposób niezauważalny dla użytkownika mobilnego. Pierwszą istotną sprawą, o jakiej należy wspomnieć, jest fakt, że ZitMo działa we współpracy z tradycyjnym trojanem ZeuS. Poprzez tradycyjnego trojana ZeuS rozumiemy modyfikację trojana, którego celem jest platforma Win32 i który został sklasyfikowany przez Kaspersky Lab jako Trojan-Spy.Win32.Zbot.

Czytelnicy powinni pamiętać, że w Sieci od jakiegoś czasu krąży trojan ZeuS atakujący komputery działające pod kontrolą systemu Windows. Jego pierwsza modyfikacja pojawiła się w 2007 roku. Aby dowiedzieć się więcej o ZeuSie, zapoznaj się z artykułem Dmitrija Tarakanowa - http://www.viruslist.pl/analysis.html?newsid=599.

Co się stanie, gdy użytkownik, którego komputer został zainfekowany trojanem ZeuS, chce załogować się do systemu bankowości internetowej? Użytkownik otwiera stronę internetową swojego banku i loguje się do systemu. Komputerowa wersja ZeuSa rejestruje łączenie się użytkownika ze stroną instytucji finansowej i modyfikuje tę stronę w przeglądarce w ten sposób, że wprowadzone dane osobiste służące do autoryzacji nie są wysyłane do banku, ale do centrum zarządzania botnetem ZeuSa.


W jaki sposób działa ZeuS?

We wrześniu 2010 roku cyberprzestępcy dodali nową funkcję do ZeuSa infekującego komputery. Sposób działania ZeuSa praktycznie nie zmienił się od tego czasu - obecnie zmodyfikowana strona autoryzacji żąda dodatkowo wprowadzenia danych dotyczących urządzenia mobilnego (marki, modelu i numeru telefonu). Dane te są rzekomo potrzebne do aktualizacji certyfikatu.

 
Fragment strony instytucji finansowej, zmodyfikowanej przez hakera.
Strona ta żąda od użytkownika wprowadzenia modelu i numeru jego telefonu. (Źródło: http://securityblog.s21sec.com/2010/09/zeus-mitmo-man-in-mobile-ii.html)

Wcześniej czy później użytkownicy, którzy podali informacje o swoich telefonach komórkowych, otrzymają wiadomość tekstową z prośbą o instalację nowego certyfikatu bezpieczeństwa. Domniemany ,,certyfikat bezpieczeństwa” można pobrać, klikając odnośnik znajdujący się w wiadomości. Jednakże w rzeczywistości ,,certyfikat” ten jest mobilną wersją trojana ZeuS. Jeżeli użytkownik kliknął odsyłacz, a następnie pobrał i zainstalował aplikację, wówczas jego telefon został zainfekowany trojanem ZitMo, którego główną funkcją jest wysyłanie wiadomości tekstowych na telefon hakera.

Trojan ZitMo jest wciąż rozprzestrzeniany w ten sam sposób: użytkownicy pobierają go na swoje urządzenia mobilne sądząc, że jest to licencjonowane oprogramowanie.

Cyberprzestępcy, którzy z powodzeniem używają ZeuSa infekującego komputery do kradzieży danych osobistych użytkownika związanych z bankowością online, a także wykorzystują trojana ZitMo do infekowania telefonów swoich ofiar, w końcu pokonali także ostatnią barierę systemów zabezpieczających transakcje internetowe - kody mTAN. Wprowadzając hasła i loginy użytkowników, mogą oni uzyskać dostęp do ich kont bankowych i przeprowadzać transakcje (przelewać pieniądze z kont użytkowników na swoje konta). Transakcje te wymagają dodatkowej autoryzacji przy użyciu kodu wysyłanego przez bank w wiadomości tekstowej na telefony klientów. Po potwierdzeniu transakcji bank wysyła kod autoryzacyjny. Kod zostaje wysłany na urządzenie zainfekowane trojanem ZitMo, który natychmiast przesyła go na telefon cyberprzestępcy, a ten z kolei wykorzystuje skradziony kod mTAN do autoryzacji transakcji. Ofiara nie jest niczego świadoma.

Schemat ataku jest następujący:

  1. Cyberprzestępcy wykorzystują ZeuSa infekującego komputery do wykradania danych, niezbędnych do uzyskania dostępu do internetowych kont bankowych, oraz numerów telefonów komórkowych.
  2. Na telefon ofiary (patrz punkt 1) przychodzi wiadomość tekstowa z żądaniem zainstalowania uaktualnionego certyfikatu bezpieczeństwa lub innego niezbędnego oprogramowania. Jednak odnośnik w wiadomości tak naprawdę prowadzi do mobilnej wersji ZeuSa.
  3. Instalując to oprogramowanie, ofiara infekuje swój telefon, czym umożliwia cyberprzestępcy wykradzenie danych osobistych i podjęcie próby przeprowadzenia transakcji finansowej. Pomimo tego atakujący wciąż potrzebuje kodu mTAN do autoryzacji transakcji.
  4. Bank wysyła na telefon klienta wiadomość zawierającą kod mTAN.
  5. ZitMo przesyła tę wiadomość na telefon złodzieja.
  6. Złodziej używa zdobytego kodu mTAN do autoryzacji transakcji.

Znane ataki

ZitMo został po raz pierwszy wykryty 25 września 2010 roku. W tym czasie hiszpańska firma S21sec zajmująca się bezpieczeństwem danych opisała to zagrożenie na swoim blogu (zobacz: http://securityblog.s21sec.com/2010/09/zeus-mitmo-man-in-mobile-i.html). Niemniej jednak do końca nie było wiadomo, które banki są celem ataków. Wszystkie dostępne dane każą nam wierzyć, że ofiarami byli klienci jednego z hiszpańskich banków.

Po opublikowaniu tego artykułu firmy antywirusowe rozpoczęły swoje własne badania. Pracownicy z S21sec poinformowali, że wykryli ZitMo na dwóch różnych platformach mobilnych: Symbian i BlackBerry. Próbki szkodliwych programów przeznaczonych na Symbiana zostały wykryte bardzo szybko, natomiast mobilna wersja ZeuSa na BlackBerry długo pozostawała tylko w sferze domysłów.

21 lutego 2011 r. na łamach polskiego serwisu Niebezpiecznik.pl pojawiła się informacja o drugim ataku ZitMo (zobacz: http://niebezpiecznik.pl/post/zeus-straszy-polskie-banki/). W końcu wyszły też na jaw nazwy banków, których klienci byli celem ataków: ING i mBank.

 
Modyfikacja polskiej strony banku ING wykonana przez ZeuSa
(Źródło: http://niebezpiecznik.pl/post/zeus-straszy-polskie-banki/)

Lista platform atakowanych przez ZeuSa powiększyła się o smartfony działające pod kontrolą systemu Windows Mobile.

Na tym etapie znany jest tylko jeden atak ZitMo, który został opisany powyżej. Nie wiadomo, czy inne ataki miały miejsce, a nawet jeżeli, to nie mówi się o nich głośno.

Platformy

W momencie publikacji niniejszego artykułu (październik 2011) znane są różne modyfikacje trojana ZitMo na następujące platformy: Symbian, Windows Mobile, BlackBerry i Android.

Powyżej opisaliśmy ogólną sekwencję zdarzeń występującą podczas ataków oraz główny cel mobilnej wersji ZeuSa, czyli przechwytywanie wiadomości tekstowych z kodami mTAN. Funkcje wszystkich wersji ZitMo na różne platformy (za wyjątkiem Androida) są takie same, ale mimo to przyjrzymy się bliżej każdej wersji z osobna.

Na początek zwróćmy uwagę na jeden istotny i interesujący szczegół dotyczący wszystkich wersji ZitMo (za wyjątkiem wersji przeznaczonej na Androida). Trojan działający na smartfonie jest kontrolowany przez polecenia otrzymywane w wiadomościach tekstowych, a więc ZitMo jest botem tekstowym, dla którego centrum zarządzania stanowi inny telefon, a dokładniej, numer telefonu.

Do lipca 2011 roku zidentyfikowano następujące numery centrów zarządzania:

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

Wszystkie te numery są brytyjskimi numerami telefonów. Czy jest to bezpośredni dowód na to, że autorzy szkodliwego programu znajdowali się w Wielkiej Brytanii podczas ataku? Całkiem możliwe.

Symbian

Wersja ZitMo na Symbiana była pierwszą próbką tego zagrożenia zdobytą przez firmy antywirusowe (końcówka września 2010 r.). Inną kwestią wartą wspomnienia jest fakt, że ten szkodliwy program posiada legalny podpis cyfrowy.


Jeden z podpisów cyfrowych trojana ZitMo

Jak więc działa ZitMo przeznaczony na Symbiana?

Natychmiast po zainfekowaniu smartfonu trojan wysyła wiadomość tekstową ,,App installed OK.” (,,Aplikacja została zainstalowana pomyślnie”) na numer centrum kontroli, informując cyberprzestępcę o zainstalowaniu programu i jego gotowości do przyjmowania poleceń. Następnie ZitMo tworzy bazę danych o nazwie NumbersDB.db z trzema tabelami: tbl_contact, tbl_phone i tbl_history.

Po zainfekowaniu ZitMo może otrzymywać wiadomości z numeru centrum kontroli z następującymi poleceniami:

  • ADD SENDER
  • REM SENDER
  • SET SENDER
  • SET ADMIN
  • BLOCK ON or OFF
  • ON or OFF

Polecenie ADD SENDER jest jednym z najbardziej krytycznych, gdyż nakazuje ZitMo przesyłanie wiadomości z określonych numerów telefonów (numerów, których banki używają do wysyłania kodów mTAN w wiadomościach tekstowych) na numer centrum kontroli. Innymi słowy, polecenie to aktywuje opcję przesyłania dalej wiadomości tekstowych zawierających kody autoryzacji niezbędne do przeprowadzania transakcji przez cyberprzestępców.

Polecenie REM SENDER dezaktywuje opcję przesyłania wiadomości tekstowych z numeru określonego w poleceniu na numer centrum kontroli.

Polecenie SET SENDER daje cyberprzestępcy możliwość aktualizacji numeru telefonu, z którego wiadomości są przesyłane na numer centrum kontroli.

Polecenie SET ADMIN umożliwia cyberprzestępcy zmianę numeru centrum kontroli. Jest to jedyne polecenie, które może zostać wysłane na zainfekowane urządzenie mobilne z numeru telefonu innego niż numer centrum kontroli, umożliwiając cyberprzestępcy dokonanie odpowiedniej zmiany.

Polecenie BLOCK ON/BLOCK OFF umożliwia zablokowanie lub odblokowanie wszystkich połączeń przychodzących i wychodzących./p>

Polecenie ON/OFF daje możliwość włączenia i wyłączenia programu ZitMo.

ZitMo nie zawiera żadnych dodatkowych poleceń i został zaprojektowany tylko w jednym celu: do przesyłania wiadomości tekstowych z kodami mTAN.

Druga wersja ZitMo, wykryta podczas drugiego ataku, różni się nieznacznie od omówionej. Możemy mówić tu o trzech różnicach. Pierwszą z nich jest inny numer centrum kontroli. Jednak kod kraju (Wielka Brytania) w tym numerze pozostaje taki sam. Po drugie, ZitMo zaczął skanować oba kierunki przesyłania wiadomości – wychodzący i przychodzący, co jest trochę dziwne, zważywszy na to, że głównym celem trojana jest wykradanie kodów mTAN. Trzecia różnica dotyczy wiadomości ,,App installed OK.”, która jest wysyłana za każdym razem, gdy polecenie SET ADMIN zostało pomyślnie odebrane i wykonane. Wcześniej wiadomość ta była wysyłana tylko po zainstalowaniu trojana.

Windows Mobile

ZitMo na Windows Mobile został wykryty podczas drugiego znanego ataku trojana, który był także skierowany przeciwko użytkownikom Symbiana. Nie dziwi więc, że numer centrum sterowania dla wersji na Windows Mobile i Symbiana był taki sam.

 
Fragment kodu szkodliwego programu Trojan-Spy.WinCE.Zitmo.a

 
Fragment kodu szkodliwego programu Trojan-Spy.SymbOS.Zitmo.b

Nie ma żadnych różnic w funkcjach pomiędzy wersją ZitMo na Windows Mobile a wersją na Symbiana. Trojan może odbierać i wykonywać te same polecenia na obu platformach.

BlackBerry

Wersja ZitMo na BlackBerry okazała się być bardziej skomplikowana i zagadkowa. Trojan został po raz pierwszy zidentyfikowany na tym samym blogu, który ogłosił pierwsze potwierdzone pojawienie się zagrożenia ZitMo. Jednakże po pięciu miesiącach badań firmy antywirusowe nie zdołały wykryć żadnych plików skojarzonych z ZitMo na BlackBerry, a niektórzy zaczęli spekulować, że tak naprawdę nie było żadnej aktywnej wersji ZitMo na tej platformie. Krótko po drugim ataku ZitMo, pod koniec lutego 2011 r., firma Kaspersky Lab w końcu wykryła plik sertificate.cod, który okazał się nieuchwytnym trojanem ZueS-in-the-Mobile na BlackBerry.

 
Fragment pliku sertificate.cod

Szybkie spojrzenie na plik pozwala zauważyć, że w kontekście poleceń nie ma żadnych różnić między tą wersją trojana ZitMo a innymi jego wersjami. Bardziej szczegółowa analiza wydobyła na światło dzienne następujące fakty.

Główne metody wykorzystywane przez tego trojana są przechowywane w pliku OptionDB.java. Wśród nazw metod można znaleźć getAdminNumber, która jest używana między innymi w następującym procesie potwierdzenia instalacji trojana:

 
Fragment procesu potwierdzenia instalacji trojana

Można również wyróżnić metody logiczne, takie jak isForwardSms, która determinuje, czy wiadomość tekstowa zostanie przesłana dalej, oraz isBlockAllCalls, która określa, czy połączenia będą blokowane.

Główne procesy wymagane do działania tego programu można znaleźć w pliku SmsListener.java. Zaliczają się do nich, na przykład, proces weryfikacji numerów w celu identyfikacji nadawców przychodzących wiadomości tekstowych, który następnie determinuje, jakie wiadomości mają zostać przesłane do cyberprzestępcy.

Android

Wersja ZitMo na Androida została wykryta jako ostatnia, na początku lipca 2011 r. Wykryta próbka znacznie różni się od wszystkich wcześniejszych wersji trojana. Funkcje tego zagrożenia są tak prymitywne, że aż nie chce się wierzyć, że plik APK jest powiązany z ZitMo. Niemniej jednak, analiza potwierdziła, że jest to faktycznie ZeuS-in-the-Mobile na Androida.

Pisaliśmy o sposobie działania ZeuSa. W skrócie, gdy użytkownik próbuje wejść na stronę swojego banku i zalogować się do swojego konta, zobaczy stronę zmodyfikowaną przez ZeuSa, która żąda wprowadzenia danych. Dane te są następnie wysyłane na serwer cyberprzestępcy, a nie do banku.

Ataki z użyciem trojana ZitMo na Androida rozpoczęły się w pierwszych dwóch tygodniach czerwca. Taktyki używane do rozprzestrzeniania zagrożenia były takie same. W jednym z plików konfiguracyjnych zagrożenia Trojan-Spy.Win32.Zbot znaleziono następującą wiadomość:

 
"Strona powitalna" ZeuSa

Gdy użytkownik wybierze "Android" i kliknie "Continue" (Kontynuuj), zostaje przeniesiony na stronę, na której szczególnie zalecane jest pobranie specjalnego oprogramowania chroniącego przed oszustwami internetowymi.

 
Zalecenie pobrania narzędzia chroniącego przed oszustwami internetowymi

Jeżeli użytkownik wybierze system operacyjny inny niż Android, wówczas nic się nie stanie. Wyświetlony zostanie następujący komunikat:

 
Wiadomość dla użytkowników systemów innych niż Android, która informuje, że nie jest potrzebna dodatkowa ochrona

Innymi słowy, ta specyficzna wersja ZitMo celuje wyłącznie w platformę Android.

Po pobraniu i zainstalowaniu rzekomo licencjonowanego oprogramowania, użytkownik otrzyma szkodliwy program, którego jedynym celem jest przesyłanie wszystkich przychodzących wiadomości tekstowych (łącznie z tymi zawierającymi kody mTAN) na zdalny serwer (http://******rifty.com/security.jsp) w następującym formacie:

f0={ numer_nadawcy_SMS-a}&b0={ treść_SMS-a}&pid={ numer ID_zainfekowanego_urządzenia}

Nie ma żadnych innych dodatkowych funkcji — nawet żadnego numeru centrum kontroli czy wiadomości tekstowej z poleceniem dla ZitMo na Androida! Jednak ZitMo na Androida jest z pewnością powiązany z ZeuSem na komputery.

Należy wspomnieć, że szkodliwy program był przez jakiś czas w Android Markecie. Został tam przesłany 18 czerwca, a data jego usunięcia nie jest znana. Trojan został pobrany z Android Marketu mniej niż 50 razy.

Co dalej?

Trojan ZitMo, który współpracuje z ZeuSem infekującym komputery, jest ostatnio prawdopodobnie jednym z najbardziej złożonych zagrożeń mobilnych, ponieważ:

  • Jest to trojan z bardzo wąską specjalizacją: przesyła przychodzące wiadomości tekstowe zawierające kody mTAN do cyberprzestępców lub na serwer (w przypadku ZitMo na Androida), aby cyberprzestępcy mogli przeprowadzać transakcje finansowe z użyciem przejętych kont bankowych..
  • Istnieją wersje na różne platformy mobilne. Wykryte zostały wersje ZitMo na Symbiana, Windows Mobile, BlackBerry i Androida.
  • Współpracuje z ZeuSem jako ,,zespół”. Jeżeli spojrzymy na ZitMo indywidualnie, tzn. bez żadnego związku z ZeuSem atakującym komputery, wówczas staje się on zwykłym programem szpiegującym, zdolnym do przesyłania wiadomości tekstowych. Jednak, jeżeli jest on używany w połączeniu z klasycznym trojanem ZeuS na komputery, wówczas cyberprzestępcy mogą pokonać ostatnią barierę procesu autoryzacji transakcji internetowej, korzystając ze skradzionych kodów mTAN.

W przyszłości ataki wykorzystujące trojana ZitMo (lub inny szkodliwy program z podobnymi funkcjami), który został zaprojektowany do kradzieży kodów mTAN (lub być może także innych poufnych informacji wysyłanych w wiadomościach tekstowych), będą wciąż mieć miejsce, chociaż prawdopodobnie będą one skierowane w mniejszą grupę ofiar.

Źródło:
Kaspersky Lab