Hci bluetooth android что это

btsnoop_hci.log — что за файл?

  • Описание
  • Разбираемся
  • Вывод

Приветствую. Сегодня поговорим об одном файле, который можете встретить на смартфоне под управлением Андроид.

Описание

btsnoop_hci.log — лог-файл, который создается при прослушивании трафика Блютуз, когда активна функция Журнал Bluetooth HCI.

Разбираемся

  1. При проведении глубокой очистки можно обнаружить btsnoop_hci.log, который может весить прилично, например более 2 гигабайта.
  2. По информации в интернете — это отчет, лог, на работу программ никак не влияет, поэтому можно удалить. Только сперва отключите журнал трансляций операций HCI Bluetooth. Если этого пункта нет, значит функция отключена, просто удалите файл.
  3. Но что вообще за btsnoop_hci.log? Это файл, в который записывают данные о прослушивании трафика Блютуз. Точнее записывается информация о пакетах, обычному пользователю это вряд ли может быть интересно. Но поэтому и размер может быть большой — так как туда постоянно складируются данные, особенно когда Блютуз включен.

Как отключить создание btsnoop_hci.log? На самом деле просто. Сперва откройте настройки устройства:

Далее находим пункт Для разработчиков:

Далее необходимо отключить опцию Включить журнал трансляций операций HCI Bluetooth:

После отключения опции — можно удалить файл btsnoop_hci.log. Он больше появляться не должен.

Пункт также может называться немного иначе, а именно Журнал Bluetooth HCI:

Заключение

  • btsnoop_hci.log — файл содержит данные о пакетах трафика Блютуз, чтобы файл не создавался нужно отключить опцию прослушивания Блютуз.
  • Сам файл можно спокойно удалить, если вы только не собираетесь анализировать данные. Но лучше перед удалением отключить функцию.

Удачи и добра. До новых встреч друзья!

Добавить комментарий Отменить ответ

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

Источник

Как работает Bluetooth сниффинг на Android

Пользователям, которые любят все время быть в курсе возможностей своего гаджета, увлекаются телекомом и хотят научиться осуществлять перехват пакетов синезуба на своем смартфоне/планшете, предлагаем ознакомиться с информацией о Bluetooth сниффинге на Android.

О сниффинге

Для тех, кто не знает, о чем пойдет речь, немного теории.

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

Обычно этот способ используется в компьютерных связках для кражи паролей и других важных данных; на Android такую процедуру сделать сложно, потому что в мобильных устройствах нет совместимых комплектующих для ее проведения.

Как работает прослушивание трафика

Прослушивание трафика через синезуб осуществляется только «в себя», то есть происходит перехват входящего и исходящего трафика того узла, откуда вы отдаете команды. В этой операции большую роль играет Host_Controller_Interface (HCI), который разрешает обращаться к передатчику. НСІ-узел подключается к узлу драйвера Bluetooth-устройства, которое принимает данные, и к L2CAP (исходящему потоку данных).

Всю информацию об этих пакетах можно посмотреть в специальном log-файле; он может записываться в памяти смартфона.

Настраиваем запись log-файла

Для активации учета данных о пакетах через синезуб нужно выполнить ряд действий.

  • Перейти в настройки девайса.
Читайте также:  Файловый менеджер для андроид стандартный

  • Выбрать пункт «Для разработчиков».

  • Активировать пункт «Включить журнал трансляции операций HCI Bluetooth».

  • После этих действий в памяти устройства (в корне флэшки) будет создан специальный log-документ с названием btsnoop_hci.log, куда и будет система записывать данные.

Другое применение

Более простое применение Bluetooth сниффера на Android-это использование специальных приложений, которые находят, расшифровывают и наглядно демонстрируют информацию о других устройствах.

К примеру, в Google Play есть приложение с названием Signal Sniffer — Fitbit finder. Его задача заключается в том, чтобы просканировать сеть, найти вблизи доступные устройства и отобразить информацию о них. Никаких паролей она не покажет, только такие мелкие данные, как адрес девайса и уровень сигнала.

Скачать программу можно перейдя по ссылке.

Если же вы всерьез хотите заняться перехватом данных через Bluetooth, советуем обратить внимание на FTS4BT_Wireless Bluetooth_Protocol_Analyzer»: это приложение стоит немалых денег, но взамен может на лету декодировать абсолютно весь трафик из эфира, отсортировывая аудио, данные протоколов и другое.

Как настроить Bluetooth на Android: Видео

Источник

Bluetooth: Архитектура — Host Controller Interface (HCI)

Общее описание
HCI представляет собой командный интерфейс контроллера Baseband и менеджера связи, а так же предоставляет доступ к параметрам конфигурации устройства Bluetooth . Этот интерфейс предоставляет единообразный способ доступа к параметрам Baseband.

Нижние программные уровни стека Bluetooth

Хост – устройство, к которому подключен модуль Bluetooth.
На рисунке изображен обзор нижних программных уровней. Аппаратное ПО (микропрограмма) HCI преобразует команды интерфейса контроллера хоста в команды для физического оборудования Bluetooth (для Baseband и менеджера связей), а так же управляет статусными регистрами, регистрами управления и регистрами событий.
Между драйвером HCI и аппаратным ПО HCI могут существовать несколько слоев. Эти промежуточные слои не контролируют данные, передаваемые транспортным уровнем хост контроллера.
Драйвер HCI осуществляет обмен данными и командами с аппаратным ПО HCI. Для обеспечения передачи этих данных служит драйвер транспортного уровня хост контроллера (драйвер физической шины).
Хост получает асинхронные уведомления о событиях HCI независимо от того, как используется транспортный уровень. Когда хост обнаруживает, что произошло событие, он анализирует пакеты полученных событий для того, чтобы определить, какое событие произошло.

Транспортный уровень контроллера хоста
Стек драйверов хоста имеет транспортный уровень между драйвером контроллера хоста и хостом. Транспортный уровень прозрачен для передачи данных. Драйвер контроллера хоста, являющийся интерфейсом к контроллеру, должен быть независимым от способа передачи данных. К способу передачи данных не должны предъявляться требования знания данных, передаваемых драйвером контроллера самому контроллеру. Это позволяет изменять интерфейс (HCI) или контроллер, не влияя на транспортный уровень.

Обзор команд и событий HCI

Общие события — события могут возникать от команд или других событий, возникающий в любое время.
Установка устройства — команды используются для переключения контроллера в определенное состояние.
Контроллер управления потоком — эти команды совместно с событиями используются для управления потоком от хоста к контроллеру.
Информация контроллера — эти команды позволяют хосту обнаруживать локальную информацию об устройстве.
Конфигурация контроллера — эти команды совместно с событиями позволяют настраивать общие конфигурационные параметры.
Обнаружение устройств эти команды совместно с событиями позволяют устройству обнаруживать другие устройства.
Установка соединения — эти команды совместно с событиями позволяют устройству подключаться к другому устройству.
Информация о другом устройстве — эти команды совместно с событиями позволяют обнаруживать информацию о других устройствах.
Синхронные соединения — эти команды совместно с событиями позволяют создавать синхронные соединения.
Состояние соединения — эти команды совместно с событиями позволяют настраивать связь, преимущественно для операций, уменьшающих энергопотребление.
Структура сети Piconet — эти команды совместно с событиями позволяют обнаруживать и настраивать сеть Piconet.
Качество обслуживания — эти команды совместно с событиями позволяют настраивать параметры качества обслуживания.
Физические связи — эти команды совместно с событиями позволяют настраивать физическую связь.
Управление потоком хоста — эти команды совместно с событиями позволяют использовать управление потоком данных совместно с хостом.
Информация о связи — эти команды совместно с событиями позволяют читать информацию о связи.
Аутентификация и шифрование — эти команды совместно с событиями позволяют аутентифицировать другое устройство и зашифровать связь с ним.
Тестирование — эти команды совместно с событиями позволяют переводить устройство в тестовый режим.

Читайте также:  Прикольные часы для андроид

Управление потоком HCI

Управление потоком от хоста к контроллеру
Управление потоком в этом направлении используется для предотвращения переполнения буфера данных контроллера с данными ACL, направляющимися на другое устройство (используя хендл соединения), которое не отвечает. Хост управляет буферами данных контроллера.

Управление потоком от контроллера к хосту
В некоторых реализациях может быть необходимым управление потоком в направлении от контроллера к хосту. Данный набор команд может использоваться для включения или отключения управления потоком в данном направлении.

Источник

Журнал отслеживания Bluetooth HCI не создан

Я использую Android 4.4.2 и включил «Журнал отслеживания Bluetooth HCI», как описано здесь Анализ / запись собственного трафика Bluetooth Android

После включения и выключения блютуза перезагрузил телефон. Я не смог найти файл журнала в ожидаемом месте:

Как я могу попасть в журнал btsnoop_hci.log?

10 ответов

ПРИМЕЧАНИЕ. Этот ответ не является правильным. Пожалуйста, прокрутите до ответа с наибольшим количеством голосов, чтобы получить правильный ответ

По моему опыту, функция отслеживания Bluetooth HCI требует, чтобы ваше устройство было рутировано. На моем Samsung Galaxy S GT-I9000 с root-доступом он работает нормально, в то время как на моем Galaxy S3 Neo без рута эта функция не работает.

Более того, вы должны убедиться, что вы случайно не удалили файл. Каждый раз, когда я удаляю файл, мне приходится повторно включать функцию отслеживания Bluetooth, чтобы система воссоздала файл журнала.

Вот что решило это для меня:

1) adb shell cat /etc/bluetooth/bt_stack.conf

Чтобы узнать имя файла журнала, для меня это:

Сложность заключается в том, что файлы создаются с отметкой времени в их именах, поэтому вы не сможете получить их (это), просто используя

2) Используйте вместо этого adb pull /data/log/bt/ , и вы получите всю папку со всеми журналами

На телефоне OnePlus 6 (A6003, Android 9) (и я полагаю, что на других телефонах OnePlus) местоположение:

Это местоположение не требует рутирования или доступа через adb . Журнал будет иметь расширение .cfa и находится в двоичном формате pcap , подходящем для анализа, например, с помощью Wireshark.

Для пользовательской версии Pixel / Nexus у вас может не быть разрешения на извлечение /data/misc/bluetooth/logs/btsnoop_hci.log. Вы можете получить журнал hci следующим образом:

Вы получите BUG_REPORT.txt и zip-файл. Журнал HCI находится в папке FS \ data \ misc \ bluetooth \ logs zip-файла.

На Nexus 5X и Pixel C Android O необходимо включить Bluetooth, включить отслеживание HCI в настройках разработчика, отключить и повторно включить Bluetooth и перезагрузиться.

Читайте также:  Экранное время андроид для детей

После этого вы можете получить журнал, зайдя в настройки разработчика и «взять отчет об ошибке» и получить полный журнал.

Файл bt_stack.conf не изменяется и на / sdcard нет нового файла, как на других устройствах

ОБНОВЛЕНИЕ: журнал btsnoop hci, похоже, постепенно выводится из доступных для пользователя областей на многих телефонах. Предполагая, что у вас включено ведение журнала hci, вы можете получить отчет об ошибке

Затем распакуйте папку. Если вам повезло, есть папка ‘FS’, которая содержит журнал btsnoop_hci.log на несколько уровней ниже (не знаю, почему на некоторых телефонах он есть, а на некоторых нет). Если у вас его нет, возьмите текст отчета об ошибке файл, который выглядит так

Вы можете увидеть, где ваш телефон хранит журнал hci, прочитав файл bt_stack.conf. Пытаться

Вы увидите строку, которая выглядит как

Обычно, но не всегда (зависит от телефона) в корне sdcard. В этом файле конфигурации также есть строка, которая может отражать, действительно ли ведение журнала hci включено или нет.

Переключение параметра «Включить журнал отслеживания Bluetooth HCI» в параметрах разработчика должно изменить его на

Я говорю «следует», потому что на некоторых телефонах этот файл не обновляется. Вам следует:

  1. Прочтите файл bt_stack.conf. Посмотрите, где должен быть журнал HCI и действительно ли ведение журнала bt snoop включено или нет
  2. Если в параметрах разработчика указано, что ведение журнала btsnoop_hci включено, а в файле bt_stack.conf указано, что оно отключено, попробуйте выключить и снова включить Bluetooth и / или телефон.
  3. Если ваш телефон рутирован, установите BtSnoopLogOutput=true вручную

Если ни один из 3 вариантов не работает, вам не повезло. Ведение журнала BT Snoop hci немного несовместимо на разных телефонах. Я видел несколько телефонов, на которых я просто не мог заставить его работать, несмотря ни на что, но в большинстве случаев вы должны иметь возможность его запустить. Телефон с рутированным доступом не является обязательным.

Все вышеперечисленное было полезно — на S8 и Windows 10 вариант от Фукаи / Рене об использовании отчета об ошибке был для меня лучшим. (Немного другой путь к файлу, но в zip-файле был журнал.)

Однако позже я заметил, что в Android я получил УВЕДОМЛЕНИЕ, чтобы «ПОДЕЛИТЬСЯ СВОИМ ОТЧЕТОМ ОБ ОШИБКЕ», и когда я выбрал уведомление, у меня были варианты отправки по электронной почте / сохранения на G Drive и т. Д. Отправил мне txt и zip по электронной почте, и все, пропустив adb и прочую чушь.

@TwinPrimesAreEz превосходен, но есть четвертый вариант; по крайней мере, когда ваше устройство рутировано. Вызов:

Где-то этот инструмент был удален, но он все еще существует на моем устройстве. Whatismore, вроде как при включенном блютузе вызывается. В logcat я вижу: «btsnoop_dump:: snoop_log_open: невозможно открыть запись Dir». Не уверен, почему он не может открыть этот каталог (кстати, это /data/media/0 ). Но я подозреваю, что этот инструмент каким-то образом мешает новой опции отслеживания HCI, интегрированной в Android. Но если вы вызываете этот инструмент напрямую (например, через adb shell или ) relulator emulator ) it works Для меня он создал файл /data/media/0/hci_snoop20180203164422.cfa .

Для Samsung s8 волшебное местоположение — / data / log / bt /
и вам нужен root-доступ, чтобы получить его

Источник

Оцените статью