W maju mieliśmy w Polsce do czynienia z infekcjami złośliwym oprogramowaniem, które blokowało dostęp do komputera, żądając wpłacenia okupu w zamian za usunięcie blokady. ‚Opłata karna’ wynosi 100 euro (można również dokonać dwóch płatności po 50 euro) i powinna zostać dokonana poprzez podanie numeru vouchera UKASH. Jak twierdzi wyświetlany na komputerze komunikat, kara ta wynika z tajemniczych przepisów o ‚kontroli informacyjnej oraz zabezpieczenia informacji’ z 2012 roku. Sam komunikat napisany jest poprawną polszczyzną i opatrzony logiem policji! (patrz zrzut ekranu poniżej). Programy antywirusowe oznaczają to zagrożenie jako ‚Trojan/Weelsof’.
UWAGA! POD ADRESEM http://www.cert.pl/news/5707 ZNAJDUJE SIĘ AKTUALIZACJA ORAZ NOWY OPIS METODY USUWANIA
Co to jest ransomware?
Ransomware (ang. ransom – okup, software – oprogramowanie) jest to rodzaj złośliwego oprogramowania, który blokuje pewne funkcje komputera (np: szyfruje pliki, blokuje możliwość uruchomienia programów itp), a następnie za usunięcie blokady żąda wpłacenia okupu. Po zapłaceniu użytkownik dostaje zazwyczaj klucz/kod odblokowujący. Na ogół kwota okupu nie jest duża – co sprzyjać ma wybraniu przez użytkownika ‚sponsorowanej’ metody usunięcia problemu.
Co się dzieje z komputerem?
Malware instaluje się poprzez wejście na stronę z tzw. „exploit-packiem”, który poprzez lukę w niezaktualizowanym oprogramowaniu przejmuje kontrolę nad systemem ofiary i ściąga z sieci oraz uruchamia złośliwe oprogramowanie. Po uruchomieniu ransomware dodaje parę wpisów do rejestru systemowego, wyłącza proces Explorera (znika menu ‚start’), ukrywa wszystkie okna, a następnie wyświetla komunikat proszący o wniesienie opłaty. Z przeprowadzonej w laboratorium CERT Polska analizy wynika, iż malware nie podejmuje żadnych innych działań (tzn. nie infekuje/kasuje/szyfruje innych plików).
Podobne przypadki w innych krajach
Jak można przeczytać na stronie https://www.abuse.ch/?p=3718, ten rodzaj złośliwego oprogramowania atakował już wcześniej poza Polską. Znalezione przez nas komunikaty zawierały treści dla krajów: Austria, Finlandia, Niemcy, Belgia, Francja, Grecja, Włochy, Holandia, Polska, Portugalia, Hiszpania, Szwecja.
Jak usunąć malware?
Najprostsza metoda usunięcia polega po prostu na wpisaniu ‚poprawnego’ kodu UKASH. Z analizy malware wynika, iż malware sprawdza jedynie początek kodu, nie sprawdza natomiast czy jest to poprawny, aktywny numer vouchera. W internecie można znaleźć informację, iż poprawny kod zaczynia się od ciągu 633781
lub 718
po których następuje 13 cyfr. Prosty generator takich kodów znajduje się poniżej :
Wygeneruj losowy kod UKASH
AKTUALIZACJA:
Nowa wersja malware sprawdza dodatkowo kolejne trzy znaki kodu, natomiast 10 ostatnich cyfr nadal może być dowolne.
Dodatkowo po wprowadzeniu kod UKASH przesyłany jest do serwera, który sprawdza jego ważność. Aby dokonać odblokowania komputera za pomocą kodu wygenerowanego przez powyższy URL, należy (w momencie wpisywania kodu) odłączyć komputer od sieci (wyjąć kabel sieciowy, wyłączyć kartę WIFI).
Metoda „ręczna”
Innym sposobem jest uruchomienie komputera w trybie awaryjnym z wierszem poleceń (zwykły tryb awaryjny nie będzie działać !) i ręczne usunięcie z dysku oraz rejestru zmian wprowadzonych przez malware. Jest to metoda zdecydowanie polecana jedynie zaawansowanym użytkownikom.
Analiza – co dokładnie robi Weelsof?
Sam program spakowany/chroniony jest najprawdopodobniej narzędziem armadillo. Po wypakowaniu i uruchomieniu właściwego kodu program kopiuje się do następujących lokalizacji:
C:Documents and SettingsAll UsersDane aplikacji[losowa-nazwa].exe
C:Windows[losowa-nazwa].exe
C:Windowsexplorer_new.exe
Następnie dodaje wpis do rejestru wywołujący plik [1] podczas uruchamiania komputera oraz podając plik [3] jako alternatywny Shell modyfikując klucze :
HKLMSoftwareMicrosoftWindows NTCurrentVersionWinlogonShell
HKLMSoftwareMicrosoftWindowsCurrentVersionRun
W kolejnym korku program odnajduje PID procesu explorer.exe
(pierwsze wystąpienie tej nazwy na liście procesów), a następnie zabija znaleziony PID. Następnie wyszukuje w systemie okna za pomocą funkcji EnumWindows()
, które
blokuje WindowEnable()
i ukrywa WindowShow()
.
Następnie program pobiera z serwera komunikat jaki ma zostać wyświetlony na ekranie (w kodzie programu ten element nazywany jest ‚design’). Język komunikatu określony jest poprzez funkcję systemową GetUserGeoID()
, która wraca kod kraju. Design pobierany jest z adresu http://adres-cnc/arch/design_[KOD-KRAJU]
. Jest to plik .zip zawierający pliki graficzne oraz plik main.html
.
Po procesie instalacji program wysyła metodą POST pod adres http://adres-cnc/topic.php
komunikat o pomyślnym zainstalowaniu wraz z kodem kraju z poprzedniego kroku. Z serwera pobierana jest również czarna lista numerów UKASH z adresu http://adres-cnc/black.dat
Następnie tworzone jest okno z obiektem WebBrowser (CLSID:8856F961-340A-11D0-A96B-00C04FD705A2
), które wyświetla pobrany wcześniej ‚design’ – zajmując cały ekran.
Po wpisaniu numer UKASH uruchamiana jest procedura sprawdzająca poprawność wpisanego kodu. Nie jest ona rozbudowana, ponieważ sprawdzeniu podlega jedynie prefiks – czy kod zaczyna się od ciągu 633781
lub 718
– oraz ilość znaków po prefiksie – musi być równa 13. Po uznaniu wpisanego numeru za poprawny uruchamiana jest procedura odblokowania komputera oraz wysłanie metodą POST pod adres http://adres-cnc/topic.php
wpisanego kodu.
Procedura odblokowania jest odwróconym procesem instalacji. Na początku zamykane jest okno przesłaniające ekran.
Następnie uruchamiany jest proces explorer.exe
oraz za pomocą funkcji EnumWindows()
, WindowEnable()
i WindowShow()
przywracane są ukryte okna.
Na koniec malware usuwa zmienione wpisy w rejestrze oraz stworzone pliki.