Ucz się na przykładzie

https://chacker.pl/

Teraz, gdy zapoznałeś się z SDR, przejdziemy przez proces oceny nowego urządzenia, abyś mógł nauczyć się, jak korzystać z SDR i powiązanego oprogramowania. Przez resztę tego rozdziału będziemy używać systemu Ubuntu z narzędziami HackRF SDR i GNU Radio do oceny wewnętrznego urządzenia do gniazdka zasilania bezprzewodowego. Nie ma nic szczególnego w tym wyborze urządzenia, poza tym, że znajdowało się ono w moim obecnym inwentarzu i jest wystarczająco proste, aby omówić je. HackRF został wybrany ze względu na połączenie funkcji, ceny i łatwości dostępu. Oprogramowanie używane w całym rozdziale powinno działać z dowolną z niedrogich platform SDR. Ogólny proces, który zastosujemy w tym rozdziale, jest znany jako SCRAPE, co oznacza wyszukiwanie, przechwytywanie, odtwarzanie, analizowanie, podgląd i wykonywanie.

Nie tak szybko: poznaj zasady

https://chacker.pl/

Jeśli weźmiemy pod uwagę liczbę urządzeń bezprzewodowych, którymi jesteśmy otoczeni — radia, telefony, satelity, Wi-Fi itd. — logiczne jest, że powietrze kontroluje organ zarządzający. Dwa takie organy zarządzające to Federal Communications Commission (FCC) i International Telecommunication Union (ITU). W Stanach Zjednoczonych FCC reguluje widmo RF, a do transmisji w większości widma RF za pomocą nielicencjonowanego urządzenia, takiego jak SDR, trzeba mieć licencję. Aby uzyskać licencję na obsługę radia, trzeba zdać egzamin, aby wykazać się znajomością zasad i przepisów. Odwiedź stronę www.arrl.org, aby dowiedzieć się więcej o licencjonowaniu i zasadach legalnej obsługi radia.

Co kupić

https://chacker.pl/

Teraz, gdy masz pojęcie, czym jest SDR, czas znaleźć nową zabawkę. Niektóre przykłady SDR to HackRF, bladeRF i USRP. Każdy z nich wykorzystuje port USB w komputerze i może być używany z oprogramowaniem typu open source, takim jak GNU Radio. Częstotliwość robocza określa, do jakich częstotliwości radio może się dostroić. Na przykład Bluetooth działa w zakresie od 2,4 GHz do 2,48 GHz na 40 do 80 kanałach, w zależności od wersji. Radio FM działa w zakresie od 87,8 MHz do 108 MHz na 101 kanałach. Dostępne są dodatki, takie jak Ham It Up Nano, które skutecznie obniżają ich dolne limity.

Szerokość pasma to ilość widma RF, które może zostać zeskanowane przez aplikację/urządzenie. Wymienione szerokości pasma są publikowane na odpowiednich stronach internetowych, ale mogą się różnić w zależności od załadowanego oprogramowania układowego. Na przykład oprogramowanie układowe HackRF w wersji 2017.02.01 lub nowszej obsługuje tryb przeszukiwania, który umożliwia urządzeniu przeszukiwanie pełnego zakresu 6 GHz. Jedną z potencjalnych korzyści zwiększonej szerokości pasma jest możliwość jednoczesnego monitorowania wszystkich kanałów Bluetooth (80 MHz).

Dupleks odnosi się do sposobu, w jaki dwa systemy mogą się ze sobą komunikować. Pełny dupleks oznacza, że ​​urządzenie może jednocześnie nadawać i odbierać. Półdupleks, jak zapewne zgadłeś, oznacza, że ​​urządzenie może nadawać i odbierać dane, ale nie w tym samym czasie. Przykładami komunikacji półdupleksowej są krótkofalówki i wiele komputerowych aplikacji Voice over IP (VoIP). Gdy obie strony próbują mówić w tym samym czasie, dochodzi do kolizji i utraty danych. Chociaż pełny dupleks jest bardziej elastyczny, dupleks SDR prawdopodobnie nie będzie utrudniał skuteczności analizy.

Rozdzielczość konwersji analogowo-cyfrowej (ADC) odnosi się do liczby odrębnych wartości napięcia, jakie może przyjąć każda próbka. Na przykład 8-bitowy ADC o zakresie napięcia 4 V ma rozdzielczość 15,6 mV, czyli 0,39 procent. W połączeniu z częstotliwością próbkowania, większa rozdzielczość ADC bitów skutkuje dokładniejszą reprezentacją cyfrową sygnału analogowego. Opublikowane szybkości próbek na sekundę zależą od przepustowości USB, procesora, przetwornika ADC i rozmiaru na próbkę. Na przykład wartość USRP B200 wynosząca 61 MSps jest oparta na użyciu 16-bitowych próbek kwadraturowych; jednak system można skonfigurować tak, aby używał 8-bitowych próbek kwadraturowych, co skutecznie podwaja przepustowość próbek na sekundę. Niższa obsługiwana wartość próbki HackRF na sekundę jest zarówno wynikiem wybranego ADC, jak i przepustowości USB. Oprócz zakupu SDR prawdopodobnie będziesz musiał kupić kilka kabli, obciążeń pozornych, tłumików i anten o różnych zakresach częstotliwości. Do testowania urządzeń w laboratorium przydatne są anteny kierunkowe, które pomagają w izolowaniu źródeł. Na koniec, choć nie jest to konieczne, prosta komora izolacyjna (lub skrzynka) może być niezwykle przydatna w przypadku typowych częstotliwości, takich jak 2,4 GHz.

Pierwsze kroki z SDR

https://chacker.pl/

SDR to radio, które jest implementowane przy użyciu modyfikowalnych komponentów programowych do przetwarzania surowych danych, zamiast polegać wyłącznie na sprzęcie RF specyficznym dla aplikacji i procesorach sygnału cyfrowego. SDR wykorzystuje zasoby procesora ogólnego przeznaczenia, takiego jak komputer z systemem Linux, do przetwarzania sygnału, wraz ze sprzętem RF ogólnego przeznaczenia do przechwytywania i przesyłania danych. Zalety SDR obejmują możliwość przetwarzania szerokiej gamy sygnałów i częstotliwości w ramach jednego (i potencjalnie zdalnie aktualizowanego) pakietu oprogramowania układowego. Ponadto SDR zapewnia deweloperom/badaczom elastyczność podczas prototypowania nowych systemów.

Radio definiowane programowo

https://chacker.pl/

Urządzenia bezprzewodowe można znaleźć we wszystkich aspektach naszego życia. Chociaż urządzenia te dają nam większą swobodę, eliminując przewody, otwierają również powierzchnie ataków zbliżeniowych i zdalnych. Na przykład czujnik, który jest podłączony na stałe i nie jest wystawiony na widok publiczny, jest znacznie trudniejszy w dostępie niż czujnik bezprzewodowy, którego zasięg przekracza obwód budynku. Oczywiście sam dostęp do sygnału bezprzewodowego nie gwarantuje, że można przeprowadzić niegodziwe działania, ale z pewnością otwiera drzwi. Hakerstwo częstotliwości radiowej (RF) jest zbyt skomplikowanym tematem, aby odpowiednio omówić go w jednym rozdziale. Naszym celem jest użycie prostego urządzenia, aby zapoznać Cię z niedrogim radiem definiowanym programowo (SDR), oprogramowaniem typu open source dla SDR oraz procesem oceny i testowania produktów, które wykorzystują niestandardowe lub półniestandardowe protokoły bezprzewodowe do komunikacji

Podsumowanie

https://chacker.pl/

Tu zaprezentowano analizę podatności, zarówno ze statycznego, jak i dynamicznego punktu widzenia. Zaprezentowano w nim również wykorzystanie ataku polegającego na wstrzykiwaniu poleceń zarówno z dynamicznego, jak i emulowanego punktu widzenia. W tym drugim przypadku dowiedziałeś się, że podatności można odkryć, a exploity proof-of-concept można opracować nawet bez zakupu sprzętu. Mamy nadzieję, że dzięki tym technikom etyczni hakerzy znajdą luki w zabezpieczeniach urządzeń wbudowanych i ujawnią je w sposób etyczny, dzięki czemu wszyscy będziemy bezpieczniejsi.

Wykorzystywanie oprogramowania układowego

https://chacker.pl/

Do tej pory emulowaliśmy oprogramowanie układowe Netgear WNAP320 w QEMU. Teraz czas zrobić to, po co przyszliśmy: wykorzystać oprogramowanie układowe. Dominic Chen6 i jego zespół znaleźli lukę w zabezpieczeniach polegającą na wstrzykiwaniu poleceń w tym oprogramowaniu układowym działającym w FIRMADYNE. Przetestujmy ją za pomocą FirmAE i sprawdźmy, czy można ją wykorzystać:

Z poprzedniego wyniku powinieneś zauważyć, że wstrzyknęliśmy polecenie uruchomienia serwera telnet (1). Argument telnetd –l /bin/sh uruchamia serwer telnet na domyślnym porcie i wiąże go z powłoką „/bin/sh”. Skanowanie nmap pokazuje, że port 23 jest teraz otwarty (2). Po połączeniu się z telnetem zauważysz, że użytkownik jest rootem (3). Chociaż zrobiono to na emulowanym oprogramowaniu układowym, to samo można zrobić na rzeczywistym oprogramowaniu układowym. W tym momencie atakujący ma dostęp root do urządzenia i potencjalnie może użyć urządzenia jako punktu startowego dla innych ataków w sieci.

Emulacja oprogramowania układowego

https://chacker.pl/

Teraz, gdy skonfigurowałeś środowisko, możesz emulować przykładowe oprogramowanie układowe (ponownie, jak opisano w FirmAE GitHub). Najpierw, używając skryptu run.sh, sprawdź oprogramowanie układowe dostarczone w GitHub dla tego laboratorium. Ten krok wyodrębni obraz, pobierze architekturę, wywnioskuje konfigurację sieci i skojarzy identyfikator w bazie danych w celu analizy (może to potrwać chwilę, więc bądź cierpliwy):

Teraz, gdy wiesz, jaki jest adres IP, uruchom emulator z włączonym debugowaniem, aby móc wchodzić w interakcję z powłoką lub uruchomić gdb. W naszym przypadku chcemy po prostu uzyskać dostęp do powłoki (1) i zobaczyć, co jest dostępne w BusyBox. Z danych wyjściowych BusyBox (2) wynika, że ​​telnetd (3) jest dostępny, jeśli możemy wykonywać programy za pomocą wstrzykiwania poleceń:

Jeżeli w dowolnym momencie pomylisz poprzednie polecenia i zechcesz zresetować bazę danych i środowisko, po prostu uruchom następujące polecenia:

W tym momencie oprogramowanie sprzętowe powinno działać na poprzednim IP jako urządzenie typu tap. Powinieneś również móc połączyć się z tym wirtualnym interfejsem z maszyny, na której uruchamiasz QEMU. Z poziomu maszyny wirtualnej otwórz przeglądarkę internetową i spróbuj połączyć się z wywnioskowanym IP, jak pokazano poniżej. Może być konieczne odczekanie minuty, aż usługa internetowa w pełni się uruchomi po uruchomieniu oprogramowania sprzętowego przez emulator.

Dane uwierzytelniające to admin/password, które można znaleźć w Internecie. I tak po prostu jesteśmy zalogowani do emulowanego routera, jak pokazano tutaj.

Konfigurowanie FirmAE

https://chacker.pl/

Jeśli chcesz śledzić to laboratorium, będziemy używać Kali 2021-1, uruchomionego w VMware lub VirtualBox, z ustawieniami sieciowymi NAT. Najpierw musimy skonfigurować narzędzie FirmAE, korzystając z instrukcji znajdujących się w FirmAE GitHub. Kroki instalacji są drastycznie uproszczone w porównaniu z FIRMADYNE i wymagają zainstalowania tylko trzech pakietów, build-essential, telnet i git, poza procesem instalacji. Instalacja opiera się również na fakcie, że instalacja binwalk została ukończona. Proces instalacji pokazano tutaj:

Analiza dynamiczna z emulacją

https://chacker.pl/

Okazuje się, że w niektórych przypadkach nie jest konieczne posiadanie sprzętu, aby wykonać analizę podatności i wykorzystać oprogramowanie układowe.

FirmAE

Narzędzie FirmAE3 rozszerza możliwości FIRMADYNE4, aby umożliwić emulację większej liczby oprogramowania układowego, wykorzystując różne arbitraże dla usług i hiperwizora QEMU. Arbitraże mają na celu umożliwienie uruchomienia usług sieciowych, ponieważ jest to powszechny wektor ataku. Piękno tego podejścia polega na tym, że nie trzeba kupować sprzętu, aby przetestować oprogramowanie układowe. To potężne podejście umożliwia skalowalne testowanie równoległe. Autorzy FirmAE osiągnęli wskaźnik powodzenia na poziomie 79,36 procent na 1124 urządzeniach i znaleźli 12 nowych 0-dni,5 co wcale nie jest złe. W kolejnych ćwiczeniach laboratoryjnych skonfigurujemy i uruchomimy FirmAE.