
Uma ferramenta de pesquisa de segurança que identifica e demonstra a vulnerabilidade CVE-2025-36911: Fast Pair Pairing Mode Bypass
Um mergulho profundo no CVE-2025-36911 e nas lacunas de segurança do ecossistema Fast Pair do Google
O Google Fast Pair foi projetado para tornar o emparelhamento Bluetooth perfeito: toque em uma notificação e você está conectado. Mas o que acontece quando essa experiência perfeita se torna um risco de segurança? WhisperPair-PoC-Tool é uma ferramenta de pesquisa em segurança que expõe duas classes críticas de vulnerabilidades que afetam milhões de acessórios Bluetooth: bypass de emparelhamento não autorizado e exploração de rastreamento da rede Find My Device.
Este post detalha o funcionamento interno do WhisperPair-PoC-Tool, as fraquezas de protocolo que ele explora e o que isso significa para o ecossistema de acessórios Bluetooth.
A especificação do Google Fast Pair afirma explicitamente:
"Se o campo opcional de Chave Pública estiver presente: se o dispositivo não estiver no modo de emparelhamento, ignore a escrita e saia."
Este é o gate de segurança crítico. Os dispositivos devem responder somente a solicitações de emparelhamento baseado em chave quando o usuário tiver colocado explicitamente o dispositivo no modo de emparelhamento (normalmente mantendo um botão pressionado). Isso garante a intenção do usuário, de modo que você não consiga emparelhar com os fones de ouvido de alguém enquanto a pessoa os estiver usando.
O Problema: muitos fabricantes ignoram essa verificação por completo. Eles processam solicitações de emparelhamento independentemente do estado do modo de emparelhamento, permitindo:
A rede Find My Device (FMDN) do Google permite rastrear acessórios Bluetooth por meio da rede crowdsourced de dispositivos Android. Isso requer uma Chave de Conta, uma chave simétrica de 16 bytes que vincula o dispositivo a uma conta Google.
O Problema: a característica da Chave de Conta frequentemente aceita escritas sem autenticação:
Antes de mergulhar na exploração, vamos entender o fluxo legítimo do Fast Pair:
┌─────────────────────────────────────────────────────────────┐
│ BLE Advertisement │
├─────────────────────────────────────────────────────────────┤
│ Service UUID: 0xFE2C (Fast Pair) │
│ Service Data: │
│ [Pairing Mode] → 3 bytes: Model ID only │
│ [Not Pairing] → 4+ bytes: 0x00 + Account Key Filter │
└─────────────────────────────────────────────────────────────┘
O formato do anúncio revela o estado de emparelhamento:
Seeker (Phone) Provider (Accessory)
│ │
│───── GATT Connect ──────────────────────────>│
│ │
│───── Discover Services ─────────────────────>│
│<──── Service: 0xFE2C ────────────────────────│
│ │
│───── Enable Notifications (0xFE2C1234) ─────>│
│ │
│───── Write Key-Based Pairing Request ───────>│
│ [16-byte encrypted block] │
│ [64-byte ECDH Public Key] (optional) │
│ │
│ ┌────────────────────────────────────┐ │
│ │ SECURITY CHECK: │ │
│ │ If Public Key present AND │ │
│ │ device NOT in pairing mode: │ │
│ │ → IGNORE and EXIT │ │
│ │ Else: │ │
│ │ → Process request │ │
│ └────────────────────────────────────┘ │
│ │
│<──── Notification: Encrypted Response ───────│
│ [Provider's BR/EDR Address] │
│ │
│═══════ Bluetooth Classic Pairing ═══════════>│
A vulnerabilidade ocorre quando os dispositivos pulam completamente a caixa "SECURITY CHECK".
O WhisperPair-PoC-Tool é uma ferramenta de pesquisa em segurança baseada em Python, construída sobre a biblioteca BLE Bleak. Ele opera em várias fases: