hacking bluetooth smart
TRANSCRIPT
![Page 1: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/1.jpg)
Hacking Bluetooth
Smart
Sławomir Jasek
Mobilization, 17.10.2015
![Page 2: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/2.jpg)
Pentester / konsultant bezpieczeństwa
Konsultacje i ocena bezpieczeństwa
rozmaitych aplikacji – www, mobile,
embedded...
Od 2003 / ponad 400 projektów
Sławomir Jasek
![Page 3: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/3.jpg)
Internet of Things
Bluetooth Smart
Beacony
Jak ukraść samochód
Podsumowanie
("na bis": opaska sportowa)
Agenda
![Page 4: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/4.jpg)
INTERNET OF THINGS
- Jak być "SMART"
![Page 5: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/5.jpg)
"Smart" żarówki – jedynie 70$ sztuka
https://www.indiegogo.com/projects/lightfreq-square2-smart-lightbulb-hd-speaker/
![Page 6: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/6.jpg)
Dom "Smart" – zrobię inteligentne włączniki!
$$$ $
https://www.youtube.com/watch?v=FXyzm61_eZE
![Page 7: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/7.jpg)
Po 2 latach ;)
http://geek-and-poke.com/geekandpoke/2015/6/3/smartest-homes
![Page 8: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/8.jpg)
Rzeczywistość...
Włączenie światła z aplikacji trwa 26 razy dłużej
![Page 9: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/9.jpg)
"Pierwszy na świecie smart" kosz na śmieci
Okazja! Jedyne 249$ + worki 19$
https://www.kickstarter.com/projects/brunosmartcan/trash-can-vacuum-bruno-the-worlds-first-smartcan
![Page 10: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/10.jpg)
A może bidon który przypomni o piciu wody?
https://www.kickstarter.com/projects/582920317/hidrateme-smart-water-bottle
![Page 11: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/11.jpg)
A może kubek który powie co jest w środku?
www.myvessyl.com
![Page 12: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/12.jpg)
Chip w krowie
www.vitalherd.com
![Page 13: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/13.jpg)
"A sensor embedded in a tooth could one
day tell doctors when people have defied
medical advice to give up smoking or eat
less. Built into a tiny circuit board that fits in
a tooth cavity, the sensor includes an
accelerometer that sends data on mouth
motion to a smartphone. Machine learning
software is taught to recognise each telltale
jaw motion pattern, then works out how
much of the time the patient is chewing,
drinking, speaking, coughing or smoking"
Chip w zębie
http://nslab.ee.ntu.edu.tw/publication/conf/TeethProbeISWC.pdf
![Page 14: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/14.jpg)
Chip na głowie – poprawi Ci nastrój
www.thync.com
![Page 15: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/15.jpg)
1. Wymyślić do czego jeszcze nie włożono chipa.
2. Kupić devkit (Nordic, TI...), czasem odrobinę lutowania
3. Zaimportować kod BLE do aplikacji mobilnej
4. Przekonująca strona + video (bootstrap)
5. Kampania crowdfundingowa!
6. Profit.
Startup
http://southpark.cc.com/full-episodes/s18e01-go-fund-yourself
![Page 16: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/16.jpg)
Zastosowania w bezpieczeństwie?
https://www.kickstarter.com/projects/xolutronic/passfort-your-digital-life-secure
![Page 17: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/17.jpg)
Smart Lock?
http://www.august.com
![Page 18: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/18.jpg)
Poufność, integralność, DOSTĘPNOŚĆ
https://twitter.com/rabcyr/status/643956567818248192/
![Page 19: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/19.jpg)
Bankowość
http://www.wired.co.uk/news/archive/2015-03/13/halifax-ecg-login
![Page 20: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/20.jpg)
Medycyna, fabryki, samochody, smart home...
http://www.bluetooth.com/Pages/Medical.aspx
![Page 21: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/21.jpg)
Internet of Things – najczęstszy scenariusz
machine learning, Big Data "cloud"
"HUB"
![Page 22: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/22.jpg)
IoT – te scenariusze ataku znamy od lat...
machine learning, Big Data "cloud"
"HUB"
![Page 23: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/23.jpg)
Bluetooth Smart, Low Energy, 4...
Jedna z najpopularniejszych, najprężniejszych technologii IoT. Kompletnie inny protokół niż poprzednie wersje Bluetooth. Główny cel: niskie zużycie energii. Najczęstsze sposoby użycia: a) Rozgłaszanie pakietów b) Wymiana danych między urządzeniami
![Page 24: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/24.jpg)
Bluetooth 4.2
http://www.bluetooth.com/SiteCollectionDocuments/4-2/bluetooth4-2.aspx
![Page 25: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/25.jpg)
Łatwość wdrożenia, dostępność i koszt komponentów.
Coraz więcej urządzeń – "wearables", medyczne, smart home
Rozkwit beacon'ów i pozycjonowania wewnątrz budynków
Physical web
Bluetooth Mesh
Web bluetooth – dostęp do urządzeń z przeglądarki (API)
IPv6 over Bluetooth Smart
Przyszłość IoT należy do Bluetooth Smart
![Page 26: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/26.jpg)
IPv6 over Bluetooth Smart
machine learning, Big Data "cloud"
IPv6
IPv6
IPv6
IPv6
IPv6 IPv6
IPv6
![Page 27: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/27.jpg)
Pairing
Key Generation
Encryption
Encryption in Bluetooth LE uses AES-CCM cryptography. Like BR/EDR, the
LE Controller will perform the encryption function. This function generates
128-bit encryptedData from a 128-bit key and 128-bit plaintextData using
the AES-128-bit block cypher as defined in FIPS-1971.
Signed Data
Bezpieczeństwo - wg specyfikacji
https://developer.bluetooth.org/TechnologyOverview/Pages/LE-Security.aspx
![Page 28: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/28.jpg)
Ochrona przed atakami na różnych warstwach:
• Man-in-the-Middle (MITM)
• Pasywny podsłuch
• Śledzenie urządzeń/użytkowników
"The goal of the LE security mechanism is to protect communication between devices at different levels of the stack. "
Bezpieczeństwo - wg specyfikacji
https://developer.bluetooth.org/TechnologyOverview/Pages/LE-Security.aspx
![Page 29: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/29.jpg)
BEACONY
![Page 30: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/30.jpg)
Niewielkie urządzenia Bluetooth Low
Energy do precyzyjnej lokalizacji.
Rozgłaszają:
• unikalne identyfikatory
interpretowane przez aplikacje
(standard Apple iBeacon)
• dodatkowe opcje: URL, dane np.
temperatura (Google Eddystone)
Beacony
Beacon Eddystone rozgłaszający URL
http://www.aislelabs.com/reports/beacon-guide/
Beacon Eddystone widoczny w telefonie
![Page 31: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/31.jpg)
Dodatkowe informacje (np. o produktach na półce) na
podstawie precyzyjnej lokalizacji.
Nagrody, punkty lojalnościowe, "gamifikacja".
Automatyczny "Check-in".
Nawigacja wewnątrz budynków.
Informacja o kradzieży roweru, portfela.
"Smart home" – automatyczne otwieranie drzwi, włączanie światła...
Beacony – przykładowe scenariusze użycia
![Page 32: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/32.jpg)
Detal: ktoś inny może użyć naszych beaconów żeby
przedstawić lepszą ofertę konkurencji.
Aplikacje dające jakiś zysk po zbliżeniu do beaconu:
- możliwość oszukania tego faktu
Przejęcie kontroli, rekonfiguracja, kradzież urządzenia:
- wymaga fizycznego zbliżenia, ataki celowe lub przypadkowe
Ryzyka – zależą od użycia
![Page 33: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/33.jpg)
Beacony rozgłaszają sygnał publicznie
Szczegóły można podglądnąć np. w darmowej aplikacji.
https://play.google.com/store/apps/details?id=uk.co.alt236.btlescan
![Page 34: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/34.jpg)
Beacony rozgłaszają sygnał publicznie
![Page 35: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/35.jpg)
Beacony rozgłaszają sygnał publicznie
![Page 36: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/36.jpg)
iBeacon – emulacja #1 – darmowa aplikacja
https://itunes.apple.com/us/app/locate-beacon/id738709014 https://play.google.com/store/apps/details?id=com.radiusnetworks.locate
![Page 37: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/37.jpg)
# hcitool cmd 0x08 0x0008 1E 02 01 1A 1A FF 4C 00 02
15 84 2A F9 C4 08 F5 11 E3 92 82 F2 3C 91 AE C0 5E FD
E8 AF C8 C5 00
iBeacon – emulacja #2: Bluez
![Page 38: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/38.jpg)
# hcitool cmd 0x08 0x0008 1E 02 01 1A 1A FF 4C 00 02
15 84 2A F9 C4 08 F5 11 E3 92 82 F2 3C 91 AE C0 5E FD
E8 AF C8 C5 00
iBeacon – emulacja #2: Bluez
![Page 39: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/39.jpg)
# hcitool cmd 0x08 0x0008 1E 02 01 1A 1A FF 4C 00 02
15 84 2A F9 C4 08 F5 11 E3 92 82 F2 3C 91 AE C0 5E FD
E8 AF C8 C5 00
iBeacon data broadcast
iBeacon prefix (constant) UUID: 842AF9C4-08F51-1E39-282F-
23C91AEC05E
Major: FD E8 = 65 000
Minor: AF C8 = 45 000
TX power
![Page 40: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/40.jpg)
Czasami wystarczy spreparować żądanie HTTP...
![Page 41: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/41.jpg)
iBeacon – dodatkowe informacje w muzeum
![Page 42: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/42.jpg)
Atak?
![Page 43: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/43.jpg)
Beacony – nawigacja?
![Page 44: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/44.jpg)
Atak?
![Page 45: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/45.jpg)
KONFIGURACJA
![Page 46: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/46.jpg)
# 1. Aby zrekonfigurować dowolny beacon wystarczy
zainstalować aplikację deweloperską.
# 2. Użytkownik może konfigurować wyłącznie swoje
urządzenia (weryfikacja w "chmurze").
Jednak okazuje się, iż ograniczenie jest tylko w GUI.
Rekonfiguracja urządzenia nadal nie wymaga
uwierzytelnienia.
Beacony - konfiguracja
![Page 47: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/47.jpg)
Beacony - konfiguracja
Statyczny klucz zaszyty w kodzie SDK – trywialny do podglądnięcia po zdekompilowaniu
![Page 48: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/48.jpg)
# 3. Stały klucz uwierzytelniający zaszyty w SDK
# 4. Indywidualne dane uwierzytelniające w "chmurze".
Nowa funkcja: możliwość rekonfiguracji urządzenia za
pośrednictwem telefonu użytkownika końcowego (?)
Beacony - konfiguracja
![Page 49: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/49.jpg)
Po co?
- Wandalizm
- Rozsiewać spam w Physical Web (URL Eddystone)
Warunki wykorzystania
- Fizyczna bliskość
- Przejęcie telefonu
Jeśli atak byłby trywialny (np. publicznie dostępna aplikacja),
mógłby być przeprowadzony przez przypadkowego intruza.
Beacony – konfiguracja: ryzyko ataku
![Page 50: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/50.jpg)
SAMOCHÓD
![Page 51: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/51.jpg)
Urządzenie BLE do kontroli nad samochodem
![Page 52: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/52.jpg)
"Nowoczesność projektu, wysokie tempo, ofiarność załóg i wykorzystanie sił społecznych"
![Page 53: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/53.jpg)
"hacking challenge"
![Page 54: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/54.jpg)
Jak, pomożecie?
![Page 55: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/55.jpg)
PRZEKAŹNIK?
![Page 56: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/56.jpg)
Atak "relay"
Relay Attacks on Passive Keyless Entry and Start Systems in Modern Cars http://eprint.iacr.org/2010/332.pdf
![Page 57: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/57.jpg)
Na większą odległość?
![Page 58: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/58.jpg)
Znany od lat, z powodzeniem stosowany przez złodziei, zwłaszcza
kradnących rzeczy z samochodu (nie potrzebują zapłonu).
Warunki:
• aktywne automatyczne otwieranie po zbliżeniu
• zbliżenie się do ofiary w tym samym czasie co kradzież
• nie pozwala na otwarcie samochodu w dowolnym momencie
później
Ale w samochodzie jest również blokada zapłonu...
Atak "relay"
![Page 59: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/59.jpg)
PODSŁUCH?
- warstwa fizyczna
![Page 60: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/60.jpg)
Bluetooth LE - kanały
http://www.connectblue.com/press/articles/shaping-the-wireless-future-with-low-energy-applications-and-systems/
kanały rozgłoszeniowe
![Page 61: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/61.jpg)
Open-source (software, hardware).
Sprzętowo łapie połączenia i pakiety
Bluetooth.
Podgląd pakietów w Wireshark.
Potrzebne 3 urządzenia aby obstawić
wszystkie 3 kanały rozgłoszeniowe.
Podsłuch Bluetooth: Ubertooth – 120$
http://greatscottgadgets.com/ubertoothone/
![Page 62: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/62.jpg)
Bardzo drogie skanery komercyjne – profesjonalna
analiza całego pasma jednocześnie
Podsłuch Bluetooth
http://www.ellisys.com/products/bex400/
Ellisys Bluetooth Explorer 400 All-in-One Bluetooth® Protocol Analysis System
http://www.fte.com/products/BPA600.aspx
ComProbe BPA® 600 Dual Mode Bluetooth® Protocol Analyzer
![Page 63: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/63.jpg)
FAKT TECHNICZNY #1
- Szyfrowanie w Bluetooth Smart
![Page 64: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/64.jpg)
Szyfrowanie działa domyślnie, transparentnie.
1. Parowanie - ustalenie wspólnego "Long Term Key" obu urządzeń za pomocą jednej z metod:
JustWorks(R) – po prostu działa ;)
PIN
Out of band
2. Połączenia po sparowaniu – szyfrowanie AES za pomocą kluczy sesji z LTK
Bluetooth LE - szyfrowanie
![Page 65: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/65.jpg)
1. Parowanie
Podsłuchanie parowania => odzyskanie klucza Long Term Key
(narzędzie crackle), umożliwia odszyfrowanie transmisji
szczegóły: http://lacklustre.net/bluetooth/
2. Połączenia po sparowaniu
Teoretycznie możliwy aktywny atak wymuszający renegocjację
LTK, w praktyce w większości przypadków nie działa.
Bluetooth 4.2 (2014) poprawia bezpieczeństwo transmisji.
Bluetooth LE – podsłuch transmisji
![Page 66: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/66.jpg)
- Szyfrowanie w Bluetooth Smart
//FAKT TECHNICZNY #1
![Page 67: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/67.jpg)
Podsłuch parowania – trudne do spełnienia warunki:
• musimy być w zasięgu w trakcie pierwszej konfiguracji telefonu z samochodem.
Podsłuchiwanie połączenia już sparowanego nie ma sensu – wymagałoby złamania AES.
Czy podsłuchanie transmisji nam w ogóle coś da?
Atak w praktyce?
![Page 68: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/68.jpg)
IBEACON
- warstwa aplikacji
![Page 69: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/69.jpg)
Urządzenie w samochodzie rozgłasza się jako iBeacon.
Pakiety rozgłaszane są publicznie, z łatwością zobaczymy je np. w telefonie.
Jak to działa?
A jak łączy się do urządzenia aplikacja?
![Page 70: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/70.jpg)
Aplikacja – dekompilacja apk
![Page 71: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/71.jpg)
1. Wyszukiwanie konkretnego iBeacona po UUID:
ProximityUUIDReady = "61150620-fc5e-11e3-a3ac-0800200c9a01";
int Major, Minor – zapisane w telefonie
2. Nawiązanie połączenia z beaconem
public void onEvent(XxxxxScannedEvent paramXxxxxScannedEvent) {
beaconList.add(xxxxxBeacon);
BleManager.connectManager.connect(xxxxxBeacon.getBluetoothAddress());
To co robimy?
Jak działa aplikacja?
![Page 72: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/72.jpg)
# hcitool -i hci0 cmd 0x08 0x0008 $IBEACONPROFIX $UUID $MAJOR $MINOR $POWER
Emulacja beacona!
![Page 73: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/73.jpg)
Czekamy 5 minut
Czekamy 10 minut
Czekamy 20 minut
... samochód nie działa ;)
Jedziemy na miejsce i...
https://www.flickr.com/photos/artvlive/19548772122
![Page 74: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/74.jpg)
OK, ale jak rozwiązać ten problem?
Alice
Bob
Mallory
![Page 75: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/75.jpg)
Stanąć bliżej?
Przedłużacz USB?
Nie działa ;)
A jedna próba to 10 minut w plecy.
Podejść bliżej?
http://www.usb-cable.com/html/usb-extension-cables.html
![Page 76: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/76.jpg)
Class 1 +8dBm
Zasięg 100 m
112.90 PLN
"little difference in range whether the other end of the
link is a Class 1 or Class 2 device as the lower
powered device tends to set the range limit"
https://en.wikipedia.org/wiki/Bluetooth
Silniejszy sygnał?
http://www.lairdtech.com/products/bt820
![Page 77: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/77.jpg)
Może odseparować sygnał?
![Page 78: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/78.jpg)
FAKT TECHNICZNY #2
- Fale elektromagnetyczne
![Page 79: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/79.jpg)
Dyfrakcja (ugięcie fali) to zjawisko fizyczne
zmiany kierunku rozchodzenia się fali na
krawędziach przeszkód oraz w ich pobliżu.
https://pl.wikipedia.org/wiki/Dyfrakcja
Zasada Huygensa:
"każdy punkt ośrodka, do którego dotarło czoło
fali można uważać za źródło nowej fali kulistej"
https://pl.wikipedia.org/wiki/Zasada_Huygensa
Wróćmy do podstaw
https://ilf.fizyka.pw.edu.pl/podrecznik/3/5/10
![Page 80: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/80.jpg)
Zagłuszyć sygnał?
https://media.defcon.org/DEF%20CON%2023/DEF%20CON%2023%20presentations/Richo%20Healey%20&%20Mike%20Ryan/DEFCON-23-Richo-Healey-Mike-Ryan-Hacking-Electric-Skateboard.pdf
"It’s like they designed the protocol itself to stop us from doing this exact thing" Richo Healey, Mike Ryan – Hacking Electric Skateboard, Defcon 23
![Page 81: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/81.jpg)
- Fale elektromagnetyczne
//FAKT TECHNICZNY #2
![Page 82: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/82.jpg)
Wiele sygnałów?
Na każdym interfejsie wystawiamy iBeacon. Jedziemy na miejsce i.... Znowu wyładował się akumulator ;) Poza tym trudności z ogarnięciem w systemie wielu interfejsów.
![Page 83: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/83.jpg)
Aplikacja łączy się do pierwszego beacon-a którego
usłyszy.
Co zrobić żeby to naszego beacon-a usłyszała wcześniej niż beacon samochodu?
Częściej wysyłać pakiety rozgłoszeniowe!
My nie musimy się martwić o baterię.
Zaraz, zastanówmy się raz jeszcze...
![Page 84: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/84.jpg)
Bluetooth 4 Core Specification - Advertising
![Page 85: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/85.jpg)
Bluetooth 4 Core Specification - Advertising
BLUETOOTH SPECIFICATION Version 4.0 [Vol 2] page 813
![Page 86: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/86.jpg)
hcitool -i hci0 cmd 0x08 0x0006 A0 00 A0 00
00 00 00 00 00 00 00 00 00 07 00
0x0006 – set advertising parameters
0x00A0 (100 ms)
0x07 = 00000111b Default (all channels enabled)
hcitool
![Page 87: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/87.jpg)
FAKT TECHNICZNY #3
- Stabilność nie jest cechą nowych technologii
![Page 88: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/88.jpg)
Bluetooth – Host Controller Interface
https://developer.bluetooth.org/TechnologyOverview/Pages/HCI.aspx
Linux, BlueZ $ hcitool
![Page 89: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/89.jpg)
CSR nie działa stabilnie przy mniej niż 100ms.
Komunikacja z firmware niekiedy wymaga specjalnej uwagi.
Gdy coś nie działa jak powinno, trzeba wykonać sekwencję różnych komend w odpowiedniej kolejności ;)
Problemy z firmware...
![Page 90: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/90.jpg)
BLE – funkcja zapewnienia
prywatności przez zmianę
adresu MAC co sekundę...
... powoduje crash Androida ;)
"Bluedroid can only handle seeing
1,990 different Bluetooth MAC
addresses before the Android
BluetoothService crashes"
Stabilność nowych technologii...
http://developer.radiusnetworks.com/2014/04/02/a-solution-for-android-bluetooth-crashes.html
![Page 91: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/91.jpg)
- Stabilność nie jest cechą nowych technologii
//FAKT TECHNICZNY #3
![Page 92: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/92.jpg)
OK to jedziemy jeszcze raz, i...
https://www.flickr.com/photos/artvlive/19548772122
Próbujemy ... działa! Aplikacja łączy się do naszego beacona! Ale od razu przerywa połączenie i łączy się do samochodu... Po dłuższej chwili jednak udało się "zhakować" samochód! Ale mój ;)
![Page 93: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/93.jpg)
FAKT TECHNICZNY #4
- Akumulator
![Page 94: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/94.jpg)
Akumulator kwasowo-ołowiowy – rodzaj akumulatora elektrycznego, opartego na
ogniwach galwanicznych zbudowanych z elektrody ołowiowej, elektrody z tlenku
ołowiu(IV) (PbO2) oraz ok. 37% roztworu wodnego kwasu siarkowego,
spełniającego funkcję elektrolitu.
Akumulator ołowiowy został wynaleziony przez francuskiego fizyka Gastona
Planté w 1859 r. Mimo wielu jego wad jest to wciąż najbardziej popularny rodzaj
akumulatorów elektrycznych. Występuje w niemal wszystkich samochodach, a
także wielu innych pojazdach (np. Melex). Oprócz tego stanowi często jeden z
elementów awaryjnego zasilania budynków, zakładów przemysłowych, szpitali,
central telefonicznych i polowych systemów oświetleniowych.
Akumulator kwasowo-ołowiowy
https://pl.wikipedia.org/wiki/Akumulator_kwasowo-o%C5%82owiowy
![Page 95: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/95.jpg)
- Akumulator
//FAKT TECHNICZNY #4
![Page 96: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/96.jpg)
Oprócz cennika parkingu:
Ech...
Zapoznajemy się z opłatami dodatkowymi taxi:
![Page 97: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/97.jpg)
ANALIZA APLIKACJI
![Page 98: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/98.jpg)
Jak działa parowanie?
Tryb konfiguracji
Generuj 24 losowe
hasła
Zapisz hasła w urządzeniu
Używaj pierwszego hasła
![Page 99: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/99.jpg)
Jak działa uwierzytelnienie po sparowaniu?
ID hasła (00)
AES("LOGIN",
AES (Challenge,
hasło
Pobierz "Challenge"
Komendy
Challenge
AES("LOGIN",AES(Challenge,hasło)
![Page 100: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/100.jpg)
Tablica haseł?
ID hasła (00)
ID hasła (25)?
AES("LOGIN",
AES (Challenge,
hasło
Pobierz "Challenge"
Komendy
Challenge
AES("LOGIN",AES(Challenge,hasło)
Hasło00 Hasło01 Hasło02 Hasło03
...
...
...
...
... Hasło23
Hasło00 Hasło01 Hasło02 Hasło03
...
...
...
...
... Hasło23
FFFF? 0000?
?
0000 FFFF?
![Page 101: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/101.jpg)
FAKT TECHNICZNY #5
- GATT – jak rozmawiać z urządzeniami BLE
![Page 102: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/102.jpg)
"Charakterystyki" i "serwisy"
"Charakterystyka" to w skrócie zmienna do której można zapisywać lub odczytywać – w zależności od uprawnień. Komunikacja odbywa się za pomocą protokołu GATT. Serwisy i charakterystyki typowe mają krótsze, ustandaryzowane nazwy:
GATT
Service
Characteristic
Characteristic
Characteristic
Service
Characteristic
Characteristic https://developer.bluetooth.org/gatt/services/Pages/ServicesHome.aspx
![Page 103: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/103.jpg)
Serwisy własne mają nazwy w formie UUID:
public static void readStatus() {
BleManager.connectManager.readCharacteristic("f8718d0
0-a51e-11e3-a5e2-0800200c9a66", "8e4f78d0-f6c5-11e3-
a3ac-0800200c9a66");
}
Odczyt "challenge" w kodzie aplikacji
Characteristic Service
![Page 104: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/104.jpg)
BlueZ www.bluez.org - gatttool
noble (nodejs) https://github.com/sandeepmistry/noble
Go https://godoc.org/github.com/paypal/gatt
PyBT https://github.com/mikeryan/PyBT
"PyBT is a crappy half implementation of a Bluetooth
stack in Python"
GATT – klient
![Page 105: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/105.jpg)
- GATT – jak rozmawiać z urządzeniami BLE
//FAKT TECHNICZNY #5
![Page 106: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/106.jpg)
Uzbrojeni w wiedzę o akumulatorach i opłatach parkingowych bierzemy
2 laptopy + rower.
Jedziemy na miejsce...
https://www.flickr.com/photos/mikecogh/6628027085/
Niestety atak na tablicę haseł nie działa. Może funkcja uwierzytelnienia innym kluczem nie jest jeszcze zaimplementowana w urządzeniu? W aplikacji mobilnej nie jest...
![Page 107: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/107.jpg)
"My, towarzysze, te trudności znamy!"
![Page 108: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/108.jpg)
Schemat działania jeszcze raz
![Page 109: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/109.jpg)
To już nam się udało wcześniej...
Alice
Bob
Mallory
![Page 110: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/110.jpg)
Atak?
![Page 111: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/111.jpg)
- setEngineBlockadeSetting – włączenie/wyłączenie
blokady zapłonu
- setBlinker – ustawienie sekwencji migaczy odblokowującego zapłon
- initConfigMode – konfiguracja od nowa (nowe hasła)
- initiateDataTransfer – pobranie aktualnej
konfiguracji (w tym wszystkie hasła)
Komendy po zalogowaniu
![Page 112: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/112.jpg)
Atak!
PWND! Mój telefon ma hasła i pełną kontrolę nad samochodem
![Page 113: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/113.jpg)
ATAK W PRAKTYCE
![Page 114: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/114.jpg)
MITM GATT?
GA
TT "SER
VER
"
GA
TT "CLIEN
T"
![Page 115: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/115.jpg)
Potrzebny serwer GATT z którym połączy się ofiara + klient GATT do
jednoczesnego połączenia z samochodem.
Dostępne opcje:
BlueZ
bleno (node)https://github.com/sandeepmistry/bleno
go (wtedy jeszcze nie działa)
https://godoc.org/github.com/paypal/gatt
PyBT (wtedy jeszcze nie było)
BlueZ – wygląda najbardziej obiecująco, od razu wbudowany też
klient GATT.
MITM Bluetooth GATT ?
![Page 116: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/116.jpg)
BlueZ – próba po dobroci...
http://www.deezer.com/album/8932449
Dobry wieczór, siadamy do kodu
![Page 117: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/117.jpg)
BlueZ – próba po dobroci...
http://www.deezer.com/album/8786649
Mają DBUS, możemy to wysterować z command-line
![Page 118: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/118.jpg)
BlueZ – próba po dobroci...
http://www.deezer.com/album/6761388
Niestety jesteśmy w lesie, DBUS jest w trakcie tworzenia ;)
![Page 119: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/119.jpg)
BlueZ – próba po dobroci...
http://www.deezer.com/album/434685
Wychodzimy z lasu – są przykładowe profile urządzeń. Wystarczy podmienić charakterystyki i zrekompilować.
![Page 120: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/120.jpg)
BlueZ – próba po dobroci...
http://www.deezer.com/album/9121411
Niestety znowu piętrzą się trudności. Nie działa.
![Page 121: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/121.jpg)
BlueZ...
http://www.deezer.com/album/6823356
No dobra, zaczynam się denerwować...
![Page 122: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/122.jpg)
BlueZ – wyższy poziom abstrakcji
http://www.deezer.com/artist/6807821
Wielowątkowość jest tu nieźle zamieszana. Tego kodu nie da się tego tak łatwo zrozumieć...
![Page 123: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/123.jpg)
BlueZ – wyższy poziom abstrakcji
http://www.deezer.com/album/550125
Gypsy Punk na ratunek!
![Page 124: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/124.jpg)
BlueZ – wyższy poziom abstrakcji
http://www.deezer.com/album/550140
Dopiero druga płyta daje radę
![Page 125: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/125.jpg)
Emulator samochodu działa w "lab" z moim telefonem!
Wydajność: 800 challenge+response na minutę.
Przy okazji spostrzeżenie: telefon loguje się do
urządzenia nawet jeśli ma wyłączoną funkcję automatycznego otwarcia zbliżeniowo.
Ta podatność ułatwiłaby atak w praktyce.
Wreszcie...
![Page 126: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/126.jpg)
Atak w praktyce
![Page 127: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/127.jpg)
Moja żona wspominając że potrzebuje nowy samochód nie myślała o
takim modelu ;) No i miała dla mnie ważniejsze prace...
Niestety limit czasu się wyczerpał...
![Page 128: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/128.jpg)
The circuit behaved in a manner that was inconsistent with
the design due to jitter in the setting clock. The voltage across the main power rail fluctuated more than ten volts in either direction during normal operation due to stray
harmonics. Moreover, spurious data corruption was noted in the RAM due to residual capacitance caused by the microcontroller. Attempts to further diagnose the source of
the problem were unsuccessful due to excessive heat emitted by the bluetooth and the PCB inducing current in the USB connector. We recommend further analysis to rule out electromagnetic interference.
Wreszcie przekonujące wyjaśnienie dlaczego nie zadziałało!
![Page 129: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/129.jpg)
Hardware Excuse Generator!
http://natashenka.ca/hardware-excuse-generator/
![Page 130: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/130.jpg)
"Challenge" statyczny, lub problemy z losowością.
Fuzzing serwisów GATT.
Nadmiarowa, ukryta funkcjonalność (np. debug OTA
chipsetu).
Funkcjonalność pożyczania.
Brute-force?
... i jeszcze kilka innych pomysłów
Co jeszcze mogło pójść nie tak?
![Page 131: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/131.jpg)
Tego się nie dowiemy w tych warunkach...
"Ja tu na deszczu, wilki jakieś!"
![Page 132: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/132.jpg)
Niestety kontakt się urwał...
![Page 133: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/133.jpg)
Uwierzytelnienie drugiej strony transmisji! Traktuj BLE
jako niezaufane medium.
Aplikacja loguje się do samochodu również gdy opcja autounlock jest wyłączona.
Zaciemnienie kodu aplikacji – trzeba jednak pamiętać że to tylko spowalnia analizę.
Warunki "bug bounty" - po kupieniu urządzenia intruz mógłby wykonać analizę i atak dużo łatwiej.
Co można było zrobić lepiej?
![Page 134: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/134.jpg)
PODSUMOWANIE
![Page 135: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/135.jpg)
Bezpieczeństwo urządzeń BLE...
BLE != CACY
https://www.flickr.com/photos/samstanton/299610271/
Analogicznie jak WWW 20 lat temu - był SSL ale nikt
nie słyszał o SQL injection.
Za bezpieczeństwo warstwy aplikacji odpowiedzialny
jest programista. Traktuj BLE jako niezaufane medium.
Ryzyko ataku na urządzenia BLE zależy od scenariusza
użycia, może zmienić się w czasie – nowe narzędzia,
powszechność technologii.
Bluetooth Low Energy: ograniczenia sprzętowe,
problemy ze wsparciem, problemy ze stabilnością.
![Page 136: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/136.jpg)
WHITE VS BLACKBOX
![Page 137: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/137.jpg)
http://www.ibtimes.com/canadian-military-puts-630k-bounty-hacking-defending-2015-pickup-truck-2132579
![Page 138: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/138.jpg)
http://thehill.com/policy/cybersecurity/255832-fear-of-lawsuits-chills-car-hack-research
![Page 139: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/139.jpg)
Bądź czujny – tak, strzeż tajemnicy – tak, opieraj bezpieczeństwo na tajemnicy – NIE!
![Page 140: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/140.jpg)
Zaciemnienie, ograniczenia mogą co najwyżej spowolnić
intruza.
We współpracy osiągniemy najwięcej w (zawsze)
ograniczonym czasie.
Wspólnie jesteśmy w stanie wypracować najlepsze
rozwiązania problemów.
Nawet krótka rozmowa ze specjalistą od bezpieczeństwa
może bardzo dużo zmienić, zwłaszcza na etapie koncepcji.
Bezpieczeństwa często nie da się "dorobić" później.
Whitebox!
![Page 141: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/141.jpg)
Zamiast narzekać na bezpieczeństwo aplikacji, postanowiliśmy zrobić coś dla lepszego Świata ;)
Co tydzień przeznaczamy godzinę naszego czasu na nieodpłatne konsultacje.
www.securing.pl/konsultacje
Ta prezentacja (wkrótce), inne:
www.securing.pl
Darmowe konsultacje!
![Page 143: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/143.jpg)
W prezentacji wykorzystano dostępne w serwisie YouTube fragmenty polskich kronik filmowych (m.in z przemówieniami Edwarda Gierka),
a także programu edukacyjnego "Przybysze z Matplanety".
![Page 144: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/144.jpg)
OPASKA SPORTOWA
- "Na bis"
![Page 145: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/145.jpg)
Nike FuelBand
![Page 146: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/146.jpg)
Opaska sportowa - uwierzytelnienie
Hello!
Challenge
CRC(Challenge, hasło)
indywidualne hasło: F67C76EA 9C50
OK!
0xF495C98693075322225EB8B8A4D79B39
Co tu mogło pójść nie tak?
http://www.evilsocket.net/2015/01/29/nike-fuelband-se-ble-protocol-reversed/
![Page 147: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/147.jpg)
private short calculateChallengeResponse(byte[] paramArrayOfByte) {
CopperheadCRC32 localCopperheadCRC32 = new CopperheadCRC32();
localCopperheadCRC32.update(paramArrayOfByte);
localCopperheadCRC32.update(mAuthToken);
return (short)(0xFFFF & localCopperheadCRC32.getValue() ^ 0xFFFF &
localCopperheadCRC32.getValue() >>> 16);
}
Nie, algorytm jest OK.
Opaska sportowa – może CRC32?
![Page 148: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/148.jpg)
Opaska sportowa - uwierzytelnienie
Hello!
Challenge
CRC(Challenge, hasło)
indywidualne hasło:
OK!
0xF495C98693075322225EB8B8A4D79B39
W praktyce zamiast hasła używane jest zawsze FF FF FF FF FF FF. Każdy kto się zbliży może się zalogować.
F67C76EA 9C50 FFFFFFFFFFFFFF
http://www.evilsocket.net/2015/01/29/nike-fuelband-se-ble-protocol-reversed/
![Page 149: Hacking Bluetooth Smart](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587d24191a28ab1c2f8b6229/html5/thumbnails/149.jpg)
Warunki
- bliska odległość
Skutki
- odczyt bieżącego pulsu?
może być stotny np. przy negocjacjach
lub jeśli jest daną biometryczną
Ryzyko?
http://www.ibtimes.co.uk/fears-barack-obamas-new-fitbit-fitness-tracker-represent-national-security-risk-1492705