TGViewer
Тишина.Лаб Тишина.Лаб @tishina_lab · 495 subscribers
Post #33 631
Барвинок — цветок, который сажают на могилах, вплетают в венки и не могут вывести с участка. Еще так называется прошивка для управления FPV, которую мы проанализировали - Barvinok 5.1.0 для диапазона 2.4 ГГц.

Ниже приведены основные факты, а в следующем посте мы разберем возможные атаки с целью более эффективного подавления FPV на базе этой прошивки.

1. Настройки радио

SF CR Пакетов/с Длина, байт
7 4/6 LI 200 8
8 4/6 LI 25 8
9 4/6 LI 50 8
10 4/8 LI 25 9
12 4/5 LI 20 9
12 4/8 LI 10 9

2. Частотные диапазоны

№ Имя Начало Конец Ширина
0 2.1_2.3 2120,0 2300,0 180,0
1 2.15_2.35 2150,4 2351,6 201,2
2 2.2_2.4 2200,4 2401,7 201,3
3 2.25_2.45 2250,4 2451,8 201,4
4 2.3_2.5 2300,4 2502,4 202,0
5 2.35_2.55 2350,4 2551,4 201,0
6 2.4_2.6 2400,4 2601,4 201,0
7 2.45_2.65 2450,4 2659,4 209,0
8 2.5_2.7 2500,4 2701,4 201,0
9 2.2_2.6_W 2200,4 2609,4 409,0


Прошивка определяет 10 частотных диапазонов шириной от 180 и до 409 МГц. В каждом диапазон всего 4090 каналов. Расстояние между центрами каналов от 44 и до 100 кГц, то есть соседние каналы пересекаются по частоте.

3. Алгоритм генерации ППРЧ

Шестибайтный UID определяет начальное состояние и постоянное приращение генератора псевдослучайных чисел PCG-XSH-RR 64/32, выходы которого используются для формирования таблицы из 4090 каналов.

После начального заполнения таблицы и закрепления позиций канала синхронизации выполняются 4026 последовательных обменов: каждый незакреплённый элемент меняется местами с псевдослучайно выбранным незакреплённым элементом; диапазон выбора не сужается, поэтому это не классический алгоритм перемешивания Фишера-Йетса (Fisher–Yates, именно этот алгоритм используется в стандартном ELRS).

Номер канала сихронизации также определяется значением UID, и закрепляется в позициях 0, 64, 128, ..., 4032 - эти позиции не участвуют в обменах.

4. Пакет синхронизации (SYNC)

Пакет синхронизации не зашифрован: после демодуляции радиосигнала значения его полей доступны открыто. Формат пакета отличается от стандартного ExpressLRS 3.5.0 и 4.0: используются пакеты длиной 8 или 9 байт (8 или 13 в стандарте), указатель позиции в таблице ППРЧ расширен с 8 до 12 бит, а вместо непосредственно передаваемых значений байтов UID в стандарте здесь присутствуют два первых байта SHA-256 от UID.

Для контроля целостности используется CRC-14 - такая же, как и в стандарте для 8-байтовых пакетов, с начальным значением, зависящим от UID. В 9-байтном формате CRC также остается 14-битной, но охватывает дополнительный байт данных.

Указатель позиции в таблице ППРЧ, который передается в пакете синхронизации, позволяет переопределить следующий канал (при условии прохождении остальных проверок: CRC-14, SHA-256 от UID). То есть в отличие от MILELRS, где обработка sync пакетов просто отключена на стороне приемника, тут можно нарушить синхронизацию между FPV и пультом/НСУ, используя специально составленный пакет.

5. RC пакеты

RC пакеты также не шифруются и используют ту же CRC-14, начальные значения которой зависят от UID. Особенностью RC пакетов является то, что в расчет CRC дополнительно подмешивают младшие 6 бит протокольного счетчика (сам счетчик 8-битный и передается в SYNC пакете).

Продолжение (возможные практические атаки на Barvinok) - https://t.me/tishina_lab/34
Telegram Тишина.Лаб Возможные атаки на Barvinok и их временная сложность. Описанные ниже атаки были реализованы в коде на основании тестовых данных, сформированных по результату реверс-инжиниринга прошивки. Для полноценной проверки необходимо наличие пары RX+TX. 1. Восстановление…
  • 👍 5
  • 🔥 5
More from @tishina_lab
  1. Oct 5, 2026Возможные атаки на Barvinok и их временная сложность. Начало (описание особенностей прошив…
  2. Sep 22, 2026Тишина.Лаб pinned a video
  3. Sep 22, 2026Тишина.Лаб pinned a GIF
  4. Sep 10, 2026У нас готово обновление серверной части РЭР "Тишина". 1. Теперь поддерживается два модуля…
  5. Aug 26, 2026Чтоб музыкантом быть, так надобно уменье И уши ваших понежней. И.А. Крылов "Квартет" Нам п…
  6. Aug 18, 2026Нам пишут (опубликовано с разрешения эксплуатанта). Антенна - логопериодическая (от PicoCe…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →