мемы
•
•
808 просмотров
Почему «белые списки» не спасут от управления дронами через мессенджеры
Увеличить
Почему «белые списки» не спасут от управления дронами через мессенджеры 🤔
Гайз, полгода (а может и год уже прошёл) назад я упоминал, что если белые списки — это про борьбу с БПЛА, то оставлять там Max — плохая идея.
Хотел даже объяснить как это работает, но стопорнул публикацию, так как безопасность моей страны явно важнее хайпа. Сейчас я увидел, что такие методы уже открыто обсуждаются, а значит секрета в этом нет и я могу «широкими мазками» эти методы описать.
Два телефона и один мессенджер
Для управления дроном через Max (или любой другой мессенджер из белого списка) достаточно двух дешёвых смартфонов. Один — на земле у оператора, второй — на борту.
Как канал управления можно пользовать обычный текстовый чат. Скрипт на борту читает входящие сообщения и транслирует команды на полётный контроллер. Скрипт на земле отправляет команды. Пропускной способности мессенджера (у Max это 30 запросов в секунду по документации API, я проверил) более чем достаточно — 30 Гц это нормальный тикрейт для управления летательным аппаратом, даже с учётом джиттера и задержек сотовой сети.
А что с видео?
Параллельный видеозвонок в том же Max. Оператор видит картинку с камеры дрона в реальном времени.
Чтобы текстовые команды не привлекали внимания, достаточно простейшего шифрования — хоть XOR с одноразовым блокнотом. Для DPI-системы и модераторов мессенджера это будет выглядеть как обычная переписка или набор случайных символов. Выполнить XOR современное железо сможет моментально — это копейки по вычислениям.
Описанный выше способ — самый примитивный. Есть и более изощрённые подходы, которые уже реализованы на практике:
Туннелирование через TURN-серверы. VPN-трафик заворачивается в протокол DTLS и отправляется через серверы ретрансляции видеозвонков. Для систем фильтрации это выглядит как легитимный трафик к доверенному IP.
Стеганография в видеопотоке. Данные управления буквально упаковываются в пиксели видеокадров внутри WebRTC-сессии. Формально идёт обычный видеозвонок, фактически — передаётся произвольный трафик на скоростях до мегабита. Max использует WebRTC с кодеком H.264 — тот же стек, под который уже существуют публичные реализации стеганографии. Так что через видеозвонок в Max можно протащить не только картинку для оператора, но и зашить туда же управляющие команды.
Если даже тупой способ через текстовый чат нельзя заблокировать без уничтожения самого мессенджера, то с продвинутыми вариантами ситуация и подавно безнадёжна.
В общем, что я думаю, гайз:
Концепция «белых списков» как средства борьбы с управлением БПЛА через гражданские сети — это лишь «театр» безопасности. Она не работает по фундаментальной причине: невозможно оставить людям средства коммуникации и одновременно гарантировать, что эти средства не будут использованы для передачи управляющих команд. Пока в белом списке остаётся хотя бы один сервис, способный передавать данные в реальном времени, через него протащат что угодно.
Имею вопрос о том, какую реальную задачу решают «белые списки», если не задачу защиты от БПЛА, — остаётся открытым.
Гайз, полгода (а может и год уже прошёл) назад я упоминал, что если белые списки — это про борьбу с БПЛА, то оставлять там Max — плохая идея.
Хотел даже объяснить как это работает, но стопорнул публикацию, так как безопасность моей страны явно важнее хайпа. Сейчас я увидел, что такие методы уже открыто обсуждаются, а значит секрета в этом нет и я могу «широкими мазками» эти методы описать.
Два телефона и один мессенджер
Для управления дроном через Max (или любой другой мессенджер из белого списка) достаточно двух дешёвых смартфонов. Один — на земле у оператора, второй — на борту.
Как канал управления можно пользовать обычный текстовый чат. Скрипт на борту читает входящие сообщения и транслирует команды на полётный контроллер. Скрипт на земле отправляет команды. Пропускной способности мессенджера (у Max это 30 запросов в секунду по документации API, я проверил) более чем достаточно — 30 Гц это нормальный тикрейт для управления летательным аппаратом, даже с учётом джиттера и задержек сотовой сети.
А что с видео?
Параллельный видеозвонок в том же Max. Оператор видит картинку с камеры дрона в реальном времени.
Чтобы текстовые команды не привлекали внимания, достаточно простейшего шифрования — хоть XOR с одноразовым блокнотом. Для DPI-системы и модераторов мессенджера это будет выглядеть как обычная переписка или набор случайных символов. Выполнить XOR современное железо сможет моментально — это копейки по вычислениям.
Описанный выше способ — самый примитивный. Есть и более изощрённые подходы, которые уже реализованы на практике:
Туннелирование через TURN-серверы. VPN-трафик заворачивается в протокол DTLS и отправляется через серверы ретрансляции видеозвонков. Для систем фильтрации это выглядит как легитимный трафик к доверенному IP.
Стеганография в видеопотоке. Данные управления буквально упаковываются в пиксели видеокадров внутри WebRTC-сессии. Формально идёт обычный видеозвонок, фактически — передаётся произвольный трафик на скоростях до мегабита. Max использует WebRTC с кодеком H.264 — тот же стек, под который уже существуют публичные реализации стеганографии. Так что через видеозвонок в Max можно протащить не только картинку для оператора, но и зашить туда же управляющие команды.
Если даже тупой способ через текстовый чат нельзя заблокировать без уничтожения самого мессенджера, то с продвинутыми вариантами ситуация и подавно безнадёжна.
В общем, что я думаю, гайз:
Концепция «белых списков» как средства борьбы с управлением БПЛА через гражданские сети — это лишь «театр» безопасности. Она не работает по фундаментальной причине: невозможно оставить людям средства коммуникации и одновременно гарантировать, что эти средства не будут использованы для передачи управляющих команд. Пока в белом списке остаётся хотя бы один сервис, способный передавать данные в реальном времени, через него протащат что угодно.
Имею вопрос о том, какую реальную задачу решают «белые списки», если не задачу защиты от БПЛА, — остаётся открытым.
#MAX
#НацМессенджер
#БПЛА
Понравился пост?
Обсуди его в Telegram-канале!
Обсуждение
Комментарии доступны через Telegram. Для участия в обсуждении нужен аккаунт Telegram.
Поделиться: Telegram