Zagrożenie w zwykłym pliku

Obiekty Adobe Flash od dawna atakują komputery z nieaktualnym oprogramowaniem. Nie zawsze ataki są przeprowadzane z internetu. Korzysta się też z obiektów osadzanych w zwykłych plikach.

Najprostszym sposobem infekcji jest wykorzystanie podatności w oprogramowaniu, które jest często instalowane. Takim programem jest wtyczka Adobe Flash. Początkowo podatności w niej (i w czytnikach PDF) wykorzystywano w prosty sposób - umieszczano eksploita na stronie, którą odwiedzała ofiara. Odpowiedzią producentów antywirusów była technologia oceny reputacji strony www. Metoda ta wykazała się tak dużą skutecznością, że cyberprzestępcy rozpoczęli infekowanie różnych stron www o dobrej reputacji w celu szybkiej infekcji, zanim oprogramowanie zdąży zareagować.

Kolejnym krokiem było umieszczanie eksploitów w obiektach tak, by skanujący pobierany plik nie rozpoznał sygnatur złośliwego oprogramowania. Do tego celu świetnie nadają się pliki Flash i PDF, szczególnie jeśli obiekt jest osadzony w dokumencie aplikacji takiej jak Microsoft Word czy Microsoft Excel. Kod złośliwego oprogramowania ulega aktywacji dopiero po otwarciu dokumentu, a następnie odbywa się instalacja właściwego, złośliwego oprogramowania pobieranego z internetu za pomocą powszechnie znanej techniki drive-by. Zawarty w dokumencie fragment kodu nie jest finalnym koniem trojańskim - to jedynie jego instalator.

Przykładem infekcji wykorzystującej wszystkie omawiane sposoby był atak przeciw firmie RSA. Specjalnie przygotowaną wiadomość e-mail miał wychwycić system antyspamowy, ale w załączonym arkuszu Excela znajdował się obiekt Adobe Flash, który wykorzystywał kilka podatności dnia zerowego, a następnie doprowadził do przełamania zabezpieczeń i przejęcia poufnych informacji.

Od dokumentu do trojana

Od maja 2012 r. cyberprzestępcy osadzają plik Flash w dokumencie programu Microsoft Word w celu zainfekowania komputerów swoich ofiar koniem trojańskim Backdoor.Briba. Aby utrudnić jego wykrycie przez antywirusy, kod jest zaszyfrowany za pomocą prostego algorytmu (XOR z kluczem 256 bajtów). Otwarcie dokumentu skutkuje deszyfrowaniem i uruchomieniem obiektu. Do obecnych infekcji plik SWF wykorzystuje podatność oznaczoną jako CVE-2012-1535, uruchamiając złośliwy kod. Następnie wyświetlona zostaje niewinnie wyglądająca treść dokumentu opisującego baterię telefonu Apple iPhone 5.

Po uruchomieniu kodu oprogramowanie tworzy plik z biblioteką dynamiczną DLL, uruchamianą za pomocą programu rundll32. Następnie do odpowiednich miejsc w rejestrze Windows zostaje dodany wpis, by kod był uruchamiany automatycznie. Plik DLL zawiera znanego konia trojańskiego c0d0so0 lub nowego Briba, który po raz pierwszy był instalowany w maju br. przy okazji wykorzystywania podatności CVE-2012-0779. Poziom wykrywalności tego konia trojańskiego przez narzędzia antywirusowe jest nadal bardzo niski.

Długi łańcuch infekcji prowadzi do Makau

Przełamanie zabezpieczeń nie jest ostatecznym celem działania przestępców internetowych. To jedynie pierwszy krok z całej sekwencji działań. Tak jest w przypadku omawianej infekcji. Program otwiera połączenie HTTP POST do serwera o adresie publicnews.mooo.com. Serwer ten, naprawdę znajdujący się w domenie psychz.net, nie jest już dostępny, ale w kolejnych infekcjach korzystano z przejętych serwerów i adresów FQDN (Fully Qualified Domain Name) dostarczanych przez serwisy dynamicznego DNS (m.in. Publicnews.mooo.com). Pobierany plik o nazwie logo.gif jest archiwum ZIP zawierającym aplikację, która po uruchomieniu tworzy i uruchamia bibliotekę DLL o nazwie Xpsfilter.dll. Ten program odwoływał się do serwera publicupdate.mooo.com, skąd pobierał aktualizacje i ustawienia komunikacji, tworząc botnet. Adres IP z domeny mooo.com wskazywał na zasoby firmy CTM zarejestrowanej na Taipie, wyspie należącej do Specjalnego Regionu Administracyjnego Makau Chińskiej Republiki Ludowej.

Jak wykryć infekcję

Infekcje za pomocą większości złośliwego oprogramowania najprościej wykryć za pomocą analizy ruchu internetowego w sieci firmowej. Integracja trojanów z systemem operacyjnym Windows jest tak głęboka, że analiza uruchomionych procesów nie zawsze wykryje wszystkie składniki. Należy mieć narzędzie, które może analizować ruch wychodzący. Może być to komercyjny IPS, odpowiedni moduł nowoczesnej zapory sieciowej lub choćby tap, który przekieruje przechwycone pakiety do analizy za pomocą oprogramowania takiego jak snort.

Szczególną uwagę należy zwrócić na adresy DNS wskazujące na serwisy z dynamicznym DNS (dyndns.org, 3322.net i inne), gdyż są one często wykorzystywane przez cyberprzestępców. Tę właściwość można wykorzystać do wykrycia konia trojańskiego Briba. Należy ustawić regułę, która podniesie alarm w przypadku wykrycia połączeń do serwisów z dynamicznym IP, takim jak mooo.com, 3322.net i dyndns.org. W przypadku firm rzadko jest konieczna komunikacja z takimi domenami, więc liczba fałszywych alarmów będzie niewielka.

Dodatkowym wskaźnikiem infekcji jest zmiana kluczy odpowiedzialnych za uruchomienie obiektów podczas startu systemu z użyciem rundll32. Nie zawsze jednak takie zmiany można wychwycić.