Library
My library

+ Add to library

Profile

Wróć do listy aktualności

BadRabbit boi się komputerów chronionych przez Dr.Web: Nasze badania nad niesławnym trojanem

26 października 2017

Trojan szyfrujący pliki Trojan.BadRabbit, który w ciągu ostatnich dni był tematem wielu dyskusji w licznych środkach masowego przekazu, na stronach www i wśród twórców oprogramowania antywirusowego, rozpoczął swoje rozpowszechnianie się 24 października i wkrótce potem (bazując na tych samych źródłach) zainfekował wiele komputerów nie tylko w Rosji, ale i w innych krajach. Doctor Web publikuje początkowe rezultaty swoich badań nad tym złośliwym programem. Bazując na nich możemy powiedzieć, że “zły królik” sprawdza, czy na komputerze działają produkty Dr.Web. Jeśli wykryje procesy łączone z naszym oprogramowaniem, to pomija etap szyfrowania, starając się w ten sposób uniknąć wykrycia. Trojan sprawdza również obecność produktów firmy McAfee.

Trojan.BadRabbit zawiera co najmniej trzy komponenty: moduł typu dropper, robaka szyfrującego i program szyfrujący dyski zdolny również do dekodowania plików. Po uruchomieniu do pamięci ładowany jest tylko moduł dropper’a. Próbki dropper’a prezentują się jako plik wykonywalny z ikonką instalatora Adobe Flash. Następnie trojan zapisuje robaka szyfrującego do pliku C:\Windows\infpub.dat i uruchamia go z użyciem programu systemowego rundll32.exe. Następnie zamyka swój własny proces.

Trojan pozyskuje informacje o zainfekowanym komputerze i sprawdza również, czy uruchomione są na nim procesy dwóch programów antywirusowych: Dr.Web i McAfee (jego zainteresowanie skupia się głównie na procesach o nazwach dwengine.exe, dwwatcher.exe, dwarkdaemon.exe, dwservice.exe, McTray.exe, mfevtps.exe i mcshield.exe). Jeśli BadRabbit wykryje takie procesy, to pomija pierwszy etap szyfrowania i to jego działanie wygląda na próbę uniknięcia zbyt wczesnego wykrycia, jednakże po ponownym uruchomieniu systemu wirus próbuje przeprowadzić pełne szyfrowanie dysków. Z przyczyny faktu, że bieżące wersje Antywirusa Dr.Web nie pozwalają na modyfikowanie głównego sektora rozruchowego (MBR) dysku, to żadna próba zaszyfrowania dysków nie zakończy się powodzeniem. Tym samym użytkownicy Antywirusa Dr.Web 9.1 i nowszych oraz Dr.Web KATANA są całkowicie chronieni przed Trojan.BadRabbit, ale tylko w przypadku, gdy nie wyłączyli oni komponentu ochrony zapobiegawczej lub nie zmienili jego ustawień.

Następnie moduł szyfrujący dyski sprawdza argumenty swojego procesu i jeśli został uruchomiony bez argumentów, to działa jako program dekodujący. Przed rozpoczęciem swoich działań szyfrujących, Trojan.BadRabbit przeprowadza kilka przygotowań, a następnie tworzy zadanie w Menedżerze zadań restartujące komputer za 3 minuty. Następnie co każde 30 sekund trojan usuwa swoje poprzednie zadanie i tworzy nowe, tym samym przesuwając czas wykonania zadania. Być może jest to robione jako zapobieżenie usunięciu trojana przez użytkownika komputera, zanim trojan zakończy szyfrowanie dysku.

Następnie BadRabbit generuje 32-znakowe hasło dla potrzeb szyfrowania dysków, zapisuje informacje o komputerze do specjalnej struktury danych, szyfruje ją z użyciem klucza publicznego i zapisuje je w kolejnej strukturze zaszyfrowanej z użyciem algorytmu Base64 i na koniec zapisuje ją do MBR. Twórcy wirusa pozyskali algorytm szyfrujący dyski i program typu bootloader z kodu open source projektu DiskCryptor i dokonali w nim paru drobnych zmian. Trojan szuka pierwszego dysku systemowego i instaluje na nim swój program ładujący. Następnie cała zawartość tego dysku zostaje zaszyfrowana.

Część kodu wirusa BadRabbit została zaadoptowana z Trojan.Encoder.12544, znanego również jako NotPetya. Po uruchomieniu ten program szyfrujący sprawdza dostępność pliku C:\Windows\cscc.dat i jeśli jest on obecny, to trojan kończy swoje działanie (tym samym utworzenie pliku cscc.dat w folderze C:\Windows może zapobiec złośliwym konsekwencjom uruchomienia trojana). Po uruchomieniu z pamięci zainfekowanego komputera, robak szyfrujący sprawdza, czy posiada uprawnienia wymagane do wypakowania jednego ze swoich dwóch sterowników, w zależności od długości słowa systemu operacyjnego. Te sterowniki zostały zapożyczone z narzędzia do szyfrowania plików opartego na kodzie open source projektu DiskCryptor.

Aby uruchomić te sterowniki w trakcie swojego działania, BadRabbit próbuje zarejestrować usługę systemową “cscc” z opisem “Windows Client Side Caching DDriver”. Jeśli trojanowi nie uda się zarejestrować usługi, to próbuje uruchomić sterownik DiskCryptor nazwany “cdfs” poprzez zmodyfikowanie rejestru systemowego.

Tak jak Trojan.Encoder.12544, Trojan.BadRabbit używa narzędzi Mimikatz do przechwytywania haseł do otwartych sesji Windows. W zależności od długości słowa systemu operacyjnego trojan wypakowuje odpowiednią wersję narzędzia, zapisuje ją pod losową nazwą w folderze C:\Windows i uruchamia ją. Następnie wyszukuje foldery sieciowe dostępne do zapisu, próbuje otworzyć je z użyciem pozyskanych danych kont i zapisuje w nich swoją kopię.

Po wykonaniu wszystkich swoich wstępnych operacji, trojan tworzy zadanie nazwane “drogon” w celu ponownego uruchomienia komputera. Kończąc sesję, BadRabbit czyści logi systemowe i usuwa zadanie utworzone wcześniej. Enkoder szyfruje pliki o następujących rozszerzeniach: .3ds, .7z, .accdb, .ai, .asm, .asp, .aspx, .avhd, .back, .bak, .bmp, .brw, .c, .cab, .cc, .cer, .cfg, .conf, .cpp, .crt, .cs, .ctl, .cxx, .dbf, .der, .dib, .disk, .djvu, .doc, .docx, .dwg, .eml, .fdb, .gz, .h, .hdd, .hpp, .hxx, .iso, .java, .jfif, .jpe, .jpeg, .jpg, .js, .kdbx, .key, .mail, .mdb, .msg, .nrg, .odc, .odf, .odg, .odi, .odm, .odp, .ods, .odt, .ora, .ost, .ova, .ovf, .p12, .p7b, .p7c, .pdf, .pem, .pfx, .php, .pmf, .png, .ppt, .pptx, .ps1, .pst, .pvi, .py, .pyc, .pyw, .qcow, .qcow2, .rar, .rb, .rtf, .scm, .sln, .sql, .tar, .tib, .tif, .tiff, .vb, .vbox, .vbs, .vcb, .vdi, .vfd, .vhd, .vhdx, .vmc, .vmdk, .vmsd, .vmtm, .vmx, .vsdx, .vsv, .work, .xls, .xlsx, .xml, .xvd, .zip. Jako rezultat działania trojana zainfekowany komputer wyświetla żądanie zapłacenia okupu w walucie Bitcoin, a strona www należąca do cyberprzestępców umieszczona w sieci TOR informuje, że ofiara ma 48 godzin na dokonanie tej płatności. Gdy ten czas upłynie, kwota okupu zostanie powiększona.

screen Trojan.BadRabbit #drweb

Nasze badania wirusa Trojan.BadRabbit wciąż są kontynuowane. Mimo to opublikowaliśmy już szczegóły dotyczące działania tego złośliwego programu w naszej bazie wiedzy dotyczącej wirusów.

Tell us what you think

To ask Doctor Web’s site administration about a news item, enter @admin at the beginning of your comment. If your question is for the author of one of the comments, put @ before their names.


Other comments