Fast Pair の仕様には、ペアリングモードでないスピーカーは、ペアリングの要求を無視する、という 1 行があります。このページでは、その 1 行を実装しなかった製品があり、それが WhisperPair(CVE-2025-36911)という脆弱性として公開されたことを説明します。設計そのものではなく、実装の検査漏れの話です。

仕様にある 1 行

Fast Pair の手順(GATT 節の Procedure の Step 1)には、次の記述があります。

If the device is not in pairing mode, ignore the write and exit.

出典: https://developers.google.com/nearby/fast-pair/specifications/service/gatt(取得日: 2026-09-21)

「write」は、スマホがスピーカーに送るペアリングの要求(Key-based Pairing の書き込み)のことです。ペアリングモードでないときは、要求が来ても何もせず終えます。これが守られていれば、ボタンを押していないスピーカーは、近くの誰にもペアリングされません。

検査があるときとないとき

この 1 行の有無で何が変わるかを、仕様の入口だけを写した小さなモデルで確かめます。暗号や通信は含まないので、実機の挙動を測ったものではありません。

// 仕様の Key-based Pairing の入口だけを写したモデル(暗号・通信は含まない)
function makeProvider({ checkPairingMode }) {
  return {
    pairingMode: false, // ふだんはペアリングモードでない
    onKeyBasedPairingWrite(fromWhom) {
      if (checkPairingMode && !this.pairingMode) {
        return `${fromWhom}: 無視して終了`; // 仕様 GATT 節 Procedure Step 1
      }
      return `${fromWhom}: ペアリングの手続きに進む`;
    },
  };
}

for (const checkPairingMode of [true, false]) {
  const p = makeProvider({ checkPairingMode });
  console.log(`検査${checkPairingMode ? "あり" : "なし"}・ペアリングモードでない:`, p.onKeyBasedPairingWrite("近くの誰か"));
  p.pairingMode = true;
  console.log(`検査${checkPairingMode ? "あり" : "なし"}・ペアリングモード中    :`, p.onKeyBasedPairingWrite("近くの誰か"));
}

モデルの実行結果は次のとおりです。

検査あり・ペアリングモードでない: 近くの誰か: 無視して終了
検査あり・ペアリングモード中    : 近くの誰か: ペアリングの手続きに進む
検査なし・ペアリングモードでない: 近くの誰か: ペアリングの手続きに進む
検査なし・ペアリングモード中    : 近くの誰か: ペアリングの手続きに進む

検査があれば、ペアリングモードでない間は要求が通りません。検査がなければ、ペアリングモードかどうかに関係なく手続きが進みます。この差が、WhisperPair の核心です。

WhisperPair で起きたこと

KU Leuven COSIC の研究グループ(Sayon Duttagupta、Nikola Antonijević、Bart Preneel、Seppe Wyns、Dave Singelée)が発見し、Black Hat Asia 2026 で発表しました。公開ページ(whisperpair.eu)の記述から、次のことが分かります(要約経由の確認で、文言は原文と一致しない可能性があります)。

  • 対象は、ペアリングモードでないのにペアリング要求を受け付けてしまう Fast Pair 対応のヘッドホン・イヤフォン・スピーカーです。複数の機器・ベンダー・チップセットにまたがります
  • 攻撃者は、約 14 m 以内から、中央値約 10 秒で、ユーザーの操作なしにペアリングできました。物理的なアクセスは要りません
  • 影響:マイクで会話を録音されたり、音声を再生されたりします。スピーカーが Google の Find Hub に対応していて、Android と一度もペアリングされていなければ、攻撃者が自分のアカウントで登録して位置を追跡できる可能性があります
  • iPhone で使っていても、対象のスピーカーなら影響を受けます

経緯と修正

2025 年 8 月に Google へ報告され、Google は critical と分類して 150 日の開示期間を置きました。2026 年 1 月に公開され、報酬は最大額の 15,000 ドルでした。

直せるのは、メーカーのファームウェア更新だけです。工場出荷状態へのリセットでは直りません。スマホ側で Fast Pair を切っても効きません。脆弱性はスピーカー側のファームウェアにあるからです。

なお、Android Security Bulletin 2026-01 には、この CVE は載っていませんでした(同じ月に載っていたのは CVE-2025-54957 のみ)。Google 側のどこに記載があるかは、まだ特定できていません。

なぜ「設計」ではなく「実装」の問題か

仕様は、この 1 行で防いでいます。さらに前のページで見たとおり、Account Key の書き込みも、ペアリング成功後の同じリンク上に限られます。守るべき条件は書かれていたのに、それを満たさない製品が出ました。

では、なぜ多くの製品でこの検査が抜けたのでしょうか。次のページで、論文が挙げる 3 つの段階を見ます。