Smoke Loader jako wtyczka Microsoft Office

Data publikacji: 27/08/2015, Łukasz Siewierski

loveletter1

Serwis Zaufana Trzecia Strona udostępnił informację na temat nowej kampanii, wykorzystującej logo produktu Microsoft Office w celu dystrybucji wtyczki do przeglądarki. W rzeczywistości, instalator wtyczki do przeglądarki zawiera również niechciane oprogramowanie o nazwie Smoke Loader. Pozwala ono np. przekierować rozwiązania adresów domenowych albo wykradać dane z komputera ofiary. Zawiera również komponent, który ukrywa te działania, zwany rootkit. O Smoke Loader już pisaliśmy na naszym blogu przy okazji kampanii wykorzystującej strony w domenie gov.pl. Teraz opisujemy dokładniej najnowsze wcielenie tego złośliwego oprogramowania.

Kampania

We współpracy z serwisem ZaufanaTrzeciaStrona.pl przeanalizowaliśmy wspomnianą kampanię. Szczegóły samego wektora ataku są opisane dokładnie w artykule na z3s.pl. W skrócie, użytkownik proszony był o kliknięcie w link, który prowadził do dokumentów. Kiedy przeglądarka otworzyła tę stronę, pojawiał się komunikat o konieczności zainstalowania wtyczki do przeglądarki, która służy do wyświetlania dokumentów Microsoft Office. Pobrany instalator, rzeczywiście odpowiadał za instalację wtyczki, ale dodatkowo, na koniec procesu instalacyjnego, uruchamiał aplikację o nazwie DONEAPP.EXE, która zawierała złośliwe oprogramowanie Smoke Loader. Ekran programu instalacyjnego znajduje się poniżej.


ms_office_install_screen
Połączenie programu instalacyjnego ze złośliwym oprogramowaniem ma tę przewagę, że wymaga interakcji użytkownika. W przypadku automatycznej analizy, przeważnie ta interakcja nie jest symulowana, więc złośliwe oprogramowanie nie zostanie uruchomione.

Smoke Loader – ruch sieciowy i instalacja

DONEAPP.EXE jest aplikacją w języku Visual Basic, która rozpakowuje i uruchamia (z ang. packer) złośliwe oprogramowanie o nazwie Smoke Loader. To złośliwe oprogramowanie uzyskuje możliwość przetrwania ponownego uruchomienia systemu w systemie ofiary za pomocą dodania odpowiedniego klucza rejestru. Dodatkowo instaluje się w ścieżce %APPDATA% w katalogu o losowej nazwie. Nazwa pliku wykonywalnego jest taka sama jak nazwa katalogu.

Smoke Loader zaczyna działanie od kontaktu ze stroną msn.com, a później wysyła żądania POST do domen, które znajduje w rejestrze systemu Windows. Działanie to ma na celu sprawdzenie dostępności połączenia z Internetem oraz ukrycie komunikacji z C&C. Zrzut ruchu z takiego działania znajduje się poniżej. Warto zauważyć, że wykrywanie tego typu komunikacji w sieci, może przyczynić się do wczesnego wykrycia zagrożenia ze strony Smoke Loader.

Następnie złośliwe oprogramowanie kontaktuje się z serwerem C&C pod adresem cannedgood.eu, z którego pobiera rozkazy. Cała komunikacja jest szyfrowana. Atakujący porzucił już tę infrastrukturę, ze względu na zainteresowanie, które wzbudził jego atak.


ms_office_virtualbox_post
Wysyłane do C&C komunikaty zawierają podstawowe informacje o zainfekowanej maszynie jak i prośbę o dodatkowe zadania. Smoke Loader jest dropperem, oznacza to, że jest używany do dystrybucji innego złośliwego oprogramowania. W tym przypadku jednak nie zauważyliśmy jakie mogło być to oprogramowanie.

Smoke Loader – analiza kodu

Smoke Loader użyty w tej kampanii zawierał wtyczki Rootkit.dll oraz Faker.dll, których celem było modyfikacja bibliotek współdzielonych aplikacji (WinAPI) w taki sposób, aby ukryć działalność programu oraz przekierować żądania DNS. Na poniższym zrzucie ekranu widać, że np. pierwsze bajty funkcji NtEnumerateValueKey w procesie Notatnika zostały zmienione na instrukcję jmp, która powoduje wykonanie innego kodu w bibliotece Rootkit.dll. Służy to ukryciu wcześniej dodanego klucza odpowiedzialnego za autostart złośliwego oprogramowania.

ms_office_hookshark
Jak widać na poniższym zrzucie ekranu, przed zwróceniem wyniku działania NtEnumerateValueKey program sprawdza, czy zapytano o wartość klucza JavaSoft, pod którym jest ukryte złośliwe oprogramowanie. Jeśli tak było, to klucz jest po prostu ukrywany.


ms_office_rootkit
Działanie to powoduje, że gdy oglądamy klucze rejestru za pomocą edytora lub programu SysInternals Autoruns, klucz taki nie zostanie wyświetlony. Podobnie zhookowanie (bo jest nazywany ten proces) NtQueryDirectoryFile – funkcji służącej do pobrania listy plików w katalogu – jest użyte w celu ukrycia pliku ze złośliwym oprogramowaniem.

Podczas analizy złośliwego oprogramowania pobierany był również plugin Faker.dll, którego celem było zhookowanie funkcji odpowiedzialnych za rozwiązywanie adresów domenowych. W wyniku tego działania, adresy domenowe rozwiązywane były na inne adresy IP, co mogło pomagać w atakach typu phishing. Niestety nie udało nam się zarejestrować, jakie adresy domenowe były przekierowywane przez atakującego.

Podsumowanie

Kampania złośliwego oprogramowania była dobrze przygotowana i przeprowadzona w języku polskim. Rzadko w Polsce mamy do czynienia z takimi atakami typu phishing. Więcej informacji na temat próbek można znaleźć w serwisie z3s.pl, natomiast dokładne opisy technicznie Smoke Loader można znaleźć pod adresami: