
Инструмент для атак с использованием программно-определяемого радио (SDR)
/ |_ _ _ ___ | | / |___ __ | |_ ___ _ _ ___ | (/ _ \ ' (-</ _ \ / -) | (/ _ \ V V / '_ / _ \ || (-< __/||//_/_| __/_/_/|_./_/_, // |/ ___ ___ ___ _ ___ | _ \ / | _ __ _ | | || | / _| (| '/ ` / | / / ||_| ___|| _,_|_\
Добро пожаловать в RFCrack — Инструмент для атак с программно-определяемым радио
Разработчик: @Ficti0n - http://ConsoleCowboys.com
CCLabs: http://cclabs.io
Блог: console-cowboys.blogspot.com
Обучающее видео по релизу: https://www.youtube.com/watch?v=H7-g15YZBiI
Реверс-инжиниринг сигналов с RFCrack: https://www.youtube.com/watch?v=XqKoVFyOst0
Версия: 1.6 - Обработка ошибок и исправления багов для Py3 и генерации кода Брюина + обновлённый метод глушения
Требуемое оборудование: (1 Yardstick или 2 для RollingCode)
YardStick: https://goo.gl/wd88sr
RFCrack — это моя личная RF-тестовая среда, разработанная для тестирования RF-коммуникаций
между любыми физическими устройствами, работающими на частотах ниже ГГц. IoT-устройства,
автомобили, системы сигнализации и т.д. Тестирование проводилось с Yardstick One на OSX, но
RFCrack должен нормально работать в Linux. Поддержка других видов RF-тестирования будет
добавляться по мере необходимости в ходе моих исследований. В настоящее время я изучаю
обход систем безключевого доступа и другие функции анализа сигналов. В будущем будет
добавлена новая функциональность с дополнительными аппаратными требованиями для некоторых
продвинутых атак.
Используйте это программное обеспечение как есть только для личного использования. Не используйте
этот код в других проектах или коммерческих продуктах. Я не несу ответственности за ваши действия
с этим кодом. Ваши жизненные решения — это ваша ответственность.
Текущая поддерживаемая функциональность:
-----------------------------------------
- Атаки повторной передачи -i -F
- Отправка сохранённых полезных нагрузок -s -u
- Атаки обхода роллинг-кода -r -F -M
- Прицельные атаки -t -F
- Глушение -j -F
- Сканирование с приращением по частотам -b -v -F
- Сканирование распространённых частот -k
- Сравнение входящих сигналов в реальном времени с предыдущим сигналом -k -c -f -u
- График сигнала -n -g -u
Примеры использования / Атаки:
-------------------------------
Повтор в реальном времени: python RFCrack.py -i
Роллинг-код: python RFCrack.py -r -M MOD_2FSK -F 314350000
Настройка значений RSSI: python RFCrack.py -r -M MOD_2FSK -F 314350000 -U -100 -L -10
Глушение: python RFCrack.py -j -F 314000000
Сканирование распространённых частот: python RFCrack.py -k
Сканирование со своим списком: python RFCrack.py -k -f 433000000 314000000 390000000
Инкрементальное сканирование: python RFCrack.py -b -v 5000000
Отправка сохранённой полезной нагрузки: python RFCrack.py -s -u ./captures/test.cap -F 315000000 -M MOD_ASK_OOK
С загруженной конфигурацией: python RFCrack.py -l ./device_templates/doorbell.config -r
График сигнала: python RFCrack.py -n -g -u 1f0fffe0fffc01ff803ff007fe0fffc1fff83fff07
Идентификация и сравнение сигналов в реальном времени (используйте 2 окна консоли):
------------------------------------------------------------------------------------
Настройка сниффера: python RFCrack.py -k -c -f 390000000
Настройка анализа: python RFCrack.py -c -u 1f0fffe0fffc01ff803ff007fe0fffc1fff83fff07f -n
Полезные аргументы:
-------------------
-M Изменение модуляции, обычно MOD_2FSK или MOD_ASK_OOK
-F Изменение частоты, используемой в атаках
-U верхнее значение RSSI сигнала для роллинг-кода
-L нижнее значение RSSI сигнала для роллинг-кода
-S Изменение шага канала
-V Изменение девиации модуляции
-a Разброс частоты глушения относительно сниффера
-s Отправка пакета из файла
-d Сохранение текущих настроек устройства в загружаемый шаблон после завершения атаки
-l Загрузка ранее сохранённой конфигурации устройства вместе с атакой
-n Использование функциональности, не требующей подключённого Yardstick
-u Использование сохранённых данных в атаке
Пояснение по каталогам:
-----------------------
Сохранённые захваты по умолчанию сохраняются в каталог ./captures!
Захваты идентификации сигналов в реальном времени также сохраняются в каталог ./captures в файл capturedClicks.log
Шаблоны устройств по умолчанию сохраняются и загружаются в каталог ./device_templates
Журналы сканирования сохраняются в каталог ./scanning_logs с именем на основе даты и времени начала сканирования
Изображения сравнения графиков сохраняются в imageOutput в двух форматах
- Live: LiveComparison.png будет просто перезаписываться при каждом анализе сигнала
- Log analysis: используется формат Comparison1 Comparison2 и перезаписывается при каждом анализе журнала
Другие примечания:
-------------------
Поймите, что роллинг-код — это удача или неудача из-за его природы с одновременным глушением и сниффингом,
но он работает. Просто используйте брелок рядом с Yardstick'ами, как будто вы следите за своей целью.
Для этого потребуется два Yardstick'а: один для сниффинга, пока другой глушит. Yardstick'и не могут одновременно отправлять и принимать.
И последнее замечание: это моя собственная тестовая среда для исследований и разработок. Если у вас есть идеи,
как улучшить RFCrack на основе реалистичных сценариев использования, не стесняйтесь связаться со мной. Если
идеи реалистичны, хорошо продуманы и представляют собой повторно используемые сценарии, я их реализую.