O tym, jak przy użyciu socjotechniki i specjalnie skonstruowanego urządzenia można przejmować systemy od wewnątrz infrastruktury pisaliśmy w artykule CYFROWY KOŃ TROJAŃSKI. Niektórzy z Was mogli również ostatnio usłyszeć o fali ataków cyberprzestępców o nazwie DarkVishnya opisanych w artykule Kaspersky LAB, targetowanych na banki Europy wschodniej, o której pisaliśmy też na Kapitanie Hacku tutaj.

W tym artykule opiszemy inne ciekawe urządzenie do hackowania komputerów ukryte w kablu USB o nazwie USBNinja.


Kabel USB z backdoorem?


Wszyscy używamy kabli USB do podpinania naszych ulubionych dysków, telefonów i innych urządzeń do komputera. Lecz czy przyszło Ci kiedykolwiek na myśl, że taki kabel może zawierać w sobie specjalistyczny mikrochip umożliwiający zdalne zarządzanie i przejęcie kontroli nad Twoim komputerem? Jak się okazuje dla twórców projektu USBNinja stało się to możliwe i nie maja żadnego problemu, aby wykonać taki atak (zobacz tutaj jak)

Hackowanie USB nie jest nowością, ale sposób w jaki to „opakowano”. Lecz zanim przejdziemy do opisania „tajemniczego urządzenia” warto byłoby cofnąć się do historii, do źródeł hackowania USB.


Jakie były początki hackowania USB?


W 2014 roku dwóch hackerów na konferencji Black Hat w USA zademonstrowało coś, co nazwali “BadUSB”, pokazując jak można przeprogramować mikrokontroler z napędem flash USB w celu sfałszowania różnych typów urządzeń i następnie przejęcia kontroli nad komputerem. Udało im się w pełni skompromitować system, wykorzystując jedynie port USB i samo rozprzestrzeniający się wirus, który był niewykrywalny w tym czasie przez ówczesne specjalistyczne oprogramowanie do bezpieczeństwa. Po prezentacji tych dwóch Panów na „czarnym rynku” zaczęły powstawać różne inne ciekawe urządzenia udające np. pendrive lub zawierające tajemniczy układ schowany w obudowie np. podgrzewacza do kawy. Wszystko po to, aby fizycznie atakujący mógł włamać się do komputera ofiary.


Miniaturyzacja urządzenia i ciekawy pomysł na schowanie backdora


Na ciekawe urządzenie z backdoorem musieliśmy poczekać aż cztery lata od słynnej prezentacji hackerów na konferencji Black Hat.
Rozwój technologii i miniaturyzacji sprawił, że dopiero cztery lata później ludzie z RFID Research Group zaprojektowali kabel USB z wbudowanym kodem „BadUSB”, który może być wyzwalany bezprzewodowo w celu dostarczenia dowolnego payloadu (automatycznie odpalającego się złośliwego kodu malware). Przykłady złośliwego kodu, w szczególności tego używającego języka PowerShell publikowaliśmy na Kapitanie Hacku w innych artykułach.
USBNinja działa jako standardowy kabel USB do zasilania oraz przesyłania danych od i do każdego podłączonego urządzenia. W obudowie kabla znajduje się jednak niewielka jednostka Bluetooth, która oczekuje na polecenie bezprzewodowe, aby uwolnić swój payload (złośliwy kod malware), co odbywa się za pośrednictwem aplikacji mobilnej lub niestandardowego pilota Bluetooth firmy USBNinja.

Kabel działa identycznie jak zwykły kabel USB, dopóki sterownik bezprzewodowy nie uruchomi go, aby dostarczyć wybrany payload

Urządzenie wzbudziło duże zainteresowanie w środowisku pentesterów i hackerów oraz sam Kevin Mitnick – jeden z najbardziej znanych włamywaczy z lat 90’ zainteresował się nim i zaprezentował jego działanie na YouTube:



Sposób działania i atak USBNinja zobaczycie także na profilu Vincenta Yiu na YouTube:


USBNinja – możliwości od strony sprzętowej


Jeśli chodzi o stronę sprzętową USBNinja występuje w trzech wersjach – Micro-USB, USB Type C i Lightning (dla użytkowników Apple), z których każdy kabel oferuje takie samo napięcie i prąd jak ich rzeczywiste odpowiedniki (od 4 do 25V przy 10 mA). Pilot do zdalnego sterowania jest wyposażony w bezprzewodowe łącze Bluetooth o wysokiej mocy, jest wyposażony w akumulator 3.6V, 40mAh i ma zasięg od 30 do 100 metrów przy użyciu anteny 2, 3 lub 18-dbi. Do zdalnej kontroli możemy też użyć aplikacji na smartfona, więc zasięg zależy od wbudowanej funkcji Bluetooth urządzenia.

Mały moduł Bluetooth wyposażony w MCU i ukryty po wewnętrznej stronie pokrywy złącza USB

USBNinja – możliwości od strony programistycznej


Jeśli chodzi o oprogramowanie USBNinja można go zaprogramować za pomocą standardowego języka Arduino IDE lub języka C wgrywając do niego niestandardowe payloady. Grupa badawcza RFID stwierdziła, że będzie przygotowywać przykładowe payloady dostępne do pobrania za jakiś czas. Ciekawostką jest, że dostęp do bootloadera urządzenia odbywa się za pomocą bezdotykowego magnesu, który zapewnia jego aktywacje i pozwala przesłać swój kod.

Obecnie firma, która skonstruowała urządzenie szuka finansowania w ramach usługi Crowd Supply. Zainteresowani mogą zainwestować 79 USD lub więcej i otrzymać kabel, pierścień magnetyczny i aplikację na telefon. Za 150 USD lub więcej dostaniemy dodatkowy zdalny pilot z kablem do ładowania.


Czy jest się czego bać? Jak się chronić?


Wyobraźmy sobie sytuację, w której ktoś podrzuca lub rozdaje dla pracowników w firmie takie kable USB. Następnie ukrywa w niej inne urządzenie np. takie jak opisywaliśmy tutaj i za pomocą Bluetooth aktywuje funkcje uruchomienia payload (złośliwego kodu) we wszystkich kablach. Może to zrobić nawet przez Internet! W tym momencie może wykonać atak na niezabezpieczone komputery i infrastrukturę.

Wracając do pytania – w kwestii obaw przez USBNinja uważamy, że jak najbardziej jest się czego bać. Współczesna miniaturyzacja sprzętu i metody ataków powodują, że cyberprzestępcy kierują się coraz to nowymi metodami, które są niewykrywalne przez specjalistyczne oprogramowanie. Również jak obserwujemy w firmach, a także wśród indywidualnych użytkowników problem ochrony i kontroli podpinanych urządzeń USB do komputerów nie jest zaimplementowany w należyty sposób lub co jest bardziej martwiące nie ma go wcale. Również zmartwieniem jest to, że istnieje na rynku specjalistyczne oprogramowanie, które najzwyczajniej w Świecie nie zauważają tego typu urządzeń (posiadają luki) lub są skonfigurowane w nieodpowiedni sposób. Dlatego zalecamy przetestowanie swoich systemów bezpieczeństwa w odpowiedni sposób.

O zwalczaniu i radzeniu sobie z tego typu przypadkami (zagrożeniami) w firmach, monitorowaniu i kontroli zagrożeń wewnętrznych pisaliśmy na Kapitanie Hack’u: tutaj i tutaj.

Oczywiście żadne specjalistyczne oprogramowanie do bezpieczeństwa nie uchroni nas tak jak własna świadomość i uwaga na to, co podpinamy do naszego komputera. Bądźcie czujni i zwracajcie uwagę na to, czy kabel posiada certyfikat producenta i nie wygląda inaczej (jest oryginalny).

Pozdrawiam,
Kapitan Hack

Podziel się z innymi tym artykułem!