Полный инструментарий для исследования беспроводных протоколов через SDR: запись сигналов, автоматическое определение модуляции (ASK/FSK/PSK/OFDM), декодирование битов, фаззинг протоколов. Графический интерфейс. Поддерживает RTL-SDR, HackRF, USRP и другие.
pip install urh # или: git clone https://github.com/jopohl/urh cd urh && python setup.py install # Запуск GUI: urh
![]()
Universal Radio Hacker (URH) — это полный набор инструментов для исследования беспроводных протоколов с нативной поддержкой многих распространённых программно-определяемых радиостанций (SDR). URH обеспечивает простую демодуляцию сигналов в сочетании с автоматическим определением параметров модуляции, что делает идентификацию битов и байтов, передаваемых по эфиру, простой задачей. Поскольку данные часто кодируются перед передачей, URH предлагает настраиваемые декодирования для взлома даже сложных сх кодирования, таких как «обеление данных» (data whitening) в CC1101. Когда дело доходит до реверс-инжиниринга протоколов, URH полезен двумя способами. Вы можете либо вручную назначать поля протокола и типы сообщений, либо позволить URH автоматически выводить поля протокола с помощью интеллекта на основе правил. Наконец, URH включает компонент фаззинга, ориентированный на протоколы без состояния, и среду моделирования для атак с отслеживанием состояния.
Чтобы начать работу: - просмотрите инструкции по установке на этой странице, - загрузите официальное руководство пользователя (PDF), - посмотрите демонстрационные видео (YouTube), - ознакомьтесь с вики для получения дополнительной информации, такой как поддерживаемые устройства, или - прочитайте несколько статей об URH для вдохновения.
Если вам нравится URH, пожалуйста, поставьте :star: этому репозиторию и присоединитесь к нашему каналу Slack. Мы ценим вашу поддержку!
Мы призываем исследователей, работающих с URH, цитировать эту статью из WOOT'18 или напрямую использовать следующую запись BibTeX.
Запись BibTeX для вашей исследовательской работы
@inproceedings {220562,
author = {Johannes Pohl and Andreas Noack},
title = {Universal Radio Hacker: A Suite for Analyzing and Attacking Stateful Wireless Protocols},
booktitle = {12th {USENIX} Workshop on Offensive Technologies ({WOOT} 18)},
year = {2018},
address = {Baltimore, MD},
url = {https://www.usenix.org/conference/woot18/presentation/pohl},
publisher = {{USENIX} Association},
}
URH работает в Windows, Linux и macOS. Ниже приведены инструкции по установке для конкретных ОС.
В Windows URH можно установить с помощью его установщика. Дополнительные зависимости не требуются.
Если вы получаете ошибку о недостающей библиотеке api-ms-win-crt-runtime-l1-1-0.dll, выполните обновление Windows или напрямую установите KB2999226.
URH доступен на PyPi, поэтому вы можете установить его, например, с помощью pipx:
pipx install urh
Это рекомендуемый способ установки URH в Linux, так как он поставляется со всеми предварительно скомпилированными нативными расширениями.
Для доступа к вашей SDR как обычный пользователь (не root) установите соответствующие правила udev. Вы можете найти их в вики.
URH включен в репозитории многих дистрибутивов Linux, таких как Arch Linux, Gentoo, Fedora, openSUSE или NixOS. Также существует пакет для FreeBSD. Если он доступен, просто используйте ваш менеджер пакетов для установки URH.
Примечание: Для нативной поддержки вы должны установить соответствующие пакеты -dev для вашей SDR (например, hackrf-dev) до установки URH.
Официальный Docker-образ URH доступен здесь. Он включает все нативные бэкенды и готов к работе.
Рекомендуется использовать минимум macOS 13 при работе с DMG-файлом, доступным здесь.
URH доступен как формула homebrew, поэтому вы можете установить его с помощью:
brew install urh
Для запуска Universal Radio Hacker без установки просто выполните:
git clone https://github.com/jopohl/urh/
cd urh/src/urh
PYTHONPATH=.. ./main.py
Обратите внимание, что перед первым использованием будут собраны расширения C++.
Для установки URH из исходного кода вам необходимо установить python-setuptools. Вы можете получить их командой python3 -m pip install setuptools.
После установки setuptools выполните:
git clone https://github.com/jopohl/urh/
cd urh
python setup.py install
И запустите приложение, набрав в терминале urh.
Смотрите вики для списка внешних декодирований, предоставленных нашим сообществом! Спасибо им!


