Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
книги хакеры / практический хакинг.pdf
Скачиваний:
23
Добавлен:
19.04.2024
Размер:
31.35 Mб
Скачать

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

to

 

 

 

 

 

# hciconfig hci0 reset

w Click

 

 

 

 

 

m

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

 

.

 

 

 

 

 

.c

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

 

-x cha

 

 

 

 

Вытакже можете просмотретьдополнительную информацию с по­ мощью параметра -a:

# hciconfig hci0 -a

hci0: Type: Primary Bus: USB

BD Address: 00:1A:7D:DA:71:13 ACL MTU: 310:10 SCO MTU: 64:8 UP RUNNING

RX bytes:17725 acl:0 sco:0 events:593 errors:0 TX bytes:805 acl:0 sco:0 commands:72 errors:0 Features: 0xff 0xff 0x8f 0xfe 0xdb 0xff 0x5b 0x87 Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 Link policy: RSWITCH HOLD SNIFF PARK

Link mode: SLAVE ACCEPT Name: 'CSR8510 A10' Class: 0x000000

Service Classes: Unspecified

Device Class: Miscellaneous,

HCI Version: 4.0 (0x6) Revision: 0x22bb

LMP Version: 4.0 (0x6) Subversion: 0x22bb

Manufacturer: Cambridge Silicon Radio (10)

Обнаружение устройств и перечисление характеристик

Если устройство IoT с поддержкой BLE не защищено должным обра- зом, вы можете перехватывать, анализировать, изменять и повторно передавать его сообщения для управления работой устройства. В це- лом при оценке безопасности­ устройства IoT с помощью­ BLE необхо- димо следующее.

1.Найдите адрес устройства BLE.

2.Просканируйте серверы GATT.

3.Определите их функциональность с помощью­ перечисленных характеристик, служб и атрибутов.

4.Управляйте работой устройства с помощью­ операций чтения и записи.

Рассмотрим реализацию этих шагов с помощью­ двух инструмен-

тов: GATTTool и Bettercap.

GATTTool

GATTTool является частью BlueZ. В основном вы будете использо- вать его для таких операций, как установление соединения с другим устройством, перечисление характеристик этого устройства, а также

Bluetooth Low Energy (BLE)  319

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

чтение и запись его атрибутов. Запустите GATTTool без аргументов,

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

 

w Click

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

чтобы увидеть список поддерживаемых действий.

 

w

 

df-x chan

 

o

 

 

.

.c

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

e

 

GATTTool может запускать интерактивную оболочку с параметром -I. Следующая команда задает интерфейс адаптера BLE, чтобы вы могли подключиться к устройству и получить перечень его характе- ристик:

# gatttool -i hci0 -I

Внутри­ интерактивной оболочки введите команду connect <mac address­>,чтобы установить соединение; затем получите перечень ха- рактеристик с помощью­ подкоманды characteristics:

[

][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

handle: 0x0055, char properties: 0x02, char value handle: 0x0056, uuid: 0000ff17-0000-1000-8000-00805f9b34fb

[A4:CF:12:6C:B3:76][LE]> exit

Теперьунасестьдескрипторы,значенияислужбы,которыеописы- вают данные и операции, поддерживаемые устройством BLE.

Давайте проанализируем эту информацию с помощью­ Bettercap – более мощного инструмента, который поможет нам увидеть инфор- мацию в удобочитаемом формате.

Bettercap

Bettercap (https://www.bettercap.org/) – это инструмент для сканирова-

ния и атаки устройств, которые работают на частоте 2,4 ГГц. У него удобный графический интерфейс,имеются расширяемые модулидля наиболее распространенных задач сканирования и атак BLE, таких как прослушивание инфопакетов и выполнение операций чтения/ записи. Кроме того, вы можете использовать его для атак на Wi-Fi, HID и другие технологии (методом «человек посередине» или иным образом).

Bettercap установлен на Kali по умолчанию и доступен в большин- стве менеджеров пакетов Linux. Вы можете установить и запустить его из Docker следующим образом:

#docker pull bettercap/bettercap

#docker run -it --privileged --net=host bettercap/bettercap -h

320  Глава 11

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Чтобы обнаружить устройства с поддержкой BLE, включитеwмо-

 

 

 

 

 

 

m

дуль BLE и начните захват маяков с помощью­

w Click

 

 

 

 

 

 

o

 

w

 

 

 

 

 

 

 

 

 

параметра ble.reconf.-x chan

 

.c

 

 

 

.

 

 

 

 

 

 

 

 

 

 

p

d

 

 

 

 

e

 

 

 

 

 

 

 

 

g

 

 

 

Вызов его с параметром --eval при загрузке Bettercap принимает команды Bettercap и автоматически выполняет их в процессе рабо-

ты Bettercap:

# bettercap --eval "ble.recon on"

Bettercap v2.24.1 (built for linux amd64 with go1.11.6) [type 'help' for a list of commands]

192.168.1.6/24 > 192.168.1.159 >> [16:25:39] [ble.device.new] new BLE device BLECTF detected as A4:CF:12:6C:B3:76 -46 dBm

192.168.1.6/24 > 192.168.1.159 >> [16:25:39] [ble.device.new] new BLE device BLE_CTF_SCORE detected as 24:62:AB:B1:AB:3E -33 dBm

192.168.1.6/24 > 192.168.1.159 >> [16:25:39] [ble.device.new] new BLE device detected as 48:1A:76:61:57:BA (Apple, Inc.) -69 dBm

Вы должны увидеть строку для каждого полученного рекламного пакета BLE. Эта информация содержит имя устройства и MAC-адрес, которые вам понадобятся для установления связи с устройствами.

Если вы запустили Bettercap с параметром eval, можете записы- вать все обнаруженные устройства автоматически. Затем командой ble.show вы легко выведете список обнаруженных устройств и со- путствующую информацию: их MAC-адреса, поставщиков и флаги

(рис. 11.6).

>> ble.show

Обратите внимание, что выходные данные команды ble.show со- держат мощность сигнала (RSSI), MAC-адрес, который мы будем ис- пользовать для подключения к устройству, название производителя, который может дать подсказку о нужном нам типе устройства. Дан- ные также содержат комбинацию поддерживаемых протоколов, ста- тус соединения и метку времени последнего полученного маяка.

Рис.11.6.Bettercap показывает обнаруженные устройства

Получение перечня характеристик,служб и дескрипторов

После того как мы определили MAC-адрес целевого устройства, мож- но выполнить следующую команду Bettercap. Она выводит красивую

Bluetooth Low Energy (BLE)  321

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

 

C

 

E

 

 

 

 

 

X

 

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

 

F

 

 

 

 

 

 

t

 

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

отформатированную таблицу с характеристиками, сгруппированны-

 

 

to

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

 

w Click

 

 

 

 

 

 

ми по службам, их свойствам и данным,доступным через GATT:

w

 

df-x chan

 

 

 

 

w

 

 

o

 

 

 

.

 

 

 

 

 

.c

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

 

 

 

 

 

 

e

 

>>ble.enum <mac addr>

На рис. 11.7 показана полученная таблица.

Рис.11.7.Получение перечня серверов GATT с помощью­ Bettercap

ВстолбцеData видно,чтоэтотсерверGATTпредставляетсобойпри- борную панель CTF с различной информацией,такой как инструкции по отправке ответов.

Это интересный способ изучить атаки на практике. Но прежде чем мы перейдем к реализации одной из них, давайте убедимся, что вы умеетевыполнятьклассическиеоперациичтенияизаписи.Выбудете использовать их для поиска и записи данных, которые изменяют со- стояние устройства. Свойство WRITE подсвечено, когда дескрипторы свидетельствуют о том, что эта операция разрешена; обратите осо- бое внимание на настройки устройства,потому что они часто бывают ошибочными.

Чтение и записьхарактеристик

В BLE UUID однозначно идентифицирует характеристики, службы и атрибуты. Зная UUID характеристики, вы можете записать в нее данные с помощью­ команды ble.write Bettercap:

>> ble.write <MAC ADDR> <UUID> <HEX DATA>

322  Глава 11