Когда клавиатура звучит слишком громко: как kbd-audio превращает звук в текст

15 Jan, 2023

Репозиторий давно не обновлялся

Последнее обновление было 3 года назад.

9,013
🔱 607
👥 134

Вы когда-нибудь задумывались, что ваш механический клавиатурный клик — это не просто звук, а потенциальная утечка данных? Проект kbd-audio превращает эту теоретическую угрозу в работающий инструмент, который может угадывать нажатые клавиши по звуку. Давайте разберёмся, как это работает и зачем это нужно.

Что скрывается за акустическим перехватом

kbd-audio — это набор инструментов с открытым исходным кодом для анализа звуков клавиатуры. Основная фишка проекта — три версии инструмента Keytap, каждая из которых использует разные подходы для распознавания текста:

  1. Keytap — требует предварительного обучения на записях конкретной клавиатуры
  2. Keytap2 — использует статистику частотности букв и n-грамм в английском языке
  3. Keytap3 — полностью автоматизированная версия с улучшенными алгоритмами

Демонстрация работы Keytap

Как это работает на практике

Попробовать технологии можно прямо в браузере через онлайн-демо:

Для локального использования проект предлагает:

Реклама
git clone https://github.com/ggerganov/kbd-audio
cd kbd-audio
mkdir build && cd build
cmake ..
make

Основные зависимости — SDL2 для работы с аудио и FFTW3 для преобразования Фурье (опционально).

Техническая кухня проекта

Под капотом kbd-audio использует:

  • Анализ акустических сигналов с микрофона
  • Сравнение с эталонными образцами (Keytap)
  • Статистические модели языка (Keytap2/3)
  • Визуализацию звуковых волн для отладки

Инструмент view-gui позволяет увидеть, как выглядят «звуковые отпечатки» нажатий клавиш:

Визуализация звуковых волн

Кому это может быть полезно

  1. Разработчикам систем безопасности — для тестирования уязвимостей
  2. Криминалистам — как инструмент цифровой криминалистики
  3. Любителям механики — проверить, насколько их клавиатура «шумная»
  4. CTF-игрокам — в качестве нестандартного инструмента анализа

Как отмечают пользователи:

"This works incredibly well. I hope you realize what you've created" — ffpip

"This attack and Van Eck phreaking are why Edward Snowden, while typing passwords and other sensitive information, would pull a blanket over himself and his laptop" — aarchi

Стоит ли пробовать?

kbd-audio — это одновременно:

  • Доказательство концепции уязвимости
  • Готовый инструмент для пентеста
  • Интересный пример анализа сигналов

Если вы работаете с информационной безопасностью или просто интересуетесь необычными технологиями — этот проект заслуживает внимания. Только не удивляйтесь, если после знакомства с ним захочется перейти на мембранную клавиатуру или печатать под одеялом.

P.S. Автор проекта Георгий Герганов (ggerganov) известен и другими интересными разработками в области обработки сигналов и машинного обучения.

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.