Firma Check Point ostrzega eBay przed konsekwencjami, jakie może pociągnąć za sobą posiadanie nieszczelnego zabezpieczenia, które otwiera drzwi cyberprzestępcom i ułatwia im rozprzestrzenianie złośliwego oprogramowania oraz dokonywanie internetowych wyłudzeń.
eBay, międzynarodowy gigant rynku sprzedaży internetowej, obsługuje więcej niż 150 milionów aktywnych użytkowników w ponad 30 krajach na całym świecie. Nic dziwnego, że odnosząca sukcesy firma z rozległą bazą klientów jest celem ataków cyberprzestępców.
Checkpoint odkrył znaczne luki w platformie sprzedażowej serwisu eBay, które pozwalają hakerom na obejście etapu weryfikacji kodu i zdalne sterowanie wrażliwym kodem w celu wymierzenia ataku na użytkownika platformy za pomocą skryptu Java. Jeżeli eBay nie podejmie się załatania luki, klienci dalej będą narażeni na ataki phishingowe oraz utratę danych.
Żeby namierzyć użytkownika portalu i uśpić jego czujność, atakujący wysyła mu odnośnik do wiarygodnie wyglądającej strony ze zmodyfikowanym kodem. Jeżeli użytkownik otworzy link, przeglądarka bądź aplikacja mobilna uruchomi złośliwy kod, co pociągnie za sobą masę przykrych konsekwencji takich jak phishing czy nawet ściągnięcie pliku binarnego.
15 grudnia 2015 r., tuż po odkryciu luki, Check Point udzielił eBayowi szczegółowych informacji na temat znalezionej luki. Mimo tego, 16 stycznia 2016 r., portal wydał oświadczenie w którym zadeklarował, że nie planuje przeprowadzenia żadnej naprawy. Demo exploita jest cały czas dostępne.
Roman Zaikin, analityk pracujący dla Check Point Security, znalazł na eBayu lukę w zabezpieczeniach, która pozwala hakerom na uruchomienie złośliwego kodu na urządzeniu użytkownika serwisu poprzez wykorzystanie niestandardowej techniki „JSF**k”.
Luka umożliwia wirtualnym przestępcom wykorzystywanie eBaya jako narzędzia do phishingu oraz rozprowadzania złośliwego oprogramowania.
Żeby wykorzystać tę lukę, wystarczy otworzyć sklep internetowy na wspomnianej platformie handlowej. Następnie, w informacjach o sprzedawcy umieszcza się opis przedmiotu wraz ze złośliwym kodem.
eBay uniemożliwia użytkownikom wprowadzanie skryptów lub ramek typu iFrame poprzez filtry wyłapujące elementy kodu HTML. Jednak poprzez wykorzystanie „JSF**k”, można stworzyć kod, który załaduje dodatkowy skrypt Java z serwera osoby dokonującej ataku. Takie działanie pozwala jej na wstawienie zdalnie sterowanego JavaScriptu, który można dostosować do m.in. stworzenia danych przeznaczonych dla różnych rodzajów przeglądarek i systemów operacyjnych.
eBay dokonuje prostej weryfikacji polegającej jedynie na usuwaniu znaków alfanumerycznych z tagów zawartych w skrypcie. Wspomniana technika „JSF**k” pozwala na obejście tego zabezpieczenia poprzez użycie ograniczonego zbioru znaków.
Okienko, które pokazuje się po załączeniu zdalnego skryptu Java na stronie internetowej:

Fragment prostego skryptu JSF**k:

Atak na użytkownika zakończony sukcesem:

Obrazek 1 – okienko w systemie iOS

Obrazek 2 – okienko w systemie Android
Na powyższym zrzucie ekranu widać okienko, które wyskakuje w aplikacji mobilnej eBaya (tutaj na witrynie sklepu należącego do wymierzającego atak), zachęcając niczego nie spodziewającego się użytkownika do ściągnięcia nowej aplikacji eBaya z opcją jednorazowego rabatu.
Przykładowo, jeżeli ofiara ataku kliknie przycisk „download”, rozpocznie się ściąganie złośliwego oprogramowania na urządzenie.
CheckPoint mówi..
„Metoda ataków na eBayu znacznie ułatwia cyberprzestępcom namierzanie jego użytkowników: żeby zainfekować urządzenie wystarczy wysłać link do atrakcyjnego produktu. Głównym zagrożeniem płynącym z tego typu ataku jest rozprzestrzenianie złośliwego oprogramowania oraz kradzież prywatnych danych. Co więcej, atakujący może także podmienić okienko logowania Gmaila czy Facebooka i przejąć konto użytkownika”, twierdzi Oded Vanunu, manager zespołu ds. badań nad bezpieczeństwem w firmie Check Point.” „Check Point nie spoczywa na laurach i nadal rozgląda się za lukami w popularnych aplikacjach i serwisach internetowych. Dzięki informowaniu o zagrożeniach, tak jak zrobiliśmy to dziś, możemy budować bezpieczną przyszłość.”
O JSF**k
Technika opracowana przez Martina Kleppe opiera się na znakach niealfanumerycznych i pozwala na pominięcie czyszczenia danych pakietowych tj. IDS, IPS i WAF. Używa się tylko 6 znaków: []()!+
Poniżej spis podstawowych znaków, który pozwoli napisać wszystko, czego potrzebujemy:
-
[ i ] – dostęp do szerokiego wachlarza elementów, właściwości obiektów, zdobywanie numerów i przydzielanie ich do łańcuchu znaków
-
( i ) – wywoływanie funkcji i unikanie błędów parsowania
-
+ – dołączanie łańcuchu znaków, zsumuj i przydziel fragmenty do numerów.
-
! – rzutowanie elementów na zmienne typu boolean.
Na ten moment, jedyne co możemy zrobić to mieć nadzieję, że eBay postanowi w końcu poczynić odpowiednie kroki ku uszczelnieniu swojego systemu.
