W niezwykłym sposobie na opróżnianie kont polskich klientów banków pomógł Windows

W ostatni piątek otrzymaliśmy SMS-a z firmy ESET z informacją,że analitycy tej firmy natrafili na ataki wymierzone w użytkownikówe-bankowości pięciu dużych polskich banków. Potraktowaliśmy tobez szczególnej ekscytacji – ot, kolejne malware, które roznosisię przez załączniki e-maili i atakuje przeglądarki internetowe.Ciekawe było tylko to, że robak przejmował jedynie transakcjeopiewające na 10 tys. zł i więcej. A jednak teraz, poprzestudiowaniu analiz odkrywców zagrożenia, zmieniamy zdanie.Win32/BackSwap to jeden z najbardziej pomysłowych szkodników jakieostatnio widzieliśmy, który z łatwością obszedł zabezpieczeniaprzeglądarek, ponieważ tak naprawdę w ogóle nie atakujeprzeglądarek.

Hijacking w przeglądarce z depositphotos
Hijacking w przeglądarce z depositphotos

28.05.2018 | aktual.: 28.05.2018 21:55

Zaraz zaraz, zapytają uważni Czytelnicy, skoro mowa oprzeprowadzaniu ataków na operacje e-bankowości, wykonywane przezprzeglądarki internetowe, to jak miałyby się one odbyć bez atakówna przeglądarki, by podmienić numer rachunku docelowego?Przyjrzyjmy się najpierw temu, jak zwykle wygląda taki proces.

Typowy szkodnik służący do wykradania pieniędzy poprzezmanipulacje interfejsem bankowości elektronicznej próbujewstrzyknąć złośliwy kod w przestrzeń adresową przeglądarki,dopasowując kod ten do jej architektury (32- lub 64-bitowej) istosując liczne techniki pozwalające na ominięcie zabezpieczeń.Kod nie może być jednak wstrzyknięty w dowolne miejsce. Napastnikmusi znaleźć odpowiednie dla danej przeglądarki funkcjeodpowiedzialne za wysyłanie i odbieranie żądań HTTP przed i poich szyfrowaniu. Najtrudniej zrobić to z przeglądarkamichromopodobnymi, które funkcje te głęboko ukrywają w binarce,najłatwiej z Firefoksem, który nazwy funkcji ujawnia przez swojąbibliotekę sieciową.

Jeśli wstrzyknięcie się powiedzie, szkodnik może jużmodyfikować ruch sieciowy z witryną bankową albo też kierowaćofiarę na fałszywą phishingową witrynę bankową, by za jejpomocą wydobyć dane logowania i kody potwierdzenia transakcji. Wten właśnie sposób działają najbardziej znani „cyberzłodzieje”,trojany takie jak Zbot, Dridex czy Ursnif.

W ostatnich latach zabezpieczenia przeglądarek stały sięznacznie lepsze, a więc ich atakowanie było coraz trudniejsze. Jako że cyberprzestępcy są w tej kwestiipragmatykami, większość z nich przerzuciła się na łatwiejszemetody zarabiania na ofiarach na czele z ransomware i koparkamikryptowalut. Odkryty przez analityków ESET-a Win32/BackSwap działajednak zupełnie inaczej. Można powiedzieć, że jego twórcy wpewnym momencie doznali olśnienia w kwestii tego, co właściwiedotąd robili.

Funkcje Windowsa pomogą w ataku

Po co kombinować z wstrzykiwaniem złośliwego kodu w mocnochroniony proces przeglądarki, skoro można przejąć kontrolę nadinterfejsem Windowsa i programistycznie symulować jego interakcje zprzeglądarką? Może i prostackie, ale najwyraźniej bardzoskuteczne. Interfejs programowania Windowsa oferuje cały zbiórwydarzeń potrzebnych do monitorowania paska adresowego i innychelementów interfejsu użytkownika przeglądarki i metodpozwalających na interakcje z nimi. Szkodnik czeka więc na aktwpisania w pasek adresowy konkretnych adresów URL banków i zmianytytułów okien na takie, które świadczyć mogą o chęci zrobieniaprzelewu.

Monitorowanie adresu URL w przeglądarce przez Win32/BackSwap (źródło: ESET)
Monitorowanie adresu URL w przeglądarce przez Win32/BackSwap (źródło: ESET)

Gdy odpowiedni adres zostanie wykryty, szkodnik po prostusymulował naciśnięcie klawiszy otwierających konsolędeweloperską (Ctrl-Shift-J lub Ctrl-Shift-K), a potem symulowałnaciśnięcie klawiszy wklejenia w kod strony zawartości schowka(Ctrl-V), by wreszcie zasymulować naciśnięcie Enter, zamknięciekonsoli – i już na stronie banku działa prosto, lecz eleganckouzłośliwiony kod. Nowsze odmiany Win32/BackSwap robią to jeszczesprytniej. Wykorzystują po prostu protokół wklejania koduJavaScriptu do paska adresowego: najpierw symulują kombinacjęklawiszy uaktywnienia paska adresowego (Ctrl-L), potem symulująwpisanie z klawiatury prefiksu javascript:, by wreszcie wkleićzłośliwą zawartość w pasek przez Ctrl-V i uruchomić jązasymulowaniem naciśnięcia Enter. Oczywiście na koniec czyści sięzawartość paska adresowego, by użytkownik nie zauważył tamniczego podejrzanego.

Dzięki temu ulepszeniu Win32/BackSwap działa już praktycznie zkażdą przeglądarką, a nie tylko tymi z konsolami deweloperskimiFirefoksa czy Chrome. Wystarczy, by przeglądarka była w stanieuruchomić kod JavaScriptu z paska adresowego, a to przecieżstandardowa funkcja często wykorzystywana przez tzw.skryptozakładki – małe programiki, które zapamiętujemy wprzeglądarce jako zakładki zawierające kod.

Oczywiście to, jaki skrypt zostanie wklejony w pasek adresowyzależy już od tego, z którego e-banku używa ofiara –niezawodnie podmieniaja one zawartość stron wykorzystywanych doinicjowania przelewów, wpisując adres innego konta bankowego.Zabezpieczenia w rodzaju dwuetapowego uwierzytelniania nic tu niepomogą, ponieważ nieświadoma ofiara sama chce wykonać przelew isama poda odpowiednie kody zabezpieczające.

E-bankowość lepiej zwirtualizować

Jak się najlepiej zabezpieczyć przed tego typu atakami, któreniewątpliwe zyskają w najbliższych miesiącach na popularności?Oczywiście możecie pamiętać o permanentnym aktualizowaniuWindowsa i antywirusa, ale czy na pewno to pomoże?

Naszym zdaniem najlepszym rozwiązaniem jest wirtualizacjaprzeglądarki wykorzystywanej do e-bankowości. Najprościej zrobićto tak, by np. zainstalować sobie w Windowsie hiperwizor VirtualBox,a następnie zainstalować w nim np. wirtualne Ubuntu18.04 z opcją minimalnej instalacji – tak byśmy dostali tylkopodstawowe narzędzia, pulpit i przeglądarkę Firefox. Późniejmożna wykonywać wszystkie operacje bankowe wewnątrz linuksowejmaszyny wirtualnej. Malware takie jak Win32/BackSwap po prostu niejest w stanie być kompatybilne z zupełnie innym systememoperacyjnym, swojego wklejania złośliwego kodu w przeglądarkęzrealizować nie będzie mogło.

Programy

Zobacz więcej
Wybrane dla Ciebie
Komentarze (155)