0Pricing
Cyber Security Academy · Урок

Перехват и воспроизведение сигналов

Перехват и повторная передача RF-сигналов

«Перехват и воспроизведение сигналов» — бесплатный урок Cyber Security Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Cyber Security Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Cyber Security Academy содержит 4 уроков всего.

Концепция атаки с повторной передачей

Атака с повторной передачей — самая простая и распространённая уязвимость RF: перехватить легитимную передачу, а затем передать её повторно, чтобы воспроизвести её результат. Расшифровка не требуется, если приёмник принимает один и тот же сигнал дважды.

Это работает против любого устройства, чья команда представляет собой фиксированную неизменную передачу:

  • Недорогие пульты для открывания гаражных ворот.
  • Простые автомобильные брелоки без динамических кодов.
  • Беспроводные дверные звонки, датчики сигнализации и розетки с дистанционным управлением.
  • Некоторые промышленные пульты управления кранами и воротами.

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

Поиск целевой частоты

Прежде чем перехватывать сигнал, определите, где передаёт устройство. Большинство потребительских пультов работает в диапазонах ISM: 315 МГц (Северная Америка), 433,92 МГц (Европа и большая часть мира), 868 МГц и 915 МГц.

Настройте RTL-SDR на эти диапазоны, нажмите кнопку на пульте и следите за спектрограммой, чтобы обнаружить всплеск энергии. Напечатанный на устройстве FCC ID часто позволяет определить точную рабочую частоту по общедоступным документам регулятора.

# Browse the 433 MHz band live and watch the waterfall
gqrx

# Or auto-identify known devices on the air
rtl_433 -f 433.92M -A

Перехват передачи

Определив частоту, записывайте необработанные отсчёты I/Q во время передачи устройства. Перехватите чистый изолированный импульс, чтобы сигнал было легко анализировать и передавать повторно.

Для перехвата достаточно RTL-SDR, работающего только на приём; для последующей передачи потребуется HackRF или аналогичное устройство. Всегда записывайте точную центральную частоту и использованную частоту дискретизации, поскольку повторную передачу необходимо выполнять с теми же параметрами.

# Capture raw I/Q at 433.92 MHz, 2 Msps
rtl_sdr -f 433.92M -s 2048000 -n 4096000 remote.iq

# Capture with HackRF for later transmit on the same hardware
hackrf_transfer -r remote.iq -f 433920000 -s 2000000

Повторная передача с помощью передатчика

Для повторной передачи отправьте захваченный файл с отсчётами I/Q обратно на той же частоте и с той же частотой дискретизации, используя аппаратное обеспечение с возможностью передачи, например HackRF.

Поскольку приёмник сравнивает необработанную форму сигнала, точная повторная передача воспроизводит исходную команду. Всегда выполняйте повторную передачу внутри экранированного корпуса, если у вас нет явного разрешения и юридического права на передачу.

# Replay the captured file with HackRF
hackrf_transfer -t remote.iq -f 433920000 -s 2000000 -x 40

# -x sets TX gain; keep it minimal and use proper antennas

Декодирование вместо слепой повторной передачи

Слепая повторная передача работает, но декодирование сигнала даёт больше информации и позволяет проводить более продуманные атаки. Такие инструменты, как Universal Radio Hacker (URH), позволяют демодулировать импульс, восстановить битовый поток и определить его структуру.

  • Найдите преамбулу и слово синхронизации.
  • Определите символьную скорость и способ кодирования (часто Манчестер или PWM).
  • Найдите статическую полезную нагрузку команды.

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

Динамические коды и почему повторная передача не работает

Современные автомобильные брелоки противостоят наивной повторной передаче с помощью динамических кодов (кодов с изменяющимся значением). При каждом нажатии используется новый код, полученный из общего секрета и увеличивающегося счётчика.

  • Передатчик и приёмник сохраняют синхронизацию с помощью счётчика.
  • Перехваченный код становится недействительным, когда приёмник переходит за него.
  • Повторная передача старого кода просто отклоняется.

Такие системы, как KeeLoq, сделали этот подход широко распространённым. Динамические коды существенно повышают уровень защиты, но, как показывает следующий раздел, недостатки реализации всё ещё создают возможности для атак.

Взлом динамических кодов: RollJam

Динамические коды всё ещё можно обойти с помощью техники перехвата и глушения, известной благодаря демонстрации RollJam:

  • Атакующий глушит приёмник и одновременно перехватывает первое нажатие на брелок жертвы в узком диапазоне, который глушитель не охватывает.
  • Брелок не сработал, поэтому пользователь нажимает кнопку снова. Атакующий перехватывает второй код и передаёт первый повторно.
  • Теперь у атакующего есть один неиспользованный, всё ещё действительный код для будущего использования.

Поскольку приёмник не увидел первый код, тот остаётся действительным. Это использует окно допустимого рассогласования протокола, а не взламывает криптографию.

Злоупотребление повторной синхронизацией счётчика динамических кодов

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

Старые реализации KeeLoq также страдали от восстановления ключа производителя: извлечение главного ключа из одного брелока позволяло клонировать целые линейки продукции. Это недостатки реализации, а не самой идеи динамических кодов.

Глушение и отказ в обслуживании

Глушение заполняет частоту шумом, поэтому обычные приёмники не слышат корректные передачи. Это составляющая RollJam и самостоятельная угроза отказа в обслуживании.

  • Беспроводные датчики сигнализации можно заглушить, чтобы событие открытия двери никогда не достигло панели.
  • Системы бесключевого доступа и пульты дистанционного управления можно вывести из строя.

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

Краткий обзор инструментов

Практический процесс перехвата и повторной передачи использует компактный набор инструментов:

  • RTL-SDR — обзор диапазонов и перехват (только приём).
  • HackRF One — перехват и передача для проверки повторной передачи.
  • URH — демодуляция, декодирование и создание сигналов.
  • rtl_433 — быстрое определение известных устройств.
  • Flipper Zero — удобный перехват на месте и повторная передача простых сигналов ниже гигагерца.

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

Защита от повторной передачи

Рекомендации по результатам проверки защиты от повторной передачи включают:

  • Замените статические коды на аутентифицированные динамические коды или схему «запрос—ответ».
  • Используйте небольшие, жёстко ограниченные окна повторной синхронизации и уникальные криптографические ключи для каждого устройства, а не общий главный ключ.
  • Добавьте временные метки или одноразовые значения, чтобы каждая команда была действительна только один раз и лишь в течение короткого времени.
  • Внедрите обнаружение глушения: панели сигнализации должны считать внезапную потерю сигнала датчика признаком вмешательства.
  • Предпочитайте двунаправленные протоколы, в которых приёмник подтверждает каждую команду.

Основной принцип: если команду можно записать и воспроизвести без изменений, система уязвима. Каждое разрешённое действие должно быть криптографически уникальным.

Быстрая проверка

Проверьте, насколько хорошо Вы понимаете атаки повторного воспроизведения против скользящих кодов.

Итоги

Теперь Вы умеете захватывать, анализировать и воспроизводить сигналы RF, а также рассуждать об их защите:

  • Атака повторного воспроизведения повторно передаёт захваченную статическую команду и работает против пультов с фиксированным кодом.
  • Рабочий процесс: найдите частоту в диапазонах ISM, захватите I/Q с помощью RTL-SDR, воспроизведите сигнал с помощью HackRF и декодируйте его с помощью URH.
  • Скользящие коды предотвращают наивное повторное воспроизведение, но RollJam (захват и создание помех), слабые окна повторной синхронизации или общие мастер-ключи снова открывают такую возможность.
  • Создание помех незаконно за пределами экранированных авторизованных лабораторий и лежит в основе атак отказа в обслуживании и атак RollJam.
  • Для защиты необходимы аутентифицированные одноразовые команды, ограниченная повторная синхронизация, отдельные ключи для каждого устройства и обнаружение помех.

На этом курс по взлому RF и беспроводных сетей завершён: от основ SDR до Блютуз, бесконтактных технологий и повторного воспроизведения сигналов.

Часто задаваемые вопросы

Урок «Перехват и воспроизведение сигналов» бесплатный?

Да — полный текст урока «Перехват и воспроизведение сигналов» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Cyber Security Academy, подпишись на CoddyKit PRO. Курс Cyber Security Academy содержит 4 уроков всего.

Чему я научусь в уроке «Перехват и воспроизведение сигналов»?

Перехват и повторная передача RF-сигналов Ты практикуешь Cyber Security Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Cyber Security Academy?

Предыдущий опыт не требуется. Cyber Security Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Перехват и воспроизведение сигналов»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Cyber Security Academy?

Да. Каждый урок Cyber Security Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Основы RF и SDR
  2. Атаки на Bluetooth и BLE
  3. Безопасность RFID и NFC
  4. Перехват и воспроизведение сигналов
← Назад к Cyber Security Academy