При попытке изучить BLE мне интересно, можно ли анализировать его с помощью таких инструментов, как wirehark и snort? Я наткнулся на него по имени «ubertooth», но это USB-устройство, которое нужно приобрести для того, чтобы мы могли делать DPI на BLE-кадрах, правильно? возможно ли захватить и проанализировать кадры BLE на проволочной акуле?Анализ трафика с низкой энергией Bluetooth
ответ
Для анализа сигналов BLE вам действительно требуется устройство с поддержкой BLE, поэтому, если ваше устройство не поддерживает BLE, вы не можете его проанализировать.
Возможно ли захватить и проанализировать кадры BLE на проволочной акуле?
Если вы каким-то образом удалось захватить Bluetooth LE трафика в PCAP или pcapng файл с типом заголовка канального уровня LINKTYPE_BLUETOOTH_LE_LL или LINKTYPE_BLUETOOTH_LE_LL_WITH_PHDR, вы можете анализировать их.
Однако the Wireshark Wiki page on capturing Bluetooth traffic говорит только о
- захвата трафика и от вашей машины на Linux;
- пассивно захватывающий сторонний трафик с Ubertooth;
так, в то время как вы можете быть в состоянии анализировать трафика с помощью Wireshark, вы не могли бы быть в состоянии захвата него с Wireshark. Как отметил Джош Бейкер, вы можете захватить с именованного канала и вывести выход инструмента ubertooth-btle
в Wireshark. (Было бы неплохо, если бы был модуль libpcap для Ubertooth, чтобы вы могли захватывать больше напрямую с Wireshark.)
Но если вы не хотите покупать устройство Ubertooth, возможно, вы не сможете захватить Bluetooth LE трафика.
BLE поддерживается на большинстве устройств Android. Вы можете записывать пакеты bluetooth, просто перейдя в «Параметры разработчика» -> Включить протокол Bluetooth HCI snoop. Журнал будет сохранен в /sdcard/btsnoof_hci.log. Это, однако, не будет работать, если ваша цель - пассивно контролировать, он будет получать трафик только на ваше устройство.
ОП задает вопрос об анализе BLE на wirehark специально. –
Да, для анализа пакетов BLE можно использовать wirehark, но вам понадобится дополнительное оборудование. Для прослушивания соединения требуется поддержка уровня базовой полосы, который реализован внутри набора микросхем Bluetooth. Программное обеспечение набора микросхем внутри вашего компьютера не поддерживает обнюхивание, поэтому вам понадобится другой набор микросхем, программное обеспечение которого вы можете контролировать.
Я использую nRF51 Dongle, который представляет собой набор для nRF51, BLE + Cortex M0 SoC от Nordic Semi. Nordic предоставляет прошивку для этой платы, которая превращает ее в сниффера. Они также предоставляют приложение для Windows, которое общается с этой прошивкой через USB, чтобы вернуть данные обнюхивания, и это форматирует его в понятном для Wireshark пути.
Если вы находитесь в Windows, вы можете использовать только the tools provided by Nordic on this page и следуйте инструкциям в Руководстве пользователя.
Если, как я, вы на Mac, вам необходимо:
- RKNRFGO программировать пользовательские прошивки
- nrf-ble-sniffer-osx общаться с ним и трубой пакеты в Wireshark.
nrf-ble-sniffer-osx Wiki объясняет, как настроить его. Благодаря Roland King для создания этих инструментов.
Два важных предостережений для установки Mac:
- Установка Wireshark Перед NRF-BLE-снифер-OSX. Это связано с тем, что nrf-ble-sniffer-osx необходимо установить некоторые дополнительные фильтры для Wireshark, чтобы он мог декодировать заголовки, которые прошивка Nordic добавляет к пакетам, и это не будет сделано, если Wireshark будет установлен позже.
- Использование Wireshark версии 1.12. На момент написания этой статьи не работала новая версия. Да, это означает, что вам придется использовать XQuartz.
Если вы в Linux, it looks like it's also possible to use this dongle, но я не пробовал.
Затем, когда все работает, и вы трубные пакеты в Wireshark вы можете использовать все удивительные Wireshark встроенные фильтры для Bluetooth и BLE: btatt, btl2cap, btle ...
- 1. Соединение с низкой энергией Bluetooth
- 2. Диапазон сканирования клиентов с низкой энергией Bluetooth
- 3. Bluetooth-сервер с низкой энергией Android
- 4. Поддержка устройства Bluetooth с низкой энергией (BTLE)
- 5. API с низкой энергией Bluetooth в java
- 6. Передача файла с низкой энергией Bluetooth
- 7. Батарея с низкой энергией Bluetooth для linux
- 8. API с низкой энергией Bluetooth Windows 8
- 9. Является ли Bluetooth Smart Ready низкой энергией?
- 10. Сканирование bluetooth с низкой энергией с помощью hcitool?
- 11. Совместимость iBeacon bluetooth с низкой энергией с Android 4.3
- 12. IOS: правила сканирования Bluetooth с низкой энергией (BLE)
- 13. bluetooth рекламный пакет с низкой энергией и топология
- 14. Формат пакета рекламы с низкой энергией Bluetooth android
- 15. Реклама с низкой энергией Bluetooth для обнаружения в настройках iOS
- 16. Открытие приложения (iPhone) через bluetooth с низкой энергией
- 17. Управление низкой энергией Bluetooth с множеством действий и фрагментов
- 18. API с низкой энергией Bluetooth для Jelly Bean 4.2
- 19. Получить MAC-адрес периферийного устройства с низкой энергией bluetooth
- 20. Соединение с низкой энергией Bluetooth со специальным устройством
- 21. Android 4.3, не показывающий объявления с низкой энергией Bluetooth
- 22. Как получить значение rssi для устройства с низкой энергией Bluetooth?
- 23. Как вы получаете фактическое название устройства с низкой энергией bluetooth?
- 24. Запуск нового образца с низкой энергией Bluetooth вызывает RuntimeException
- 25. Получить ручку устройства устройства с низкой энергией Bluetooth
- 26. Подключите iphone с двумя устройствами с низкой энергией
- 27. Как привязать вручную к устройству с низкой энергией BlueTooth в WinForm с помощью C#?
- 28. Как я могу прочитать серию bluetooth с низкой энергией с телефонной связью?
- 29. Извлечение большого 32-битного беззнакового целого из характеристики GATT с низкой энергией Bluetooth
- 30. Как сканировать устройства с низкой энергией (BLE) Bluetooth, которые доступны/присутствуют?
хорошо я использую Bluetooth 4.0 который обнаруживает мой маяк (оценка) на малине pi, но когда я открываю wirehark, установленный на одном и том же малине pi, он ничего не показывает под фильтром «BLE», весь трафик, который он захватывает, является обычным TCP и UDP. – user3563251
Вы попробовали? https://github.com/greatscottgadgets/ubertooth/wiki/Capturing-BLE-in-Wireshark –