Материал полностью обновлён: сентябрь 2026. Статья посвящена обнаружению, диагностике и защите; практические инструкции по созданию радиопомех или поддельных GNSS-сигналов не рассматриваются.
Джамминг и спуфинг — разные угрозы
| Угроза | Что происходит | Типичный эффект |
|---|---|---|
| Jamming / interference | Полезный GNSS-сигнал маскируется радиопомехой или RF-front-end перегружается. | Падение C/N0, потеря tracking, ухудшение accuracy, потеря fix/RTK. |
| Spoofing | Приёмник принимает ложные или манипулированные навигационные данные/измерения как правдоподобные. | Ошибочная позиция, скорость или время при внешне «нормальном» fix. |
| Multipath | Отражённые копии легитимного сигнала приходят с задержкой. | Смещение измерений и ухудшение точности; это не обязательно злонамеренное воздействие. |
Почему спуфинг опаснее простого отсутствия GPS
При полном отсутствии GNSS система обычно видит деградацию: уменьшается число используемых сигналов, ухудшаются оценки качества, теряется fix. При правдоподобной подмене приёмник может продолжать выдавать координаты, поэтому одного признака «GPS есть» недостаточно.
Надёжная архитектура сравнивает GNSS с независимыми источниками: IMU, барометром, магнитометром или GNSS-heading, optical flow, visual odometry, wheel odometry для наземных систем и другими источниками в зависимости от аппарата.
Что может указывать на jamming
- одновременное падение C/N0 у большого числа сигналов;
- рост штатного interference/jamming indicator самого GNSS;
- массовая потеря tracked/used signals;
- рост reported HAcc/VAcc и DOP;
- переход RTK Fixed → Float → 3D или полная потеря решения;
- ухудшение начинается при включении конкретного бортового устройства — признак self-interference.
Ни один признак по отдельности не доказывает преднамеренный jamming. Сначала исключайте собственные источники RFI: VTX, DC/DC, LTE/5G-модем, вычислитель, кабели и питание.
Что может указывать на spoofing
- позиция или скорость меняются без соответствующей динамики IMU;
- GNSS начинает расходиться с visual/optical-flow/odometry источником;
- появляются необычные скачки времени или позиции;
- приёмник выдаёт spoofing/security warning, если такая функция поддерживается;
- EKF innovations/variances растут из-за несогласованности GNSS с другими датчиками.
Но отсутствие этих признаков не гарантирует отсутствие спуфинга. Хорошо согласованное ложное решение обнаружить намного сложнее, особенно если система имеет только один источник абсолютной позиции.
HDOP и число спутников не являются детектором спуфинга
HDOP описывает геометрию используемых спутников. Число спутников говорит о доступности измерений. Оба показателя могут выглядеть нормально при ошибочном навигационном решении.
Поэтому правила вроде «12 спутников и HDOP < 1.5 означают, что спуфинга нет» неверны. Для контроля целостности нужны независимые признаки и, где доступно, security monitoring самого GNSS.
OSNMA: полезно, но не абсолютная защита
Galileo OSNMA позволяет совместимому приёмнику аутентифицировать навигационные данные Galileo Open Service. Это важный дополнительный слой, но OSNMA не является защитой от jamming и не аутентифицирует полностью само измерение дальности/PVT во всех сценариях.
Поэтому поддержку OSNMA следует рассматривать вместе с anti-spoofing algorithms, RF-мониторингом и независимой проверкой навигационного решения.
RTK также не является anti-spoof или anti-jam
RTK улучшает точность с помощью коррекций и фазовых измерений. При потере пригодных GNSS-сигналов RTK деградирует. Сам статус RTK Fixed не следует считать криптографическим доказательством подлинности координат.
ArduPilot: что реально помогает
ArduPilot EKF сравнивает GNSS-позицию и скорость с прогнозом по инерциальным датчикам. При большой несогласованности GNSS-измерение может быть отклонено, а при устойчивой деградации возможен EKF failsafe.
Это glitch/inconsistency protection, а не специализированный spoofing detector. Нельзя гарантировать обнаружение любой подмены только по EKF.
Что смотреть в логах
- GPS: Status, NSats, HDop, положение и скорость;
- GPA: HAcc, VAcc, SAcc, VDop и другие оценки качества;
- EKF: innovations/variances и сообщения о несогласованности;
- GNSS-native diagnostics: interference/security status, если приёмник их передаёт.
Устаревшие настройки удалены
В прежней версии статьи были приведены неверные или устаревшие параметры: GPS_GNSS_MODE=3 как «все созвездия», FS_GPS_*, несуществующие EK3_GPS_VPOS_P/I, сомнительные EK3_*_INNOV_LIM и GPS_TYPE=18 как Unicore. Эти рекомендации удалены.
Для современных версий ArduPilot используйте текущие параметры именно установленной прошивки. Для первого GNSS в ArduPilot 4.6+ применяются имена GPS1_...; для Unicore используются отдельные типы 24/25, а старый GPS failsafe давно заменён логикой EKF/DCM.
Два GNSS не всегда дают независимость
Два приёмника полезны для отказоустойчивости оборудования, но если они стоят рядом, используют одинаковые диапазоны и видят одну и ту же RF-среду, сильная помеха может воздействовать на оба одновременно.
Для обнаружения ложного решения независимость повышают различающиеся сенсорные принципы: GNSS + inertial + vision/optical flow/odometry, а не просто два одинаковых GNSS рядом.
Dual-antenna heading
Двухантенный GNSS, например Unicore UM982 в соответствующей конфигурации, может давать heading по фазовой базовой линии. Это полезный дополнительный источник курса, но сам по себе он не является универсальным spoofing detector.
Нельзя утверждать, что «ложные сигналы с одного направления автоматически будут отклонены» только потому, что используется две антенны. Для пространственного подавления помех нужны специально предназначенные многоэлементные антенные системы и соответствующая обработка.
Закрытые платформы DJI/Autel
Для проприетарных платформ нельзя честно публиковать универсальные рейтинги «низкая/средняя/высокая уязвимость» без воспроизводимых испытаний конкретной модели и версии прошивки. Поведение при потере GNSS также отличается по модели, режиму и доступности visual positioning.
Поэтому из статьи удалены неподтверждённые таблицы с обещанным переходом каждой модели в ATTI/RTH, утверждения о «перенаправлении на чужие площадки» без первичных источников и сравнение защищённости DJI, Autel, ArduPilot, iNav и Betaflight одной цветовой шкалой.
iNav и Betaflight
Точная логика GPS Rescue/RTH, поддерживаемые GNSS и CLI-параметры меняются между версиями. Не стоит копировать набор команд из старой статьи как «защиту от спуфинга»: большая часть тех команд либо относилась к другой прошивке, либо вообще не выполняла такую функцию.
Если GNSS используется только для телеметрии, последствия ошибочной позиции будут другими, чем в автономном режиме. Если от GNSS зависит Rescue/RTH или миссия — требования к контролю качества и сценариям отказа становятся выше.
Как строить защиту слоями
- RF-уровень: правильная антенна, ground plane, фильтрация, чистое питание и удаление от собственных источников помех.
- GNSS-уровень: многодиапазонный приёмник с документированными jamming/spoofing indicators и, при необходимости, OSNMA.
- Navigation integrity: сравнение GNSS с IMU и независимыми источниками навигации.
- Autopilot: корректные pre-arm checks, EKF checks/failsafe и проверенное поведение при потере position estimate.
- Операционная проверка: анализ логов, тестирование отказов в SITL/контролируемой среде и документирование реальных аномалий.
Что делать при подозрительной навигации
Не существует безопасной универсальной команды «включить RTL» или «перейти в конкретный режим» для любой платформы. Если сама позиционная оценка сомнительна, автоматический режим, зависящий от этой позиции, может быть неподходящим.
Правильное поведение должно быть заранее определено и испытано для конкретного аппарата с учётом доступных датчиков, типа полёта и настроенных failsafe. Для ArduPilot такие сценарии лучше сначала проверять в SITL.
Безопасная диагностика
Для полевого анализа не нужны передающие jammer/spoofer-устройства. Используйте:
- логи GPS/GPA/EKF;
- штатные RF/security индикаторы GNSS;
- пассивный спектральный анализ в режиме приёма;
- A/B-тест бортовой электроники на self-interference;
- запись нескольких независимых навигационных источников.
Связанные материалы
- Защита GNSS от помех и спуфинга
- Диагностика GNSS-помех на БПЛА
- Качество GNSS: C/N0, HDOP и логи
- Как сравнивать GNSS-модули по устойчивости
Источники
- ArduPilot — EKF Failsafe и glitch protection
- ArduPilot — GPS/GPA log messages
- European GNSS Service Centre — OSNMA FAQ
- u-blox ZED-F20P Integration Manual
Вывод
Устойчивость к GNSS-угрозам определяется не названием автопилота и не одной настройкой. Jamming обычно заметнее по деградации RF-показателей; spoofing требует проверки согласованности и целостности. Надёжная система сочетает качественный RF-тракт, диагностируемый GNSS, независимые датчики и заранее проверенное поведение при недостоверной навигации.
