5.9 KiB
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.
Uvod
Dostupan od Bluetooth 4.0 specifikacije, BLE koristi samo 40 kanala, pokrivajući opseg od 2400 do 2483.5 MHz. Nasuprot tome, tradicionalni Bluetooth koristi 79 kanala u istom opsegu.
BLE uređaji komuniciraju slanjem oglasnih paketa (beacon-a), ovi paketi emitiraju postojanje BLE uređaja drugim obližnjim uređajima. Ovi beacon-i ponekad takođe šalju podatke.
Uređaj koji sluša, takođe nazvan centralni uređaj, može odgovoriti na oglasni paket sa SCAN zahtevom poslatim posebno oglasnom uređaju. Odgovor na taj sken koristi istu strukturu kao i oglasni paket sa dodatnim informacijama koje nisu mogle stati u inicijalni oglasni zahtev, kao što je puno ime uređaja.
Bajt preambule sinhronizuje frekvenciju, dok je četvorobajtna adresa pristupa identifikator veze, koji se koristi u scenarijima gde više uređaja pokušava da uspostavi veze na istim kanalima. Sledeće, Protokol Jedinica Podataka (PDU) sadrži oglasne podatke. Postoji nekoliko tipova PDU; najčešće korišćeni su ADV_NONCONN_IND i ADV_IND. Uređaji koriste tip PDU ADV_NONCONN_IND ako ne prihvataju veze, prenoseći podatke samo u oglasnom paketu. Uređaji koriste ADV_IND ako dozvoljavaju veze i prestaju da šalju oglasne pakete kada je veza uspostavljena.
GATT
Generički atributni profil (GATT) definiše kako uređaj treba da formatira i prenosi podatke. Kada analizirate površinu napada BLE uređaja, često ćete usmeriti svoju pažnju na GATT (ili GATT-ove), jer je to način na koji se funkcionalnost uređaja aktivira i kako se podaci čuvaju, grupišu i modifikuju. GATT navodi karakteristike, deskriptore i usluge uređaja u tabeli kao 16- ili 32-bitne vrednosti. Karakteristika je vrednost podataka poslata između centralnog uređaja i perifernog. Ove karakteristike mogu imati deskriptore koji pružaju dodatne informacije o njima. Karakteristike se često grupišu u usluge ako su povezane sa izvršavanjem određene radnje.
Enumeracija
hciconfig #Check config, check if UP or DOWN
# If DOWN try:
sudo modprobe -c bluetooth
sudo hciconfig hci0 down && sudo hciconfig hci0 up
# Spoof MAC
spooftooph -i hci0 -a 11:22:33:44:55:66
GATTool
GATTool omogućava uspostavljanje veze sa drugim uređajem, prikazujući karakteristike tog uređaja, kao i čitanje i pisanje njegovih atributa.
GATTTool može pokrenuti interaktivnu ljusku sa -I
opcijom:
gatttool -i hci0 -I
[ ][LE]> connect 24:62:AB:B1:A8:3E Attempting to connect to A4:CF:12:6C:B3:76 Connection successful
[A4:CF:12:6C:B3:76][LE]> characteristics
handle: 0x0002, char properties: 0x20, char value handle:
0x0003, uuid: 00002a05-0000-1000-8000-00805f9b34fb
handle: 0x0015, char properties: 0x02, char value handle:
0x0016, uuid: 00002a00-0000-1000-8000-00805f9b34fb
[...]
# Write data
gatttool -i <Bluetooth adapter interface> -b <MAC address of device> --char-write-req <characteristic handle> -n <value>
gatttool -b a4:cf:12:6c:b3:76 --char-write-req -a 0x002e -n $(echo -n "04dc54d9053b4307680a"|xxd -ps)
# Read data
gatttool -i <Bluetooth adapter interface> -b <MAC address of device> --char-read -a 0x16
# Read connecting with an authenticated encrypted connection
gatttool --sec-level=high -b a4:cf:12:6c:b3:76 --char-read -a 0x002c
Bettercap
# Start listening for beacons
sudo bettercap --eval "ble.recon on"
# Wait some time
>> ble.show # Show discovered devices
>> ble.enum <mac addr> # This will show the service, characteristics and properties supported
# Write data in a characteristic
>> ble.write <MAC ADDR> <UUID> <HEX DATA>
>> ble.write <mac address of device> ff06 68656c6c6f # Write "hello" in ff06
{% hint style="success" %}
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.