Leniwi cyberprzestępcy, czyli co znalazłem dziś w skrzynce
Mamy rok 2018. Czas, w którym polimorficzne, niewykrywalne, przenośne trojany szyfrujące dyski, ukrywające się w rootkitach UEFI pozostają niezauważone, przejmują tysiące urządzeń Internetu Rzeczy, paraliżują infrastrukturę, a żądając okupu potęgują i tak gigantyczne straty, wpędzając nas w nieprzerwany cykl coraz potężniejszego chaosu, tym bardziej przerażającego w świetle coraz lepszej algorytmiki sztucznej inteligencji....
Nie.
Absolutnie nie. Żyjemy w świecie, gdzie sieć stacji benzynowych nie umie nabić rachunku, bo jej kasa fiskalna postawiona na Windows XP złapała robaka, na którego łatkę wydano siedem lat temu. Czy coś. Szkodniki nie rozpowszechniają się wskutek super-zaawansowanych luk w zabezpieczeniach, choć tych wykryto ostatnio tuziny, nierzadko bardzo blisko sprzętu. Ludzie szyfrują sobie dyski, bo otworzyli dokument "PDF" z ikonką Worda i rozszerzeniem .exe, przysłany na maila w domenie buziaczek.pl, z hasłem "alinka123". To niewiarygodne, ale właśnie taki wektor ataku dalej jest najskuteczniejszy. Ponownie myślałem, że wirusy w załączniku z lewą fakturą to jedynie bajki, jak dresiarze, discopolo, część elektoratu, jagodowe energetyki i kozaki z futerkiem. Przesadzone opowieści, snute celem reductio ad absurdum. Ale nie. Dziś bowiem dostałem taką właśnie fakturę na jednego ze swoich adresów e‑mail.
Wiadomość, odebrana telefonem w pracy, jest jak widać wstrząsająco wiarygodna. Gdy ochłonąłem po chwilowym zdębieniu i złapaniu się za głowę, pomyślałem że to dobra okazja do ponownego potwierdzenia mojej negatywnej opinii na temat oprogramowania antywirusowego. Postanowiłem załadować plik do skanera Virus Total, trwając w założeniu początkowym, że w pliku zostanie odnaleziony wirus, ale uda się to jedynie mikremu ułamkowi skanerów, w tym na pewno nie Avastowi i Defenderowi. Nie powinno szokować, że oczywiście tak właśnie było:
Obecnie sprawa się już nieco zmieniła. Plik jest oznaczany jako wirus już przez aż piętnaście (!!) silników. Bardzo zabawny opis widnieje przy nazwie podawanej przez Defendera. Wg wpisu na encyklopedii zagrożeń, szkodnik został wykryty "w locie", w ciągu "milisekund" i dzięki "uczeniu maszynowemu". To oczywiście bujda, bo kilka godzin wcześniej, Defender jakoś nie umiał wywnioskować z dostarczonej próbki, że zawiera ona szkodliwe oprogramowanie.
Gdy wróciłem do domu, postanowiłem zajrzeć do źródła odebranej wiadomości. Jako że wektor ataku jest naprawdę retro, spodziewałem się wręcz wpisów typu "X‑Mailer: Microsoft Outlook Express 6.0.2600.1106", bo tak opisane maile (z wirusami) dostawałem około roku 2004, do którego atak na mail z fakturą niewątpliwie najbardziej pasował. Znalazłem jednak nieco inne wynalazki.
- autorem wiadomości był rzekomo nadawca z domeny tlen.pl (nie pomnę), ale to sfałszowany nagłówek. Mail opakowywał nadawcę szkicu z adresu "rainfallvoq52 (a) yahoo.pl", co było już bardziej prawdopodobne (choć dalej dziwne), zwłaszcza, że...
- Wiadomość pochodziła z zo.vbxjhzux.yahoo.pl (czyżby), który odbił to do jakże światowego serwera p3166-ipadfx21sasajima.aichi.ocn.ne.jp i dopiero stamtąd powędrowało to do kuriera mx.tlen.pl, który posłał to do mnie.
- Obowiązkowo (oczywiście), w źródle widniał też nagłówek: "X-WP-AV: skaner antywirusowy Poczty o2" zapewniający mnie o sprawdzeniu wiadomości pod kątem bezpieczeństwa. Od razu jestem spokojniejszy.
Pozostało mi tylko pobrać wiadomość na VMkę, zrobić migawkę, odpiąć sieć, schowek oraz katalogi udostępnione i uruchomić tę wspaniałą wiadomość. Byłem bardzo ciekaw, jaki będzie tego efekt.
Mamy tutaj do czynienia z wzrocowym przykładem tzw. albańskiego wirusa. "Jestem wirusem z biednego i kiepsko zinformatyzowanego kraju. Proszę usuń sam swoje dane. Dziękuję.". Otworzyłem więc Edytor Visual Basic, przenosząc się wizualnie do roku 1997 i ujrzałem... zaciemniony kod. Trochę zaciemniony. Zaczynał się od 50 linii :D I był zaciemniony dość dziadowsko, pod koniec widać głupawo składany URL do pliku EXE. Złóżmy go. Złóżmy i pobierzmy! :)
Po odszyfrowaniu adresu URL z owego kodu, udało mi się pobrać plik z ładnym arbuzem w ikonce.
Jego również postanowiłem przeskanować na VirusTotal. Tym razem było lepiej. Wirusa wykrywa już aż siedemnaście skanerów! Oczywiście, Defendera ponownie wśród nich nie ma. Niestety, chyba dalej nie jesteśmy na wylocie tunelu żenady, bo wirus jest wykrywany jako downloader... czyli pewnie pobierze następnego szkodnika, wykrywanego przez trzy skanery więcej. Najpierw chcę jednak sprawdzić, co jest w środku tego pliku u zajrzę do jego zasobów. W pliku jest jeszcze więcej arbuzów, które nieźle napychają rozmiar tego pliku, ponieważ są w True Color. Są też dwa binarne bloby RCData, z zasobami PE. Cholera, nie znam się na tym za dobrze... Ale widzę, że plik skompilowano dzisiaj. Parę minut przed wysłaniem mi tego maila. Czyli świeży, jeszcze chrupiący. Napisany w Visual Studio, ma jeszcze ślady po plikach PDB (do których ścieżka składa się z losowych wyrazów w języku angielskim). Żadnych łańcuchów tekstowych, poza:
"501: rather horse most"
Więc bardzo sensownie. No nic, uruchomię to. Tylko wyłączę sieć w VMce. Program przez chwilę pracował z pełnym obciążeniem procesora. Tłukł po dysku. Nie nawiązał żadnych połączeń sieciowych, nie próbował nawet. Został przez chwilę w tle. Dysku mi nie zaszyfrował. Po restarcie, system wstał bez problemu. Co się w ogóle stało. Nic? Łe. Dobra, inny plan. Sprawdzę, co ten program usiłuje zrobić w Rejestrze. Przeskanuję system przed i po uruchomieniu. To powinno dać jakieś efekty, prawda? Otóż nie. Nie dało. Program AppDeploy Repackager, bardzo buracka metoda sprawdzania wszystkich zmian na dysku i w rejestrze, nie wykazał żadnej zmiany.
Ciekawe, czemu program nie zadziałał. Ostatni raz dostałem udawaną fakturę trzy lata temu. Załączony wirus również nie zadziałał. Może wykrył, że jest w maszynie wirtualnej? A może działa tylko na niezałatanych systemach, a moja VMka miała wszystkie aktualizacje? A może po prostu... był popsuty? Skoro metoda ataku jest tak tępa, to może jej twórca też...? Poszukajmy o tym pliku czegoś więcej.
Jest mało wyników. Ale jeden jest ciekawy. Z jakiejś włoskiej agenci bezpieczeństwa IT. Okazuje się, że jest statycznie podlinkowana do przechowywanej w środku biblioteki "VMCheck.dll". Czyli jednak. Nie działa w maszynie wirtualnej. A przynajmniej nie bez srogich kombinacji. Czyli jednak pewnie jest groźna. Ale ciekawe, co robi... Nikt nic nie wie. Analizatory są na VirtualBoksie, znalazły tyle, co ja. Antywirusy albo nie widzą zagrożenia, albo dają generyczne wyniki. Trochę smuteczek. Nie mam pod ręką żadnej maszyny fizycznej, na której mógłbym to bez strat odpalić. Będę musiał poczekać do przyszłego tygodnia.
Wtedy może będzie wiadomo więcej o naszym arbuzie i wrócimy do tematu. A może ktoś wie już teraz...?
Addendum
Dzięki pomysłowi eider_i128 na przepuszczenie programu przez silnik analizy wstecznej, udało się wyciągnąć kilka adresów IP oraz wysłanych żądań. Odpytuję adresy, żeby zobaczyć co serwują. Niestety, większość zgłasza 404, kilka pozostałych resetuje połączenie. Podejrzewam, że skoro nagłówek połączenia jest tak nietypowy (Media Center PC.....), to serwery odrzucają wszelką łączność brzmiącą inaczej. A to już jest wyższa złośliwość, jednak. Chyba trzeba użyć w tym celu żądania wysyłanego programem 'curl'.