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

Pułapka na grupę Winnti – wabienie intruzów

Dmitrij Tarakanow
Kaspersky Lab Expert
Dodany 25 kwietnia 2013, 15:37 CEST
Tagi:

Podczas naszego badania dotyczącego grupy Winnti, odkryliśmy znaczną ilość próbek szkodliwego oprogramowania z rodziny Winnti, ukierunkowanego na różne firmy działające w branży gier komputerowych. Używając tych wyrafinowanych złośliwych programów, cyberprzestępcy uzyskiwali zdalny dostęp do zainfekowanych stacji roboczych i z ich poziomu ręcznie przeprowadzali dalsze szkodliwe działania. Oczywiście, zależało nam na tym, aby dowiedzieć się, w jaki sposób złośliwe biblioteki rozprzestrzeniane są w sieci lokalnej. Aby to zrobić, postanowiliśmy śledzić działania napastników przeprowadzane na zainfekowanym komputerze.

Pierwsza próba: maszyna wirtualna nr 1

Na początku badania uruchamialiśmy szkodliwe programy na maszynie wirtualnej, która pracowała dość dobrze – obserwowaliśmy na niej nawet aktywność cyberprzestępców. Ale szybko zorientowali się oni, że nie był to komputer, który chcieli kontrolować. Kiedy się to stało, serwery napastników przestały odpowiadać na żądania botów pracujących na maszynach wirtualnych.

Oto czego udało nam się dowiedzieć na tym etapie monitorowania. Przede wszystkim, sprawców interesowało to, co dzieje się na pulpicie ofiary. Następnie napastnicy włączali zdalny wiersz poleceń i używali go do przeglądania katalogu głównego bieżącego dysku, poszukując pliku winmm.dll i sprawdzając wersję systemu operacyjnego potencjalnej ofiary. Następnie, do gry wprowadzana była wtyczkaListFileManager. Wtyczka ta współpracuje z systemem plików komputera i napastnicy używali jej do przeglądania folderów „C:\Windows” oraz „C:\Work”. Następnie próbowali ponownie uruchomić komputer, ale popełnili błąd w poleceniu „shutdown”, wpisując „shutdown /t /r 1” (komputer powinien zostać uruchomiony ponownie w ciągu jednej sekundy). Po chwili zorientowali się i całkowicie zamknęli komputer przy pomocy prawidłowego rozkazu „shutdown /s /t 1”.

Sekwencja zdarzeń:

(Oznaczenia:
- moduł linii zdalnego wiersza poleceń – CmdPlus.dll,
- praca na systemie plików – ListFileManager.dll, TransPlus.dll)

Kiedy maszyna wirtualna została uruchomiona ponownie, napastnicy połączyli się z nią i pobrali pomocniczy program o nazwie „ff._exe_” do folderu „Config.Msi” (ff._exe_, MD5: 0xd2d6115a337cf4f40402d15cb9ece2ea, werdykt: Trojan.Win32.KillWin.sp). Ten program poszukuje na dysku twardym następujących typów plików:

  • dokumenty HTML (.htm, .html);
  • arkusze MS Excel (.xls, .xlsx);
  • prezentacje PowerPoint (.ppt);
  • pliki tekstowe (.txt);
  • dokumenty MS Word (.doc, .docx);
  • pliki pomocy kontekstowej HTML (.chm);
  • dokumenty MS Works (.wps);
  • dokumenty Adobe Reader (.pdf);

Oprócz wymienionej funkcjonalności, plik „ff._exe_” posiada również funkcję niszczenia danych: jeżeli system plików docelowego dysku twardego nie zostanie rozpoznany przez program jako FAT lub NTFS, aplikacja uruchamia procedurę wypełniania dysku zerami. Chociaż maszyna wirtualna, której używaliśmy, miała system plików NTFS na wszystkich dyskach, program „ff._exe_” nie mógł rozpoznać systemu plików i rozpoczął procedurę czyszczenia dysku. Wszystko wskazuje na to, że napastnicy wiedzieli o tej usterce w programie i starali się zapobiec awarii systemu operacyjnego, zmuszając program do przerwania operacji, ale było już za późno. W rezultacie dysk został wypełniony wystarczającą ilością zer i system operacyjny „umarł”.

Sekwencja zdarzeń:

Jeżeli po tej akcji zostałby przywrócony obraz maszyny wirtualnej, a sam system zostałby zainfekowany od nowa, na pewno wzbudziło by to podejrzenia napastników. Intruzi mieliby nie lada niespodziankę, gdyby zainfekowany komputer, który przed chwilą został „uśmiercony”, pojawił się 10 minut później jako w pełni sprawna maszyna, a bot zakomunikowałby serwerowi C&C, że pracuje na dokładnie takiej samej konfiguracji, jak przed chwilą. Zdecydowaliśmy się więc użyć innego systemu operacyjnego i, na wszelki wypadek, innego wariantu bota.

Druga próba: maszyna wirtualna nr 2

Uruchomiliśmy nowego bota na nowej maszynie wirtualnej i po odczekaniu pewnego czasu od momentu aktywności cyberprzestępców na zainfekowanym komputerze. Na nowym komputerze napastnicy pobrali 3 pliki: wm.batctime.exe i wm3280.dll, a następnie uruchomili plik „wm.bat”. Plik wsadowy „wm.bat”:

  • kopiuje najnowszą wersję złośliwej biblioteki „wm3280.dll” do foldera „C:\Windows” pod nazwą „winmm.dll”;
  • określa atrybuty czasowe pliku, który został właśnie skopiowany (czas utworzenia, modyfikacji i ostatniego dostępu), aby były dokładnie takie same, jak atrybuty biblioteki systemowej „C:\Windows\twain.dll”;
  • ustawia atrybuty złośliwej biblioteki jako: ukryta / systemowa / tylko do odczytu;

Następnie, pobrany i uruchomiony został kolejny pomocniczy program o nazwie ec.exe (ec.exe, MD5: 0x14c112794ca492b7a82fa11f94b5b8b3, werdykt: Trojan-PSW.Win32.Certif.a). Ten program szuka zainstalowanych w systemie certyfikatów zawierających prywatny klucz. Jeśli takie certyfikaty zostaną znalezione, program zapisuje je jako pliki na dysku. Kiedy program ukończył swoje działanie, napastnicy użyli polecenia „dir”, aby sprawdzić, czy pojawiły się jakieś certyfikaty. Ponieważ zainfekowany wirtualny system operacyjny nie posiadał zainstalowanych żadnych certyfikatów tego rodzaju, napastnicy nic nie zobaczyli i zdecydowali się usunąć program „ec.exe”. Potem ręcznie przeglądali foldery na dysku C:, aż natrafili na folder o nazwie „Sign”, który został utworzony przez nas, i w którym umieściliśmy certyfikat użyty do podpisania pewnego programu. Cyberprzestępcy przyjrzeli się bliżej folderowi i plikowi z rozszerzeniem „.cer”, a następnie utworzyli kopię tego pliku. Kiedy kradzież certyfikatu została zakończona, napastnicy użyli polecenia „net view”, aby zobaczyć, jakie komputery znajdują się w otoczeniu sieciowym zainfekowanej maszyny oraz polecenia „netstat -an”, aby uzyskać wykaz wszystkich nawiązanych połączeń sieciowych.

To tyle, jeśli chodzi o zainteresowanie naszą maszyną wirtualną. Po przeanalizowaniu otrzymanych danych, cyberprzestępcy zorientowali się, że mieli do czynienia z fałszywym systemem operacyjnym i serwer C&C przestał akceptować połączenia od bota pracującego na tej maszynie wirtualnej.

Sekwencja zdarzeń:

wm.bat:

Po tym incydencie nie mogliśmy dłużej ryzykować zastawiania pułapek na maszynach wirtualnych, ponieważ mogłoby to spłoszyć intruzów. W związku z tym, zdecydowaliśmy się kontynuować nasze obserwacje w bardziej realistycznym środowisku.

Trzecia próba: pułapka „Marta”

Przeorganizowaliśmy sieć lokalną tak, aby wyglądała na dział w pewnym przedsiębiorstwie z branży gier komputerowych. Dział został zaaranżowany w ten sposób, aby przypominał miejsce, w którym kompiluje się zasoby gry. Komputer nowej, wymyślonej pracownicy, Marty, został zainfekowany szkodnikiem Winnti tydzień po rzekomym rozpoczęciu przez nią pracy. Wszystko musiało wyglądać wiarygodne, co oznacza, że musiała istnieć jakaś firmowa korespondencja z ostatniego tygodnia. Dlatego utworzyliśmy kilka kontaktów, z którymi mogła komunikować się Marta: kierownika grupy, administratora systemu, menedżera i kilku inżynierów. Wymyślanie wiadomości biznesowych jest bardzo czasochłonnym zadaniem, jednak na szczęście Marta była nową pracownicą w sfabrykowanej firmie i nie musiała mieć wielu wiadomości e-mail w swojej skrzynce odbiorczej.

Jak zostało już powiedziane, intruzi ręcznie badali każdy z zainfekowanych komputerów. Musieliśmy odczekać chwilę nim zauważyliśmy w ruchu sieciowym, że ktoś był aktywny na zainfekowanym komputerze. Naszym głównym celem było dowiedzieć się, jakich metod użyją napastnicy do zainfekowania komputerów współpracowników Marty. Spodziewaliśmy się, że napastnicy skłonią się do wysyłania z maszyny Marty e-maili ze złośliwym ładunkiem do innych pracowników. Jednak, zastosowali oni inne podejście. Intruzi dwukrotnie dokładnie badali zainfekowany komputer i jego otoczenie sieciowe. Miało to miejsce we wczesnej fazie obserwacji, przy czym drugi powrót nastąpił prawdopodobnie w celu przypomnienia sobie, z czyim komputerem mają do czynienia. Nie działo się jednak nic znaczącego.

Próba nr 1

Za pierwszym razem napastnicy jedynie badali teren, obserwując to, co się dzieje na pulpicie zainfekowanego komputera:

Starannie rozpoczęli zbieranie użytecznych danych z komputera. Mieli wgląd w niektóre foldery (stworzone przez nas dla uwiarygodnienia działań związanych z pracą wykonywaną przez nowego fikcyjnego pracownika):

D:\Work\Fasmat\gui\
C:\Users\Marta Fr\Desktop\
F:\!Far\
D:\Exchange-Marta\For Magnus\
D:\Work\Fasmat\menu\
D:\Work\Fasmat\tex\

Za pomocą polecenia „net use” napastnicy sprawdzili, z jakimi zasobami sieciowymi łączy się monitorowany komputer i zobaczyli, że istnieje jeden mapowany dysk sieciowy:

Napastnicy próbowali uzyskać dostęp do dysku C: na zdalnym komputerze korzystając z polecenia „dir”, jednak dostęp został zabroniony:

Używając polecenia „net view” intruzi zdołali zobaczyć inne komputery w sieci:

Następnie spróbowali uzyskać dostęp do systemu plików jednego z tych komputerów – znów bez powodzenia:

Wykorzystując polecenie „net user” napastnicy sprawdzili, jacy użytkownicy byli zarejestrowani na zainfekowanym komputerze:

Najwyraźniej w tej chwili intruzi postanowili zrobić sobie przerwę i zastanowić nad tym, co robić dalej, ponieważ wstrzymali prowadzenie rozpoznania i wrócili dopiero kilka godzin później.

Sekwencja zdarzeń:

Próba nr 2

Podczas drugiej wizyty na zainfekowanej maszynie napastnicy natychmiast sprawdzili (przy pomocy polecenia „net use”), czy od czasu ich ostatniej wizyty nawiązane zostały nowe połączenia z zasobami sieciowymi. Nic nowego nie zostało wyświetlone. Napastnicy poszukali złośliwej biblioteki:

Sprawdzili zawartość folderu dokumentów bieżącego użytkownika:

Ich uwagę przykuł plik „Default.rdp”:

Z jakiegoś powodu intruzi wyłączyli w swojej szkodliwej bibliotece atrybuty ukryta / systemowa / tylko do odczytu (kiedy napastnicy działali na maszynie wirtualnej, robili dokładnie przeciwną rzecz: ustawiali te atrybuty w złośliwej bibliotece przy pomocy pliku „wm.bat”):

Następnie, napastnicy załadowali na zainfekowanej maszynie program „Network Password Recovery” autorstwa Nira Sofera. Program ten ujawnia hasła zapisane w systemie operacyjnym i związane z:

  • kontami umożliwiającymi dostęp do zdalnych komputerów w sieci lokalnej;
  • kontami Outlook 2003;
  • kontami w komunikatorach internetowych MSN Messenger / Windows Messenger;
  • kontami zapisanymi w przeglądarce Internet Explorer 7.x i 8.x;
  • kontami Remote Desktop 6;

Ruch sieciowy ujawnił program „netpass.exe”, który był przechowywany w systemie operacyjnym po stronie napastników w lokalizacji: „Z:\dll\pass\netpass.exe”. Intruzi uruchomili ten program z parametrem „/stext a.txt”, który zapisuje znalezione hasła w pliku tekstowym o nazwie „a.txt”. Kiedy program zakończył działanie, pojawił się plik „a.txt” i napastnicy przyjrzeli mu się bliżej:

Na zdalnych komputerach znajdowały się zasoby sieciowe udostępnione dla Marty, prawdopodobnie mające za zadanie ułatwienie wymiany danych pomiędzy Martą i innymi pracownikami. Marta była już podłączona do komputerów użytkowników Jonas-448 i KARL-SCH, i oczywiście zapisała poświadczenia dostępu do tych folderów współdzielonych. W tej chwili intruzi również posiadali te dane. Próbowali użyć poświadczeń Marty do uzyskania dostępu do dysku C: na komputerze Karla. Próba ta nie powiodła się:

Napastnicy sprawdzili, czy komputer Karla był dostępny. Karl był aktualnie w sieci:

Następnie, atakujący próbowali różnych kombinacji danych wejściowych polecenia „net use” - to również nie pomogło:

Po tych staraniach intruzi prawdopodobnie stracili zainteresowanie, usunęli wszystkie pliki, które utworzyli i zaprzestali znaczących działań.

Sądząc po wynikach naszej obserwacji możemy założyć, że członkowie grupy Winnti nie kłopoczą się wykonywaniem skomplikowanych zadań i wydają się łapać tylko nisko wiszące owoce. Zauważono to również, gdy grupa starała się po raz drugi przeniknąć do sieci firmy produkującej gry komputerowe. Nie ulega wątpliwości, że grupa Winnti chciała ponownie zainfekować sieć firmową – można było zauważyć, że próby były konsekwentne, natomiast samo podejście raczej standardowe, z rzadkimi wyjątkami, kiedy zastosowane zostały bardziej wyrafinowane metody. Mogło to zadziałać, jeśli docelowa firma nie byłaby przygotowana na takie ataki, ale my czekaliśmy na nie i liczne, bezpośrednie próby grupy Winnti spełzły na panewce. W końcu grupa po prostu zrezygnowała i, tak jak we wcześniejszym przypadku, najprawdopodobniej przełożyła kolejną próbę na około miesiąc, przechodząc do innej, bardziej podatnej ofiary. Biorąc pod uwagę, jak wiele firm zostało już skompromitowanych, grupa raczej nie narzekała na brak potencjalnych ofiar. Winnti wydaje się nie marnować czasu na szczególnie odporne cele, zamiast tego stara się zarabiać pieniądze na wielu organizacjach, do których włamanie wymaga mniejszego wysiłku.