Skip to content
KitploitKITPLOIT
ИнструментыБлог
Log in
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
WhisperPair — Официальная эталонная реализация и проверка уязвимости нашей атаки WhisperPair (CVE-2025-36911), которая затрагивает протокол Google Fast Pair. | Kitploit
Инструменты/GitHubGitHub/kuleuven-cosic/whisperpair
Безопасность BluetoothАнализ уязвимостейЭксплуатацияБезопасность беспроводных сетейТестирование на ПроникновениеБезопасность оборудования и IoTСтатьи и ИсследованияОбучение и Образование
GitHubkuleuven-cosic/whisperpair

WhisperPair

Официальная эталонная реализация и проверка уязвимости нашей атаки WhisperPair (CVE-2025-36911), которая затрагивает протокол Google Fast Pair.

8010209 дней назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Репозиторий
Сайт

WhisperPair: испытательный стенд для Google Fast Pair

Venue License: CC BY 4.0 OS Hardware Website

Практический инструмент для проверки того, уязвимы ли устройства Google Fast Pair к атакам на сопряжение, привязку учётной записи и атакам на уровне протокола.

В этом репозитории представлен испытательный стенд WhisperPair — инструмент для оценки безопасности устройств Google Fast Pair. Он предназначен как для исследователей, так и для практиков, позволяя воспроизвести наши результаты и протестировать собственные устройства.

Обзор проекта, затронутые устройства и дополнительные сведения см. на нашем веб-сайте.

Этот репозиторий также содержит артефакт к статье One Tap to Hijack Them All: A Security Analysis of the Google Fast Pair Protocol, представленной на IEEE S&P 2026.

Цитирование

Полную версию статьи можно найти здесь. Если эта работа окажется для вас полезной, пожалуйста, рассмотрите возможность цитирования статьи:

@inproceedings{whisperpair2026,
  title     = {One Tap to Hijack Them All: A Security Analysis of the Google Fast Pair Protocol},
  author    = {Duttagupta, Sayon and Wyns, Seppe and Antonijević, Nikola and Singelée, Dave and Preneel, Bart},
  booktitle = {2026 IEEE Symposium on Security and Privacy (S\&P)},
  year      = {2026},
}

Отказ от ответственности и ответственное использование

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

Установка и требования

[!NOTE] Кратко: убедитесь, что у вас есть машина с Linux и Bluetooth-адаптером, а также установлены Node.js (LTS) и pnpm.
Вы можете запустить и интерфейс, и сервер на одной машине, выполнив bash build.sh, а затем bash start.sh.

Этот репозиторий содержит испытательный стенд для оценки того, корректно ли целевое устройство реализует определённые требования безопасности Google Fast Pair. Стенд позволяет проверить, корректно ли реализован предикат состояния сопряжения, отклоняются ли сообщения с повторно используемыми nonce, а также уязвимо ли устройство к атаке на недопустимую кривую. Стенд состоит из серверной части и веб-интерфейса.

[!NOTE] Если вас интересует именно реализация атак: ./toolkit-server/src/fast-pair-service.ts и ./toolkit-server/src/protocol.ts содержат реализацию атак и протокола Fast Pair.

Инструментарий состоит из двух компонентов: сервера и интерфейса.
Сервер необходимо запускать в системе Linux; он протестирован на Raspberry Pi 4.
Интерфейс — это фронтенд на Next.js, который используется для управления сервером; его можно запускать везде, где поддерживается Node.js. Интерфейс должен иметь возможность подключаться к серверу по сети.

Мы тестировали стенд на Raspberry Pi OS Lite (64-bit) (6.12.47+rpt-rpi-v8) с BlueZ версии 5.82.

Предварительные требования

Машина с Linux, на которой установлены BlueZ, Node.js и pnpm.

Node.js

Мы настоятельно рекомендуем использовать текущую версию Node.js с долгосрочной поддержкой (LTS) — v24.14.0.
Мы гарантировали, что инструментарий работает именно с этой версией. Более старые версии могут работать вплоть до v18, но, скорее всего, будут аварийно завершаться или давать непредвиденные результаты.

nvm.sh

Если вы используете nvm для управления установленными версиями Node.js, убедитесь, что root также имеет доступ к версии Node.js, управляемой через nvm.
Как объясняется в этом ответе на StackOverflow, возможно, потребуется создать новую символическую ссылку.

# Source - https://stackoverflow.com/a/40078875
# Posted by SimpleJ, modified by community. See post 'Timeline' for change history
# Retrieved 2026-03-30, License - CC BY-SA 4.0

sudo ln -s "$NVM_DIR/versions/node/$(nvm version)/bin/node" "/usr/local/bin/node"
sudo ln -s "$NVM_DIR/versions/node/$(nvm version)/bin/npm" "/usr/local/bin/npm"
sudo ln -s "$NVM_DIR/versions/node/$(nvm version)/bin/npx" "/usr/local/bin/npx"

[!NOTE] Для запуска сервера достаточно связать только node.

Если Node.js также установлен с помощью внешнего менеджера пакетов, версия, доступная через sudo, может отличаться от версии, используемой nvm.
Проверить это можно, сравнив вывод команд node -v и sudo node -v.
Хотя мы рекомендуем Node.js LTS v24, сервер должен корректно работать вплоть до v18.

pnpm

Если установлен Node.js v24 LTS, вы сможете включить pnpm следующей командой:

corepack enable

Дополнительные инструменты

Стенд также требует hcitool и l2ping.
В зависимости от вашего дистрибутива Linux hcitool может быть недоступен; возможно, вам придётся установить bluez-deprecated-tools.
На момент написания (1 октября 2025 г.) он остаётся предустановленным в последней версии Raspberry Pi OS Lite.

Если Bluetooth-адаптер не включён, сервер попытается включить его с помощью rfkill.
Для тестирования расширения Audio Switch требуется rfcomm.

[!NOTE] При запуске сервер проверит доступность этих инструментов. Дополнительная информация о функциях, которые могут быть недоступны, будет выведена в консоль.

Для воспроизведения результатов необходим физический доступ к уязвимому устройству.
Имейте в виду, что большинство производителей выпустили обновления программного обеспечения для WhisperPair, поэтому вам могут понадобиться устройства с устаревшей прошивкой.
См. Выбор устройства для получения дополнительной информации об устройствах, использованных в нашей оценке.

Быстрая установка

Если вы хотите запустить интерфейс и сервер на одной (Linux) машине, вы можете воспользоваться скриптами build.sh и start.sh.
Сначала установите необходимые зависимости и соберите компоненты с помощью:

bash build.sh

Убедитесь, что Bluetooth включён:

sudo rfkill unblock bluetooth

Затем запустите интерфейс и сервер с помощью:

bash start.sh

Теперь интерфейс должен быть доступен по адресу http://localhost:3000.

Запуск интерфейса и сервера на разных хостах

Скачать инструмент