Phishing polskich banków.

warning

Artykuł ten dotyczy phishingów ukierunkowanych na klientów polskich banków. Znajdziesz w nim odpowiedz na następujące pytania:

1. W jaki sposób phishing znalazł się na Twoim komputerze (dla początkujących).
2. Jak rozpoznać phishing (dla początkujących).
3. Jak się ustrzec przed phishingiem (dla początkujących).
4. Analiza uploadu złośliwego oprogramowania do maszyny ofiary.


 
Ad 1. W jaki sposób phishing znalazł się na Twoim komputerze ?

Należy zdać sobie sprawę, że od pewnego czasu nastąpiła zmiana w sposobie “namawiania” ofiary do odwiedzenia fałszywej strony. Dotychczas atakujący rozsyłał tysiące wiadomości, w których to podszywał się np. pod administratora banku  i w związku z awarią systemu prosił o zalogowanie się i potwierdzenie swoich danych. Oczywiście w wiadomości wskazywany był adres kierujący do strony łudząco przypominającej prawdziwą stronę banku. Po pewnym czasie metoda ta przestała być efektywna, ponieważ przeciętny użytkownik stał się bardziej czujny na tego typu wiadomości i nie było tak łatwo namówić go do odwiedzenia strony.

Tego typu ataki przeszły praktycznie do historii (mówię tu oczywiście o phishingu polskich banków). Od dłuższego czasu (rok, może więcej) nie zanotowaliśmy takiego zgłoszenia.

Jak więc wygląda współczesny phishing i skąd się spodziewać ataku?
Zacznę od stwierdzenia, że użyte powyżej sformułowanie “namawiania ofiary” w przypadku ostatnio obserwowanych phishingów nie oddaje istoty zjawiska. Cały mechanizm bazuje na złośliwym oprogramowaniu instalowanym na komputerze ofiary (oczywiście bez jej wiedzy). Infekcja następuje zazwyczaj po odwiedzeniu strony WWW. W tym momencie zapewne pojawia się pytanie, jak ofiara trafia na taką stronę i co to są za strony ? Przestępca nie próbuje wskazać adresu ofierze. Stara się za to dopisać złośliwy kod do jak największej liczby witryn. Oczywiście najlepiej gdyby była to popularna strona, odwiedzana przez dużą liczbę użytkowników (patrz nasz wcześniejszy artykuł Zagrożenie na www.pajacyk.pl – jednak malware, a nie reklama).

Mechanizm infekcji i podszywania się pod bank.
Jak wspomniałem, do kodu strony WWW zostaje dopisane “coś złośliwego”. Jest to zazwyczaj zaciemniony skrypt JavaScript. Z punktu widzenia użytkownika jest on niewidoczny. W przeglądarce nie pojawiają sią żadne dodatkowe obrazy czy tekst. Jednym słowem wszystko wydaje się być w porządku. W tle natomiast skrypt sprawdza kilka najpopularniejszych dziur np. w Internecie Explorerze, Firefoksie, Operze, Adobe Readerze czy kontrolkach ActiveX. Jeśli takową znajdzie, następuje załadowanie i uruchomienie za jej pośrednictwem złośliwego oprogramowania. Jest ono zazwyczaj ściągane z serwera zewnętrznego, bardzo często znajdującego się w Chinach czy Rosji. W następnej fazie złośliwe oprogramowanie ukrywa się w systemie i zaczyna nasłuchiwać połączeń do dedykowanych banków. Klient odwiedza stronę banku, podaje swój identyfikator i hasło do konta bankowego… Do tego momentu wszystko odbywa się prawidłowo. Jednak po kliknięciu w klawisz “zaloguj” pojawia się fałszywa strona z prośbą o podanie kilku kolejnych kodów jednorazowych. Po podaniu danych, są one wysyłane na serwer kontrolowany przez przestępcę. Ofierze zostaje zwrócona strona z komunikatem o niepoprawnym logowaniu.
Istnieje również wariant, w którym wyłudza się kody jednorazowe wysyłane za pośrednictwem sms’a (na razie wykorzystywany na niewielką skalę). Oszustwo odbywa się podczas dokonywania transakcji. Ofiara wykonuje zdefiniowany przez siebie przelew, dochodzi do momentu kiedy prosi bank o przesłanie kodu sms’owego i tutaj złośliwe oprogramowanie przejmuje prośbę, uzupełnia ją swoimi danymi i wysyła do banku. Ofiara dostaje smsa, w którym jest potwierdzenie transakcji dokonanej przez przestępcę. Jeśli nie zwróci uwagi na jego treść potwierdzi nie swoją operacje.

Ad 2. Jak rozpoznać phishing ?

Oto kilka ogólnych porad:
-  strona logowania do Twojego banku znajduje się pod adresem “https://…..”. Nigdy nie powinien pojawić się adres “http://…..”.
- adres zazwyczaj jest zwięzły i nie zawiera dodatkowych nieznanych Ci ciągów. Dla przykładu strona Twojego banku to otobank.pl. Adresy “https://otobank.pl/”, “”https://otobank.pl/logowanie.php” można uznać za poprawne. Adresy “https://otobank.pl.tutaj.jakis.dziwny.adres/” lub “https://otobank.pl.tutaj.jakis.dziwny.adres/logowanie.php” są podejrzane.
- właścicielem certyfikatu, którym podpisana jest strona jest Twój bank. Przysłowiowa “kłódka” w pasku adresu jest zielona. Każda inna sytuacja jest podejrzana. Muszę zaznaczyć, że spotkaliśmy się z phishingiem gdzie atakujący potrafił sfałszować “zieloną kłódkę”.
- wyświetliła się strona z prośbą o podanie kliku kolejnych kodów jednorazowych. Sytuacja niedopuszczalna. Żaden bank nie pyta o więcej niż jeden kod naraz.
- w przesłanym przez bank smsie potwierdzającym transakcje znajdują się inne dane, aniżeli podane przez Ciebie na stronie WWW.
- jesteś zalogowany do swojego konta. Po wykonaniu jakiejś operacji nagle zostajesz wylogowany i pojawia się komunikat o “Niepoprawnym numerze klienta”, “Błędzie logowania” czy “Niepoprawnym identyfikatorze, haśle”. Nie każda taka sytuacja świadczy, że coś poszło nie tak, ale w takim wypadku zachowaj szczególną czujność.

Ad 3. Jak się ustrzec przed phishingiem ?

Nie ma jednoznacznej recepty, ani pewnego sposobu na ustrzeżenie się przed phishingiem. Należy jednak pamiętać o kilku fundamentalnych zasadach:
- jeśli używasz Windowsa i Twój system na to pozwala, to używaj aktualizacji automatycznych. Jeśli nie, to ściągnij poprawki za pośrednictwem windowsupdate.microsoft.com. Pojawiają się w każdym drugi wtorek miesiąca.
- zainstaluj program antywirusowy oraz dbaj o aktualizacje baz wirusów.
- używaj firewalla.
- nie odwiedzaj podejrzanych stron.
- ponieważ infekcja odbywa się z wykorzystaniem JavaScript, to wyłączenie w przeglądarce ich obsługi znacznie zmniejsza ryzyko. Niestety wiele legalnych stron jest opartych na JavaScriptach, więc trudno całkowicie z nich zrezygnować. Rozwiązaniem pośrednim jest używanie przeglądarki Firefox z dodatkiem NoScript.
- nigdy nie podawaj więcej niż jednego kodu jednorazowego.
- zawsze sprawdzaj dane zawarte w smsie potwierdzającym transakcje.
- zawsze zwracaj uwagę na “zieloną kłódkę”.
- zawsze sprawdzaj “https://” oraz wystrzegaj się dziwnych nazw znajdujecych się w adresie wyświetlanym w przeglądarce.
- korzystaj z wbudowanych w przeglądarce filtrów witryn wyłudzających dane.

Ad 4. Analiza uploadu złośliwego oprogramowania do maszyny ofiary.

Jak wspomniałem powyżej, ładowanie złośliwego kodu do maszyny ofiary odbywa się w momencie odwiedzin strony WWW. Oczywiście atakujący wcześniej dokonuje włamania do tejże strony i dopisuje do niej kod JavaScript. Dla zwykłego użytkownika jest on zupełnie nieczytelny i nie wzbudza podejrzeń. Co ważniejsze, jest niewidoczny podczas przeglądania strony. Przykład takiego kodu poniżej:

code_1

Co ciekawe, tego typu JavaScripty znaleźliśmy na wielu stosunkowo popularnych serwisach (o stronach na prywatnych serwerach nawet nie wspomnę).
Taki kod faktycznie jest nieczytelny i może przysporzyć wiele problemów podczas prób jego interpretacji. Bardzo wielu administratorów , do których zgłaszaliśmy tego typu incydenty miało problem ze zrozumieniem sedna sprawy. Z niedowierzaniem przyjmowali tłumaczenia, że kod robi coś złego. Wielokrotnie słyszeliśmy, że to programista pisał stronę i to on umieścił ten kod, który zresztą jest prawidłowy i to niemożliwe, żeby strona infekowała osoby odwiedzające. Czymże zatem jest ten kod ?
Niczym innym jak iframe’em kierującym do kolejnej strony:

code_2

W wyniku wykonania powyższej funkcji przeglądarka pobiera strone spod adresu http://*******.cn/*****.html.
Na niej mamy kolejny zaciemniony JavaScript. Atakujący zastosowali bardzo prosty, ale zarazem pomysłowy i skuteczny trik. Na stronie wyświetlany jest komunikat “Not Found” co na pierwszy rzut oka może sugerować, że strona nie istnieje. Nic bardziej mylnego.
Kod strony:

code_3

Po wykonaniu JavaScriptu otrzymujemy kolejne iframe’y:

code_4

Dla uproszczenia nie będę pokazywał wszystkich iteracji. Wystarczy, że powiem o wykonaniu jeszcze dwóch JavaScriptow i przekierowaniach do 3 kolejnych witryn, po to aby finalnie wykonać w przeglądarce poniższy kod expolita:

code_5

W tym przypadku exploit jest generowany w zależności od używanej przeglądarki, i tak dla IE jest serwowany exloit wykorzystujący dziurę w IE, dla Opery exploit wykorzystujący dziurę w Operze itd.. Często na finalnej stronie znajduje się skrypt próbujący exploitować nawet po kilkanaście dziur w popularnych usługach czy programach.

Reasumując:
Jak łatwo zauważyć mechanizm infekcji jest bardzo zagmatwany. Złośliwe oprogramowanie znajduje się kilka przeskoków od pierwotnie odwiedzanej strony, a do jego ukrycia są wykorzystywane specjalne mechanizmy pod postacią zaciemnionych JavaScriptów czy komunikatów “404 Not Found”. Cały proces jest niewidoczny dla odwiedzającego stronę WWW i kończy się ściągnięciem i uruchomieniem złośliwego oprogramowania.

W następnym odcinku opiszę pokrótce co dzieje się po zainfekowaniu maszyny ofiary, jak wygląda komunikacja z serwerem C&C, w jaki sposób jest wyświetlany phishing oraz jak wyglądają fałszywe strony banków.

Tags: , , , , , , , , , , ,

Comments are closed.