2008.04_Hakowanie Bluetooth.pdf

(412 KB) Pobierz
439218881 UNPDF
ATAK
MARIAN WITKOWSKI
Hakowanie
Stopień trudności
Do niedawna wielu z nas wydawało się, że ostatnim 'ogniwem'
mobilności w przypadku telefonii są telefony komórkowe. Jednak
w miarę odkrywania nowych możliwości zastosowań tego typu
sprzętu nie tylko do typowej komunikacji głosowej, rozwinęły się
technologie, w których komórka jest tylko elementem łączącym
ogniwa łańcucha komunikacyjnego, a sieć GSM – jednym z
dostępnych sposobów na przekazywanie informacji.
takich interfejsów jak IRDA czy FastIRDA .
W stosunku do swoich młodszych braci
nie jest konieczne, aby elementy nadawczo-
odbiorcze urządzeń były wzajemnie widoczne
i umieszczone maksymalnie blisko siebie.
Dodatkowo technologia Bluetooth zapełnia
tworzenie mini-sieci wielu urządzeń, co nie było
możliwe w przypadku technologii IRDA .
Jako ciekawostkę należy przytoczyć, że
nazwa technologii pochodzi od przydomka króla
duńskiego Haralda Sinozębego, który w X wieku n.
e. podporządkował sobie Norwegię i tym samym
przyczynił się do zjednoczenia rywalizujących
plemion z Danii i Norwegii. Tak więc istotą
Bluetooth’a jest łączyć i umożliwiać komunikację
urządzeń o różnym przeznaczeniu.
Bluetooth został zaprojektowany do
komunikacji na stosunkowo niewielkie
odległości – do 10 metrów, jednak obecnie
zasięg w zależności od klasy urządzenia jest
zmienny i może wynosić:
Niezależnie od wyżej wymienionych
danych, możliwe jest uzyskanie za pomocą
odpowiednich konstrukcji anten nadawczo-
odbiorczych większego zasięgu, który może
zostać wykorzystany (niestety) przy ewentualnej
próbie nieautoryzowanego dostępu.
Bluetooth zapewnia nam szybszą transmisję
danych niż ma to miejsce w przypadku
interfejsu IRDA . W zależności od wersji interfejsu
może ona wynosić: dla Bluetooth w wersji 1.0,
1.1, 1.2 – 721 kb/s, dla wersji 2.0 – do 2 Mb/s,
a z obsługą EDR ( Enhanced Data Rate ) – aż do
3 Mb/s.
Z ARTYKUŁU
DOWIESZ SIĘ
jakie niebezpieczeństwa
niesie ze sobą nieumiejętnie
korzystanie z technologii
Bluetooth,
jak prostymi metodami
zminimalizować ryzyko
nieautoryzowanego dostępu do
urządzeń wyposażonych
w Bluetooth.
Co to jest Bluetooth?
Bluetooth to standard technologii
bezprzewodowej, opracowany przez
konsorcjum SIG , w skład którego weszły m.
in. firmy Ericsson , Nokia , IBM , Motorola , Intel
i Toshiba . Technologia Bluetooth korzysta z
sygnałów radiowych o niewielkim zasięgu
w celu umożliwienia komunikacji pomiędzy
takimi urządzeniami, jak telefony komórkowe,
komputery przenośne czy inne podręczne
urządzenia. Technologia może być zastosowana
niemal w dowolnym urządzeniu elektronicznym,
jak np. sprzęt gospodarstwa domowego,
urządzenia elektroniczne w samochodzie,
elektronika domowa, telefony komórkowe,
urządzenia PDA czy wreszcie stacjonarne
wyposażenie biurowe. Pierwsza, obejmująca
1500 stron specyfikacja, została opublikowana
przez SIG w 1999 roku, a została zatwierdzona
przez grupę standaryzacyjną IEEE trzy lata
później.
CO POWINIENEŚ
WIEDZIEĆ
jak zainstalować moduł BT
w komputerze,
jak korzystać z modułu BT
w telefonie/PDA,
mieć rozeznianie w korzystaniu
z usług GSM (SMS, MMS,
aplikacje Java/Symbian).
Architektura Bluetooth
Urządzenia wykorzystujące technologię Bluetooth
łączą się w tzw. pikosieci (ang. piconet ). W ramach
takiego układu może istnieć jeden węzeł typu
30 HAKIN9
4/2008
Bluetooth
T echnologia Bluetooth jest kontynuacją
439218881.037.png 439218881.038.png 439218881.039.png 439218881.040.png 439218881.001.png
HAKOWANIE BLUETOOTH
Master oraz maksymalnie 7 węzłów typu
Slave . Maksymalna pojemność pikosieci
to 255 węzłów – jednakże urządzenia
podłączone do tych węzłów znajdują się w
trybie synchronizacji z węzłem Master i nie
uczestniczą w aktywnej wymianie informacji.
Wymiana danych w pikosieci występuje
tylko między węzłem Master oraz Slave .
Możliwe jest łączenie pikosieci – w takim
przypadku jeden z węzłów typu Slave ma
możliwość komunikacji z dwoma węzłami
typu Master . Taki mostek sieciowy nosi
nazwę scatternet .
625 mikrosekund. System wykorzystuje
modulację FSK ( Frequency Shift Keying ).
Skoki częstotliwości determinowane
są przez węzeł Master . Niestety, w tym
samym paśmie pracują również sieci
bezprzewodowe w standardzie 802.11,
co wpływa na możliwość interferencji
sygnałów. Jednak z uwagi na to, że skoki
częstotliwości są szybsze dla Bluetooth’a ,
to właśnie on będzie w większym stopniu
zakłócał transmisję sieci 802.11. Aby
przeciwdziałać tego typu problemom,
interfejsy Bluetooth wyposażane są
w mechanizm Adaptive Frequency
Hopping ( AFH ), który unika połączeń na
interferujących kanałach.
lokalizowanie się oraz tworzenie,
konfigurowanie i zarządzanie zarówno
fizycznymi, jak i logicznymi połączeniami.
W skład protokołów grupy wchodzą
protokoły radiowe, pasma podstawowego,
menedżera połączenia, połączenia
logicznego i adaptacji oraz interfejsu
kontrolera hosta HCI ( Host Controller
Interface ). Protokoły transportowe w
odniesieniu do modelu OSI nie znajdują
się jednak w warstwie transportowej, a w
warstwie fizycznej oraz warstwie łącza.
Protokoły pośredniczące zawierają
zarówno protokoły oraz standardy
przemysłowe, jak i protokoły opracowane
przez SIG specjalnie z myślą o
bezprzewodowej komunikacji Bluetooth.
Do tych pierwszych należy zaliczyć
protokoły związane z Internetem
( PPP, IP, TCP itp.), protokoły aplikacji
bezprzewodowych, protokoły przesyłania
obiektów adaptowane ze standardu IrDA .
Do kolejnego zestawu należą protokoły
zaprojektowane specjalnie dla komunikacji
i pozwalające innym aplikacjom na
korzystanie z połączeń Bluetooth. Oto one:
Szum w eterze,
czyli warstwa radiowa
Jako technologia bezprzewodowa,
Bluetooth wykorzystuje emisję radiową
o małej mocy w paśmie 2,4 GHz. Dane
są transmitowane w pakietach, z których
każdy jest nadawany i odbierany na innej
częstotliwości. Dla technologii Bluetooth
minimalna częstotliwość pracy wynosi
2402 MHz, a maksymalna – 2480 MHz.
Pasmo to podzielono na 79 kanałów
oddalonych od siebie o 1 MHz. Przeskoki
między częstotliwościami odbywają się
1600 razy na sekundę, tak więc czas pracy
na jednym kanale (tzw. Time Slot ) wynosi
Warstwy Bluetooth
Interfejs Bluetooth został stworzony
z wykorzystaniem wielu protokołów..
Poszczególne elementy stosu protokołów
podzielono na trzy grupy logiczne:
• grupę protokołów transportowych,
• grupę protokołów pośredniczących,
• grupę aplikacji.
Protokoły transportowe umożliwiają
urządzeniom Bluetooth wzajemne
• protokół emulacji portu szeregowego
(RFCOMM),
�����������������
�����������������
�����������������
������������
����������������
����������
���������
����������
�������������
���������������
�������������������
Rysunek 1. Urządzenia wykorzystujące interfejs Bluetooth
4/2008
HAKIN9
31
439218881.002.png 439218881.003.png 439218881.004.png 439218881.005.png 439218881.006.png 439218881.007.png 439218881.008.png 439218881.009.png
ATAK
• protokół sygnalizacyjny połączeń
pakietowych, umożliwiający
sterowanie funkcjami telefonicznymi
(TCS),
• protokół wyszukiwania usług (SDP)
pozwala urządzeniom rozpoznawać
funkcje innych urządzeń
• protokół współpracy z aplikacjami w
standardzie IrDA.
Uwierzytelnianie pomiędzy urządzeniami
wygląda następująco:
łamania PINu wykorzystujący cechy
algorytmu SAFER+ (4-cyfrowy PIN
w 0,063 sekundy, a 7-cyfrowy w 76
sekund).
• Szyfrowanie połączeń z
wykorzystaniem algorytmu E0 .
Niestety, w 2005 roku odzyskano klucz
szyfrujący z E0 przy 238 operacjach
znając pierwsze 24 bity klucza i
posiadając 223.8 ramek ruchu.
• Włączanie trybu ukrywania urządzenia
wyposażonego w Bluetooth . Niestety,
tryb ten nie powoduje dezaktywacji
usług, a jedynie odrzucanie żądań
wysyłanych przez SDP innego
interfejsu Bluetooth .
• Mały zasięg. Niestety, dostępne
anteny kierunkowe pozwalają obecnie
na zwiększenie zasięgu do kilkuset
metrów.
• Częste przeskoki międzykanałowe.
Skorzystano z istniejącej już techniki
rozpraszania widma sygnału z
przeskokiem częstotliwości ( Spread
Spectrum with Frequency Hopping ).
Niestety, dostępne analizatory widma
pozwalają przynajmniej na podsłuch
transmisji – choć jej analiza jest
trudna i być może nieopłacalna.
• Urządzenie inicjujące wysyła najpierw
swój adres (BD_ADDR). 48-bitowy
adres jest unikatowy i jest podobny
do adresu MAC.
• W odpowiedzi wysyłany jest
wybierany losowo 128-bitowy ciąg
(AU_RAND).
• W oparciu o BD_ADDR, Link Key oraz
AU_RAND oba urządzenia generują
ciąg SRES.
• Urządzenie inicjujące wysyła swój
SRES.
• Drugie urządzenie porównuje
otrzymany SRES ze swoim własnym,
a w przypadku zgodności obu ciągów
połączenie zostaje nawiązane.
Grupa aplikacji składa się z modułów
umożliwiających bezpośrednią
komunikację z innymi urządzeniami na
poziomie aplikacyjnym, np. sterowanie
komendami modemu, przesyłanie
wizytówek ( vCard ) czy dostęp do
protokołu WAP .
Barwy obronne
Interfejs Bluetooth oferuje pracę w różnych
trybach bezpieczeństwa:
Na podstawie wartości BD_ADDR,
AU_RAND oraz SRES, możliwe jest
zdekodowanie kodu PIN.
Jak każda cyfrowa technologia
bezprzewodowa, tak i Bluetooth został
wyposażony w mechanizmy (mniej lub
bardziej skuteczne) do zapewnienia
bezpiecznej transmisji pomiędzy
urządzeniami w niego wyposażonymi.
Należą do nich:
• Tryb 1 – niechroniony. W trybie tym
nie wykorzystuje się szyfrowania ani
uwierzytelnienia, a samo urządzenie
działa w trybie niedyskryminacyjnym,
przykładowo w trybie nadawania lub
odbierania.
• Tryb 2 – oparty na aplikacji/usłudze
(L2CAP). W trybie tym po nawiązaniu
połączenia Security Manager
przeprowadza uwierzytelnienie, co
ogranicza dostęp do urządzenia.
• Tryb 3 – uwierzytelnianie w oparciu
o PIN/szyfrowane adresy MAC.
Uwierzytelnienie dokonywane jest
przed nawiązaniem połączenia.
• 'Parowanie' urządzeń – mechanizm
ten polega na tym, że aby
dany interfejs Bluetooth został
dopuszczony do węzła pikosieci przed
rozpoczęciem transmisji, musi zostać
ustalony klucz autoryzacyjny z węzłem
typu Master – jest to zazwyczaj PIN
o długości 4-16 znaków. Niestety,
niektóre urządzenia wyposażone
w Bluetooth mają wprowadzone
domyślnie kody takie, jak 0000 czy
1234, co skutecznie wpływa na
obiżenie poziomu bezpieczeństwa.
• Uwierzytelnianie za pomocą
algorytmu SAFER+ . Niestety, w 2005
roku Yaniv Shaked i Avishai Wool
z Izraela opracowali mechanizm
Choć powyższy opis mechanizmów
bezpieczeństwa jest dość defetystyczny,
to nie powinno nas to zniechęcać do
korzystania z technologii Bluetooth .
Ataki Bluetooth
Przyznam się szczerze, że problem
ten dotknął mnie osobiście 2 lata
Jakość użytych kodów PIN rzutuje na poziom
bezpieczeństwa. Kod PIN może mieć od
1 do 16 bajtów, aczkolwiek zazwyczaj ma
on długość 4 bajtów. Do wygenerowania
pierwszego klucza – tzw. Link Key – o
długości 16 bajtów wykorzystywany jest
algorytm E2 . Na podstawie tego klucza
generowany jest klucz szyfrowania. Link Key
używany jest do uwierzytelniania połączenia,
a drugi klucz – do szyfrowania danych.
�������
Tabela 1. Klasy urządzeń bluetooth
Klasa urządzenia Moc
Zasięg
1
100 mW
do 100 m
�������
�������
2
2,5 mW
Do 10 m
����������
3
1 mW
Do 1 m.
Rysunek 2. Scatternet
32 HAKIN9 4/2008
439218881.010.png 439218881.011.png 439218881.012.png 439218881.013.png 439218881.014.png 439218881.015.png 439218881.016.png 439218881.017.png
 
HAKOWANIE BLUETOOTH
temu. Pracowałem w firmie zajmującej
się integracją usług SMSowych oraz
dostarczającej treści multimedialnych
do telefonów komórkowych. Przez
większość czasu moja Nokia 3650 miała
włączony interfejs Bluetooth z uwagi
na konieczność testowania różnego
rodzaju usług i aplikacji mobilnych.
Jakież było moje zdziwienie, gdy
pewnego razu wchodząc do jednego
z warszawskich hoteli, usłyszałem
dzwonek informujący o nadejściu
SMSa , a na ekranie komórki pojawił
się monit z pytaniem o rozpoczęcie
pobierania pliku z rozszerzeniem SIS
(w ten sposób dystrybuowane są
aplikacje Symbian ). Zdaje się, ze jakiś
nieszczęśnik posiadający zainfekowany
telefon, nieświadomie próbował infekować
inne aparaty. Od tego czasu Bluetooth
włączam tylko wtedy, gdy jest to konieczne.
Po tym, nieco osobistym, wstępie
przyjrzyjmy się możliwym sposobom
ataków z wykorzystaniem interfejsu
Bluetooth .
summa summarum – spowodować może
w naszym telefonie takie niepożądane
działania, jak: szybsze rozładowanie
baterii poprzez dużą aktywność
Bluetootha (próba infekcji kolejnych
urządzeń), rozsyłanie wiadomości SMS
do osób z książki adresowej czy łączenie
z numerami o podwyższonej taryfikacji.
Klasycznym przykładem takiego robaka
jest Mabir.A , który po odebraniu SMSa
lub MMSa wysyła pod numer nadawcy
wiadomość MMS zawierającą własną
kopię. Na szczęście coraz więcej firm
zajmujących się ochroną antywirusową
ma w swojej ofercie oprogramowanie do
detekcji i usuwania wirusów instalujących
się w telefonach GSM czy PDA .
Przykładem takiej aplikacji jest Kaspersky
Anti-Virus Mobile .
wymiany wizytówek i innych obiektów.
W większości przypadków usługa ta nie
wymaga uwierzytelniania. Atak BlueSnarf
polega na wysłaniu żądania OBEX GET
dla znanych powszechnych plików, takich
jak telecom/pb.vcf (książka telefoniczna)
lub telecom/cal.vcs (kalendarz). Jeżeli
oprogramowanie urządzenia nie zostało
zaimplementowane poprawnie, agresor
może uzyskać dostęp do wszystkich
plików (zdjęcia, pliki, kalendarz)
zapisanych na atakowanym urządzeniu.
BlueBug
BlueBug – zaprezentowany przez Martina
Herfurta w marcu 2004 – pozwala na
wykonanie nieautoryzowanych czynności
na urządzeniu z włączonym Bluetooth’em
przy użyciu ukrytych kanałów RFCOMM ,
udostępniających komendy AT . Niektóre
telefony pozwalają na wydanie poleceń
AT (komend modemu), przez co agresor
może przejąć całkowitą kontrolę nad
telefonem – ma dostęp do połączeń
telefonicznych, SMSów , książki adresowej,
konfiguracji telefonu.
BlueSnarf
BlueSnarf jest prawdopodobnie
najpopularniejszym atakiem Bluetooth .
Odkryty został przez Marcela Holtmanna
w październiku 2003. Wykorzystuje błąd
implementacji mechanizmu wymiany
wizytówek w niektórych telefonach
Nokia i Sony Ericsson . Atakujący
wykorzystuje mechanizm OBEX Push
Profile ( OPP ), zaprojektowany w celu
Robaki, wirusy i trojany
Bluetooth sam w sobie może zostać
użyty jako transporter wszelkiego rodzaju
złośliwego oprogramowania, które –
HeloMoto
HeloMoto – jak nietrudno się domyśleć,
bug ten spotykany jest w niektórych
����������
���
����
���
��� ���
�����
��������
�������
���
��
���
������
�����
�����
�������������������������
���
��������
���������������
Rysunek 3. Warstwy Bluetooth
4/2008
HAKIN9
33
439218881.018.png 439218881.019.png
 
ATAK
����������������������
����������������������
telefonach Motorola , takich jak V80 , V5xx ,
V6xx czy E398 . Atak ten wykorzystuje
niewłaściwą obsługę mechanizmu
'zaufanych urządzeń Bluetooth' i jest
połączeniem ataków BlueSnarf oraz
BlueBug . Agresor rozpoczyna połączenie
z wykorzystaniem profilu OBEX Push
Profile, po czym przerywa proces i zostaje
automatycznie dodany do zaufanych
urządzeń na liście atakowanego telefonu
– teraz wystarczy zainicjować połączenie z
warstwą RFCOMM , aby otrzymać dostęp
do komend AT telefonu.
���
���
�������������������
���������
���������
������������������������
�������������
�����
��������
�������������
��������������
�����
��������
�������������������������������
���������������������������
������������������������
����������������
BlueSmack
BlueSmack jest rodzajem ataku DoS .
Atakowana jest tu warstwa L2CAP .
Działanie polega na tym, iż na poziomie
L2CAP możliwe jest zażądanie
odpowiedzi innego urządzenia Bluetooth .
Podobnie jak w przypadku komunikatu
ping dla ICMP , jego zadaniem dla
L2CAP jest zbadanie dostępności oraz
prędkości nawiązywania połączenia. W
przypadku odpowiednio dużego pakietu
danych wysyłanych w kierunku L2CAP
nastąpi przepełnienie bufora i odmowa
dostępu do usługi.
�����
�����������
�������������
�����������
�����
�����������
Rysunek 4. Algorytm generowania kluczy
����������������������
����������
���������
�������
����������������������
��������������
���������������
��������
�����
Blueprinting
Blueprinting jest techniką pozwalającą
na uzyskaniu informacji o urządzeniach z
włączonym interfejsem Bluetooth . Każde
takie urządzenie posiada unikatowy
adres składający się z 6 bajtów, a jego
ma forma jest podobna do adresów
MAC: MM:MM:MM:XX:XX:XX . Pierwsze
trzy bajty adresu (oznaczone literą M)
zawierają informacje o producencie
chipsetu. Dodatkowo, wykorzystując
mechanizm SDP , istnieje możliwość
pobrania informacji o rodzaju usług
oferowanych przez aktywne interfejsy
Bluetooth . Na tej podstawie może zostać
dokonana identyfikacja urządzenia, co
jest zazwyczaj wstępną czynnością przed
właściwym atakiem z wykorzystaniem
innych opisanych tu technik.
�����
�������
�������
��������������
��������
��������
��������������
����
���
���
���
������
����������
��
���
BlueSnarf++
BlueSnarf++ jest rozwinięciem ataku
BlueSnarf , pozwalającym nie tylko na
odczyt plików ze zdalnego urządzenia,
ale także na zapis na nim danych.
Konieczne jest w takim przypadku, aby na
atakowanym urządzeniu był uruchomiony
������
�������������
Rysunek 5. Algorytm uwierzytelniania
34 HAKIN9 4/2008
439218881.020.png 439218881.021.png 439218881.022.png 439218881.023.png 439218881.024.png 439218881.025.png 439218881.026.png 439218881.027.png 439218881.028.png 439218881.029.png 439218881.030.png 439218881.031.png 439218881.032.png 439218881.033.png 439218881.034.png 439218881.035.png 439218881.036.png
 
Zgłoś jeśli naruszono regulamin