Pentesting BLE - Bluetooth Low Energy
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Bluetooth 4.0 spesifikasyonundan beri mevcut olan BLE, yalnızca 40 kanal kullanır ve 2400 ile 2483.5 MHz aralığını kapsar. Buna karşılık, geleneksel Bluetooth bu aynı aralıkta 79 kanal kullanır.
BLE cihazları, reklam paketleri (beaconlar) göndererek iletişim kurar; bu paketler, BLE cihazının varlığını diğer yakın cihazlara yayınlar. Bu beaconlar bazen veri de gönderir.
Dinleyici cihaz, merkezi cihaz olarak da adlandırılır, bir reklam paketine SCAN isteği ile yanıt verebilir; bu istek özel olarak reklam cihazına gönderilir. O tarama isteğine verilen yanıt, tam cihaz adını gibi ilk reklam isteğine sığmayan ek bilgilerle birlikte reklam paketinin aynı yapısını kullanır.
Preambül baytı frekansı senkronize ederken, dört baytlık erişim adresi bir bağlantı tanımlayıcısıdır; bu, birden fazla cihazın aynı kanallarda bağlantı kurmaya çalıştığı senaryolarda kullanılır. Sonraki Protokol Veri Birimi (PDU), reklam verilerini içerir. Birkaç PDU türü vardır; en yaygın olarak kullanılanlar ADV_NONCONN_IND ve ADV_IND'dir. Cihazlar, bağlantıları kabul etmiyorlarsa ADV_NONCONN_IND PDU türünü kullanır ve yalnızca reklam paketinde veri iletir. Cihazlar, bağlantılara izin veriyorlarsa ADV_IND kullanır ve bir bağlantı kurulduğunda reklam paketlerini göndermeyi durdurur.
Generic Attribute Profile (GATT), cihazın verileri nasıl biçimlendireceğini ve ileteceğini tanımlar. Bir BLE cihazının saldırı yüzeyini analiz ederken, genellikle dikkatinizi GATT (veya GATT'ler) üzerinde yoğunlaştırırsınız, çünkü bu, cihaz işlevselliğinin tetiklendiği ve verilerin nasıl depolandığı, gruplandığı ve değiştirildiğidir. GATT, bir cihazın özelliklerini, tanımlayıcılarını ve hizmetlerini 16 veya 32 bit değerler olarak bir tabloda listeler. Bir özellik, merkezi cihaz ile çevresel cihaz arasında gönderilen bir veri değeridir. Bu özellikler, onlara ek bilgi sağlayan tanımlayıcılar içerebilir. Özellikler, belirli bir eylemi gerçekleştirmekle ilgili olduklarında genellikle hizmetlerde gruplandırılır.
GATTool, başka bir cihazla bağlantı kurmayı sağlar, o cihazın özelliklerini listeleyebilir ve niteliklerini okuyup yazabilir.
GATTTool, -I
seçeneği ile etkileşimli bir kabuk başlatabilir:
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Eğitim AWS Kırmızı Takım Uzmanı (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Eğitim GCP Kırmızı Takım Uzmanı (GRTE)