Skip to content
Урок 7. Безопасность инфраструктуры: почему город — не игрушка

Урок 7. Безопасность инфраструктуры: почему город — не игрушка

Урок 7. Безопасность инфраструктуры: почему город — не игрушка

Паспорт урока

ПараметрЗначение
Место в модулеPowerSentry, модуль 3 «Масштаб города», урок 7 из 8
Длительность45 мин
Возраст14–16
ОборудованиеМатериалы FoxHunter (уроки 4–6) для сравнения
Предварительные знанияFoxHunter, уроки 4–6 — обязательно
ПредметИнформационная безопасность, информатика
Этот урок опирается на модуль FoxHunter. Там ученики своими руками сломали однобайтовую подпись перебором и увидели, как работает счётчик кадров. Здесь они видят «взрослое» решение тех же задач. Если модуль охоты не пройден, урок теряет большую часть силы — тогда стоит бегло воспроизвести демонстрацию брутфорса.

Образовательные цели

ЦельБлумМиллерЧем доказывается
7.1Сопоставлять защиту наивного протокола и промышленногоанализироватьзнает какТри слабости и закрывающие механизмы
7.2Различать конфиденциальность, целостность и аутентичностьанализироватьзнает какКлассификация механизмов LoRaWAN
7.3Обосновывать выбор OTAA вместо ABP для продакшенаоцениватьзнает какОтвет про компрометацию узла
7.4Обосновывать приватную сеть для городских данныхоцениватьзнает какАргументация контроля над ключами

Сценарий занятия (45 минут)

ВремяБлокЧто делает педагогЧто делают ученики
0–5RetrievalМини-квиз по урокам 5–6Пишут, разбор
5–13Постановка угрозы«Что если подделать протечку?»Строят модель угроз
13–25Три механизма LoRaWANШифрование, MIC, счётчикСопоставляют с FoxHunter
25–35Управление ключамиABP против OTAAРазбирают разницу
35–42ПрактикаЗадачиРешают
42–45Итог и ДЗФиксацияЗаписывают

Блок 1. Постановка угрозы (5–13 мин)

Смена масштаба

«До сих пор мы говорили об энергии и ёмкости. Теперь представьте: наша сеть развёрнута на весь город и управляет выездами аварийных бригад. Что может сделать злоумышленник?»

Построение модели угроз с классом

АтакаПоследствие для города
Подделать сообщение о протечкеложный выезд бригады; при массовой атаке — паралич службы
Подавить сообщение о настоящей протечкеавария развивается незамеченной
Прочитать данные сетиразведка: где датчики, где слабые места инфраструктуры
Повторить старое сообщениеложная тревога без знания ключей
Скомпрометировать один узелполучить доступ ко всей сети (если ключи общие)

Ключевая фраза урока

«Один датчик в подвале — игрушка. Сеть, поднимающая аварийные наряды города, — инфраструктура. И её защита не опция, а требование.»


Блок 2. Три механизма LoRaWAN (13–25 мин)

2.1. Сопоставление с FoxHunter

Построить таблицу вместе с классом:

Задача защитыНаивное решение (FoxHunter)Промышленное (LoRaWAN)
Подтвердить отправителяподпись 1 байт (XOR с ключом)MIC 4 байта (AES-CMAC)
Защититься от повтораручной счётчик fcnt + эвристика ресинкаFCnt в защищённой сессии
Скрыть содержимое— (не требовалось)шифрование AES-128
Управлять ключамиключ зашит в исходникеOTAA: сессионные ключи

2.2. Углублённый уровень

Шаг 1. Шифрование полезной нагрузки.

LoRaWAN шифрует содержимое кадра алгоритмом AES-128 на ключе AppSKey. Перехватчик видит длину кадра и адрес устройства, но не может прочитать данные.

Зачем это городу: данные о расположении и состоянии инфраструктуры — сведения, которые не должны быть публично доступны.

Шаг 2. Целостность и аутентичность — MIC.

Каждый кадр подписывается 4-байтовым MIC (Message Integrity Code), вычисляемым алгоритмом AES-CMAC на ключе NwkSKey.

Сопоставление с FoxHunter — здесь ученики применяют свои расчёты из урока 6 модуля охоты:

FoxHunterLoRaWAN
Длина1 байт4 байта
Пространство256≈ 4,3 млрд (2³²)
Перебор по радио (1 попытка/с)≈ 2 минуты≈ 68 лет
ФункцияXOR (линейная)AES-CMAC (нелинейная)
«Схлопывание» ключада, до одной константыневозможно

Важное уточнение, которое стоит проговорить. Четыре байта MIC защищают от подделки по радио: перебрать 2³² вариантов через эфир нереально. При этом сам ключ — 128-битный, и вычислительно он не вскрывается.

Различайте: длина передаваемого MIC защищает канал, длина ключа защищает секрет. Это разные величины и разные роли.

Шаг 3. Защита от повтора.

Монотонный счётчик кадров FCnt в каждом сообщении. Сетевой сервер отвергает кадры со счётчиком не больше уже принятого.

Отличие от FoxHunter: там охотник применял эвристику ресинхронизации по динамике счётчика. LoRaWAN поступает строже — считает сброс счётчика ослаблением защиты и требует явного разрешения администратора.

Практическая деталь стенда: после сброса питания узла FCnt обнуляется, и сервер начинает отбрасывать кадры. На стенде включают опцию сброса счётчиков; в продакшене сессию сохраняют в энергонезависимой памяти.


Блок 3. Управление ключами: ABP против OTAA (25–35 мин)

Постановка

«У нас на стенде ключи прописаны прямо в исходном коде прошивки. Что с этим не так для города?»

ABP — активация персонализацией

Ключи NwkSKey и AppSKey зашиты в прошивку при производстве.

ПлюсМинус
просто, работает сразуключи лежат в прошивке — их можно извлечь из устройства
не нужен обмен при включениикомпрометация одного узла раскрывает его трафик навсегда
удобно для отладкисмена ключей требует перепрошивки

OTAA — активация по воздуху

Устройство хранит только корневой ключ (AppKey) и при подключении к сети проходит процедуру присоединения, в результате которой генерируются сессионные ключи.

ПлюсМинус
сессионные ключи не хранятся постояннонужна процедура присоединения (энергия, время)
при переподключении ключи обновляютсясложнее в отладке
компрометация сессии ограничена по временитребуется приём даунлинка
Правило проекта: ABP — для стенда и отладки; OTAA — для города. Формулировка для защиты: сессионные ключи не лежат в прошивке, поэтому компрометация одного узла не вскрывает сеть.

Приватная сеть

«Последний вопрос: где должны обрабатываться данные городской инфраструктуры?»

Публичный облачный сервисСобственный сервер (ChirpStack)
быстро развернутьтребует администрирования
данные и ключи у стороннего оператораключи и данные под контролем города
зависимость от внешнего поставщикаавтономность

Для инфраструктуры ЖКХ выбор в пользу приватной сети обоснован: сведения о состоянии городских сетей и ключи доступа не должны находиться под чужим контролем.


Блок 4. Практические задачи (35–42 мин)

Уровень A (14 лет)

A1. Почему для одного учебного датчика защита не критична, а для городской сети обязательна?

Ответ

Учебный датчик ни на что не влияет: его подделка испортит только урок. Городская сеть управляет выездами аварийных бригад — поддельные сообщения приведут к ложным нарядам и расходам, а подавленные скроют настоящую аварию.

A2. Назовите три механизма защиты LoRaWAN и что каждый обеспечивает.

Ответ
  1. Шифрование AES-128 — конфиденциальность (посторонний не прочитает содержимое);
  2. MIC (AES-CMAC, 4 байта) — целостность и аутентичность (кадр не подделан и пришёл от владельца ключа);
  3. Счётчик кадров FCnt — защита от повтора (записанный кадр нельзя переиграть).

A3. Чем 4-байтовый MIC лучше однобайтовой подписи из FoxHunter?

Ответ

У однобайтовой подписи 256 вариантов — их перебирают за пару минут. У 4-байтового MIC 2³² ≈ 4,3 миллиарда вариантов, перебор по радио занял бы десятки лет. Кроме того, MIC вычисляется нелинейной функцией AES-CMAC, которую нельзя упростить, в отличие от XOR.

Уровень B (14–15 лет)

B1. Перечислите три слабости протокола FoxHunter и укажите, каким механизмом LoRaWAN закрывает каждую.

Решение
Слабость FoxHunterМеханизм LoRaWAN
Подпись 1 байт — перебирается за минутыMIC 4 байта на AES-CMAC: перебор по радио десятки лет
Функция подписи линейна (XOR схлопывает ключ в константу)AES-CMAC нелинеен, «схлопывание» невозможно
Ключ зашит в исходнике и одинаков для всехOTAA: сессионные ключи, у каждого устройства свои

Дополнительно: содержимое FoxHunter не шифруется (там это не требовалось), LoRaWAN шифрует полезную нагрузку.

B2. Почему для продакшена выбирают OTAA, а не ABP?

Ответ

При ABP сессионные ключи зашиты в прошивку: получив физический доступ к одному узлу, злоумышленник может их извлечь и в дальнейшем читать и подделывать его трафик. Смена ключей потребует перепрошивки тысяч устройств.

При OTAA устройство хранит только корневой ключ, а сессионные генерируются при подключении и обновляются при переподключении. Компрометация ограничена по времени и не распространяется на всю сеть.

B3. Почему на стенде используется ABP, если он менее защищён?

Ответ

Ради простоты отладки: ключи фиксированы, устройство выходит на связь сразу после включения, не требуется процедура присоединения и приём даунлинка. При отладке это экономит много времени.

Это осознанный компромисс для учебного стенда, и он явно задокументирован — так же, как отключение ADR на уроке 6. Важно, что решение принято сознательно, а не по незнанию.

Уровень C (15–16 лет)

C1. Постройте полную модель угроз городской сети и укажите, какие угрозы LoRaWAN не закрывает.

Разбор
УгрозаЗакрыта?Чем / почему нет
Чтение содержимогодаAES-128
Подделка сообщениядаMIC (AES-CMAC)
Повтор старого кадрадаFCnt
Компрометация одного узлачастичноOTAA ограничивает ущерб
Глушение эфиранетпринципиально не закрывается криптографией
Физическое уничтожение узланетобнаруживается по пропаже heartbeat
Атака на сервервне LoRaWANобычные меры защиты информационных систем
Анализ трафика (кто и когда передаёт)нетадрес и время передачи видны

Ключевой вывод: криптография закрывает угрозы содержанию, но не угрозы доступности. Глушение и физическое разрушение требуют других мер — резервирования, мониторинга молчания, физической защиты.

Честная модель угроз всегда содержит незакрытые пункты, и зрелость инженера — в том, чтобы их назвать.

C2. Датчики массово перестали передавать. Как отличить глушение от отказа оборудования?

Разбор
ПризнакГлушениеМассовый отказ
Географияузлы в одной зонеобычно разбросаны или связаны одной партией
Началовнезапное, одномоментноепостепенное
Шлюзвидит повышенный уровень шумашум в норме
Узлы соседней зоныработают нормальнозависит от причины
После прекращениясвязь восстанавливается самане восстанавливается

Инструмент: шлюз может сообщать уровень шума в канале. Резкий рост при одновременной пропаже узлов в одной зоне — сигнатура глушения.

Аналогия с курсом: это та же логика, что в BeaconRadio, урок 5, — распознавание по совокупности признаков, а не по одному. И тот же принцип: «отсутствие данных — тоже данные».

C3. Обоснуйте выбор приватной сети для городской инфраструктуры перед комиссией, которая предлагает использовать публичный облачный сервис.

Разбор

Аргументы, которые должен привести ученик:

  1. Контроль над ключами. В публичном сервисе корневые ключи регистрируются у оператора. Для инфраструктуры это означает зависимость доступа к собственной сети от третьей стороны.

  2. Данные о состоянии инфраструктуры. Расположение датчиков, история аварий, слабые места сетей — сведения, представляющие интерес не только для эксплуатантов.

  3. Непрерывность работы. Аварийная служба должна работать независимо от доступности внешнего сервиса и его коммерческой политики.

  4. Стоимость на масштабе. Тысячи устройств при тарификации за узел или за сообщение создают постоянные расходы; свой сервер — разовые вложения.

Контраргументы, которые надо честно назвать: свой сервер требует администрирования, резервного копирования, обеспечения отказоустойчивости и квалифицированного персонала. Это реальная статья расходов.

Вывод: решение обосновано для инфраструктуры критического назначения; для некритичных задач публичный сервис может быть рациональнее. Умение назвать условия применимости — признак качественного обоснования.


Ответы на вопросы, которые прозвучат

Вопрос ученикаКак отвечать
«Кому нужно взламывать датчики протечки?»Мотивы бывают разные: от хулиганства до целенаправленной дезорганизации работы служб. Инфраструктура защищается независимо от предполагаемого мотива
«Если MIC всего 4 байта, почему это надёжно?»Потому что атака идёт по радио, а не в памяти компьютера. Через эфир перебрать 4,3 миллиарда вариантов невозможно. Сам ключ при этом 128-битный
«Можно ли вообще сделать абсолютно защищённую сеть?»Нет. Глушение и физическое уничтожение криптографией не закрываются. Задача — закрыть то, что закрывается, и знать про остальное
«Зачем шифровать данные о протечке — это же не секрет?»Отдельное сообщение не секрет, но карта расположения датчиков и история аварий — сведения о слабых местах городской инфраструктуры
«Наш стенд получается незащищённым?»Он защищён механизмами LoRaWAN, но использует ABP и известные ключи — сознательное упрощение для учёбы. Мы честно это фиксируем

Раздаточный лист (для печати)

Урок 7. Безопасность инфраструктуры

Сравнение: игрушка против промышленного решения

ЗадачаFoxHunterLoRaWAN
Подтвердить отправителя
Защита от повтора
Скрыть содержимое
Управление ключами

Стойкость подписи (по расчётам из FoxHunter, урок 6):

FoxHunterLoRaWAN
Длина1 байт4 байта
Вариантов
Перебор по радио (1/с)
ФункцияXOR (линейная)AES-CMAC (нелинейная)

ABP против OTAA:

ABPOTAA
Где ключи
Что при компрометации узла
Где применяемстендгород

Модель угроз: что LoRaWAN НЕ закрывает?

  1. ________________________________
  2. ________________________________
  3. ________________________________

Почему приватная сеть для города:

____________________________________________________


Домашнее задание

Обязательная часть

Врайтап по рубрике А. Обязательный пункт: три слабости FoxHunter и механизмы LoRaWAN, которые их закрывают.

Уровень A

Найти три системы из жизни, где важна защита от подделки сообщений (банковские операции, электронные пропуска, госуслуги). Описать, что случится при подделке.

Уровень B

Составить таблицу «угроза → механизм защиты → закрыта полностью или частично» для нашей городской сети.

Уровень C

Подготовить раздел «модель безопасности» для защиты проекта: угрозы, механизмы, честно названные незакрытые риски и обоснование их допустимости.

Этот раздел напрямую входит в рубрику Б (защита проекта, документ 2 экспертизы) и в конкурсную работу по документу 5, §3.2.

Итог урока: что записать в журнал

Вывод урока 7

  1. Сеть, управляющая аварийными нарядами города, — инфраструктура, её защита обязательна.
  2. LoRaWAN несёт защиту «из коробки»: AES-128 (конфиденциальность), MIC 4 байта на AES-CMAC (целостность и аутентичность), FCnt (защита от повтора).
  3. MIC 4 байта против подписи 1 байт: 4,3 млрд вариантов против 256 — перебор по радио из минут превращается в десятки лет.
  4. Различайте: длина MIC защищает канал, длина ключа (128 бит) защищает секрет.
  5. ABP (ключи в прошивке) — для стенда; OTAA (сессионные ключи) — для города.
  6. Приватная сеть оставляет ключи и данные инфраструктуры под контролем города.
  7. Криптография закрывает угрозы содержанию, но не закрывает глушение и физическое разрушение — их обнаруживают мониторингом молчания.

Связь с курсом

Что родилось на этом урокеГде станет инструментом
Промышленные механизмы защитыУрок 8 (защита проекта, опора «модель безопасности»)
Полная модель угрозКонкурсные работы, документ 5
«Честно назвать незакрытое»Рубрика Б, критерий «Границы и ограничения»
Обнаружение атаки по совокупности признаковBeaconRadio урок 5, вся диагностика курса

Чек-лист педагога перед уроком

  • Материалы FoxHunter (уроки 4–6) под рукой для сопоставления
  • Если модуль охоты не пройден — подготовить краткую демонстрацию брутфорса
  • Проверены числа: 256 против 2³², 2 минуты против 68 лет
  • Раздаточный лист распечатан
  • Готов нейтральный ответ на вопрос «кому это нужно взламывать»