mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 05:03:35 +00:00
5.5 KiB
5.5 KiB
零基础学习AWS黑客攻击成为英雄 htARTE (HackTricks AWS Red Team Expert)!
支持HackTricks的其他方式:
- 如果您想在HackTricks中看到您的公司广告或下载HackTricks的PDF,请查看订阅计划!
- 获取官方PEASS & HackTricks商品
- 发现PEASS家族,我们独家的NFTs系列
- 加入 💬 Discord群组或telegram群组或在Twitter 🐦 上关注我 @carlospolopm。
- 通过向 HackTricks 和 HackTricks Cloud github仓库提交PR来分享您的黑客技巧。
介绍
自蓝牙4.0规范以来,BLE仅使用40个频道,覆盖2400至2483.5 MHz范围。相比之下,传统蓝牙在同一范围内使用79个频道。
BLE设备通过发送广告包(信标)来通信,这些包将BLE设备的存在广播给附近的其他设备。这些信标有时也发送数据。
监听设备,也称为中央设备,可以对广告包发送特定于广告设备的扫描请求。对该扫描的响应使用与广告包相同的结构,但包含了无法在最初的广告请求中放入的额外信息,例如完整的设备名称。
前导字节同步频率,而四字节接入地址是连接标识符,在多个设备尝试在同一频道上建立连接的场景中使用。接下来,协议数据单元(PDU)包含广告数据。PDU有几种类型;最常用的是ADV_NONCONN_IND和ADV_IND。如果设备不接受连接,它们将使用ADV_NONCONN_IND PDU类型,仅在广告包中传输数据。如果设备允许连接并在建立连接后停止发送广告包,它们将使用ADV_IND。
GATT
通用属性配置文件(GATT)定义了设备应如何格式化和传输数据。当您分析BLE设备的攻击面时,您通常会集中注意力在GATT(或GATTs)上,因为这是如何触发设备功能以及如何存储、分组和修改数据的方式。GATT以表格形式列出了设备的特性、描述符和服务,作为16位或32位值。特性是在中央设备和外围设备之间发送的数据值。这些特性可以有描述符,提供有关它们的额外信息。如果特性与执行特定操作相关,则通常会在服务中分组。
枚举
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 允许与另一设备建立连接,列出该设备的特性,并读写其属性。
GATTTool 可以使用 -I
选项启动一个交互式shell:
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
从零到英雄学习AWS黑客攻击,通过 htARTE (HackTricks AWS Red Team Expert)!
支持HackTricks的其他方式:
- 如果您想在HackTricks中看到您的公司广告或下载HackTricks的PDF版本,请查看订阅计划!
- 获取官方PEASS & HackTricks商品
- 发现PEASS家族,我们独家的NFTs系列
- 加入 💬 Discord群组或telegram群组或在Twitter 🐦 上关注我 @carlospolopm。
- 通过向 HackTricks 和 HackTricks Cloud github仓库提交PR来分享您的黑客技巧。