Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
#Круги добра
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр 2121 год. Технологии шагнули далеко за пределы самых смелых ожиданий, но за большим прогрессом стоит великая жертва...

Far Orion: Новые миры

Ролевые, Мультиплеер, Мидкорные

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • Animalrescueed Animalrescueed 36 постов
  • Oskanov Oskanov 7 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
38
kliMaster
kliMaster
8 лет назад
Информационная безопасность IT

На сказочном Бали выпал снег или как же легко обмануть GPS.⁠⁠

На сказочном Бали выпал снег или как же легко обмануть GPS. Gps-спуфинг, Сказочноебали, Длиннопост, Habr
Для запуска своей системы глобального позиционирования раньше нам потребовалась бы орбитальная группировка спутников, наземные станции и т.д. Теперь всё проще.

Нам необходимо:



1. Компьютер с операционной системой типа Виндуз или Линукс и, желательно, с портом USB 3.0. На порту 2.0 я не тестировал, но должно заработать.

2. Плата USRP b210 (возможны и другие варианты).

3. Сгенерированный файл с сигналом, либо программа для его генерации GPS-SDR-SIM от проф. Эбинумы.

Блог профессора (немного не по-русски)

Исходники симулятора

Порядок установки



Для запуска всего этого добра на компьютер надо неторопясь и аккуратно установить от производителя платы набор софта. Хотя, может, это и не обязательно. Но пусть будет. При установке под виндуз оно иногда жалуется, что не может добавить себя в PATH, но это не мешает, так как из всего этого добра мне понадобилась только утилитка uhd_find_devices.exe, которая позволила понять, увидела ли вообще система эту плату. Найти утилиту можно по адресу:



C:/UHD/bin/uhd_find_devices.exe



Затем втыкаем плату и открываем диспетчер устройств. Где можно обнаружить, что драйверов под устройство автоматом не установилось. Что же – бывает. Вручную с помощью программки zadig указываем системе, что под плату надо использовать драйвера libusb, т.е. winusb.


После того, как система подцепила стандартный драйвер, можно запустить uhd_find_devices из набора софта от производителя платы. Эта утилита должна найти плату и прошить её контроллер (там стоит FX3 от Cypress). Кажется, после этого устройство изменит свой PID и надо будет рассказывать системе (с помощью zadig), что и под это устройство можно использовать стандартные драйвера winusb.


Конечно же оно с первого раза не заработает. И конечно же это можно вылечить путем отсоединения платы и подсоединения обратно. Вот подробная инструкция.


Необходимо установить гнурадио, которое внутри себя содержит пайтон-питон. Я взял отсюда последнюю версию под AVX2 процессоры.


Мне было лень настраивать правильным образом окружение, поэтому я воспользовался скриптом, входящим в комплект: C:/GNURadio-3.7/bin/run_gr.bat


Через него я буду запускать скрипт для посылки сгенерированного файла в плату b210.


Для удобства путь до этого скрипта надо добавить в переменную окружения PATH.

Генерация сигнала



Исходники берем тут. Что приятно удивило, так это легкость и простота сборки. Никаких зависимостей, никаких дополнительных действий. Все бы так.



Сборка под линукс


$ gcc gpssim.c -lm -O3 -o gps-sdr-sim

Сборка под виндуз


1 Start Visual Studio. Запустить студию (я использовал 2015)


2 Create an empty project for a console application. Создать пустой консольный проект. Именно пустой!


3 On the Solution Explorer at right, add "gpssim.c" and "getopt.c" to the Souce Files folder. Добавить два сишных файла в проект.


4 Select "Release" in Solution Configurations drop-down list. Изменить тип сборки на релизный, выбрать архитектуру x86 / amd64.


5 Build the solution. Собственно, собрать.


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


Подробное описание параметров генератора есть в ридми. Для начала можно не разбираться, а сделать очень просто, сгенерировать сигнал таким образом:

gps-sdr-sim.exe -e brdc3540.14n -s 2500000 -l 30.286502,120.032669,100 -b 8 -d 300 -v -o sim.bin


gps-sdr-sim.exe — это файл, который вы собрали студией.

brdc3540.14n — это файл с эфемеридами спутников.

2500000 — это частота дискретизации

30.286502,120.032669 — координаты

100 — высота

8 — это разрядность чисел в выходном файле (один отсчет — это IQ, два числа).

300 — это длительность в секундах.

-v — это чтобы побольше писало в лог

sim.bin — имя выходного файла.

Вы можете взять строчку из ридми, но она сгенерирует сигнал с ЧД=2,6 МГц, тогда и b210 надо будет настраивать на ту же ЧД (частота дискретизации). Если сгенерировать с одной частотой, а на плату выдавать с другой, то, конечно же, ничего не заработает.



Сигнал на плату я подавал с помощью такой команды:


run_gr.bat gps-sdr-sim-uhd.py -t sim.bin -s 2500000 -x 40

40 — это уровень. 2500000 — это ЧД. Подробное описание настроек можно увидеть в файле gps-sdr-sim-uhd.py, он очень прост для понимания.


Для b210 значение ЧД должно нацело делить частоту внутреннего генератора, а он там, кажется 40 МГц.

Запуск
На сказочном Бали выпал снег или как же легко обмануть GPS. Gps-спуфинг, Сказочноебали, Длиннопост, Habr

А теперь самое интересное.



Отключаем плату.


Подключаем плату.


Запускаем uhd_find_devices


Если не определилось, то goto 1.


Запускаем transmit.bat, следим за логом.


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

Если в логах постоянно выводится буква U, значит, ваша система не успевает подсовывать данные в плату. Вам стоит проверить, не работает ли что-то на фоне и не указали ли вы очень высокую ЧД.



Через некоторое время (до 3 минут) все устройства начнут определять местоположение как заданное вами. Но перед этим они внезапно потеряют текущее положение.

На сказочном Бали выпал снег или как же легко обмануть GPS. Gps-спуфинг, Сказочноебали, Длиннопост, Habr
Внимательно прочитав инструкцию к программе проф. Эбинумы можно понять, как сгенерировать файл с изменяющимся местоположением, как использовать другие даты и прочее.

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

Показать полностью 3
Gps-спуфинг Сказочноебали Длиннопост Habr
10
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии