В рубрику "Криптография" | К списку рубрик | К списку авторов | К списку публикаций
В рамках реализации федеральных проектов, предусмотренных национальной программой "Цифровая экономика Российской Федерации", начата стандартизация в области Интернета вещей (IoT), а именно подготовка спецификаций ряда протоколов, предназначенных для взаимодействия между IoT-устройствами. Такие протоколы можно разделить на два больших класса – телекоммуникационные1, 2, 3 и криптографические16, 17, 18.
Телекоммуникационные протоколы и их спецификации в первую очередь охватывают логические и физические вопросы передачи данных, проработка безопасности отходит на второй план. Криптографические протоколы предназначены для решения вопросов безопасности и в большинстве своем могут использоваться с произвольным телекоммуникационным протоколом передачи данных.
Первым протоколом Интернета вещей, стандартизированным в Российской Федерации, стал NB-FI (Narrowband Fidelity). В феврале 2019 г. был утвержден так называемый предварительный национальный стандарт (ПНСТ)1, действующий с 1 апреля 2019 г. до 1 апреля 2022 г. В течение ближайших трех лет должна пройти апробация данного стандартизированного решения на практике, оценен потенциал его применения и внедрения, а по их результатам – корректировка стандарта.
Протокол беспроводной передачи данных на основе узкополосной модуляции радиосигнала NB-FI создан для построения энергоэффективных беспроводных сетей обмена данными дальнего радиуса действия по принципу топологии "звезда" (аналогичную топологию используют мобильные сети сотовой связи). Протокол подходит для телеметрических систем, в которых преобладает передача данных от конечных устройств к базовым станциям (серверу), а обратный канал в основном предназначен для передачи управляющей (служебной) информации. В качестве областей использования предполагаются сферы ЖКХ, электроэнергетика, логистика, транспорт, а также индустриальные IoT-решения.
ПНСТ1 разработан Техническим комитетом по стандартизации "Киберфизические системы” (ТК 194) по инициативе Ассоциации Интернета вещей. Первая версия стандарта была представлена широкой общественности в апреле 2018 г., в дальнейшем ее существенно переработали после выявленных уязвимостей20, приводящих к реализации практических атак.
Спецификация1 описывает требования к физическому уровню, MAC-уровню, транспортному уровню и уровню представления. Основной акцент сделан на физический уровень, в рамках которого описаны полоса рабочих частот, модуляция, метод разделения каналов и передача данных на транспортном и MAC-уровне, при этом криптографической защите данных уделено гораздо меньшее внимание.
Данные передаются в виде пакетов1, полезная нагрузка которых при передаче от конечных устройств к базовым станциям (восходящие пакеты) составляет 8 байт, а для пакетов от базовых станций до конечных устройств (нисходящие пакеты) полезная нагрузка варьируется от 8 до 128 байт. Конфиденциальность данных обеспечивается, согласно ГОСТ Р 34.12–201521, при помощи алгоритма блочного шифрования "Магма" (длина блока которого составляет 8 байт) в режиме ECB. Отметим, что подобное решение с точки зрения современной криптографии считается небезопасным. Например, в соответствии с отечественными рекомендациям по стандартизации15 не рекомендуется использовать режим ECB для данных длиной более одного блока входных данных используемого алгоритма блочного шифрования, а также для неслучайных (формализованных) данных.
Таким образом, для обеспечения конфиденциальности восходящих данных при переработке ПНСТ целесообразно изменить используемый режим шифрования, например, на один из режимов, определяемых ГОСТ Р 34.13–201522. Однако наиболее серьезной проблемой разработанного ПНСТ является то, что целостность данных и аутентификация с помощью криптографических методов в данном протоколе не предусмотрена, что позволяет проводить подмену передаваемых сообщений. Это необходимо учитывать при разработке телеметрических систем, построенных на основе ПНСТ1, тем более в условиях заявленных областей применения.
Следующим шагом на пути стандартизации IoT-технологий в Российской Федерации стал проект стандарта, определяющий сетевой протокол и системную архитектуру сети LoRaWAN (Long Range Wide Area Networks), оптимизированные на национальном уровне для мобильных и стационарных конечных устройств с батарейным питанием2.
Отличительными особенностями данного протокола являются высокая энергоэффективность, возможность передачи данных на большие расстояния, способность поддерживать двунаправленную связь, а также гибкая адаптация полосы пропускания. В настоящее время завершается процедура публичного обсуждения первой редакции данного проекта.
У текущей версии проекта2 также выявлен ряд недостатков с точки зрения безопасности. Например, можно указать ту же проблему использования режима простой замены (ЕСВ), что и в описанном выше NB-FI.
Следует отметить, что в целом проект2 основан на спецификации LoRaWAN версии 1.1, которая, по информации от участников LoRa Alliance, была отозвана из-за найденных в ней критических ошибок. В настоящее время действующей является LoRaWAN версии 1.03, которая сильно отличается от версии 1.1. При этом, поскольку, согласно тексту проекта2, допускается возможность совместного использования двух версий – 1.03 и 1.1, возникает опасность проведения атак, связанных с навязыванием уязвимой версии протокола. Их опасность хорошо известна на примере аналогичных атак на протоколы стека TLS5, 23, 24. В связи с этим представляется крайне важным исследовать вопросы безопасности разрабатываемой спецификации при работе в режиме совместимости версий 1.03 и 1.16, 7, 8, включая обоснование достаточности реализуемых методов защиты протокола от атак на протокол LoRaWaN, описанных в работах9, 10, 11, 12, 13, 14.
Еще одной инициативой стандартизации в области IoT в Российской Федерации стал проект национального стандарта OpenUNB (Open Ultra-Narrowband)4 узкополосной связи для IoT под названием "Протокол беспроводной передачи данных для высокоемких сетей на основе сверхузкополосной модуляции радиосигнала", который проходит процедуру публичного обсуждения.
Судя по настроению и реакции экспертного сообщества3, проект4 далек от практического применения и не может составить конкуренцию в настоящем виде ни LoRaWAN, ни какому-либо другому из существующих стандартизированных решений. Это связано в первую очередь с плохо описанным функциональным назначением протокола с точки зрения обеспечения безопасности. Одной из целей криптографической защиты, помимо обеспечения конфиденциальности передаваемых данных, является обеспечение их целостности. Вектором атаки в данном случае является навязывание ложной информации и перехват управления.
Текущая спецификация протокола OpenUNB не предназначена для обеспечения свойства целостности передаваемых данных по причине отсутствия механизма аутентификации и использования криптографически небезопасного алгоритма CRC.
Рассмотренные выше протоколы являются телекоммуникационными и лишь косвенно касаются вопросов безопасности. Для повышения степени защищенности информационного взаимодействия их целесообразно реализовывать совместно со специализированными криптографическими протоколами, предназначенными для использования устройствами Интернета вещей. Такие протоколы отличаются от широко используемых протоколов типа TLS и IPSec прежде всего меньшим объемом передаваемой служебной информации и отсутствием затратных с точки зрения энергопотребления преобразований (например, электронной подписи).
В рамках деятельности Технического комитета по стандартизации “Криптографическая защита информации” (ТК 026) независимо от ТК 194 ведутся работы по созданию протоколов такого типа.
Так, в июне 2019 г. утверждены методические рекомендации, описывающие криптографический протокол CRISP16.
Протокол CRISP – это универсальный протокол, описывающий структуру данных для безопасной передачи информации в автоматизированных системах управления, промышленных сетях, системах сбора информации, а также при M2M-взаимодействии. Протокол не является самодостаточным и должен использоваться совместно с телекоммуникационными протоколами, поскольку является лишь надстройкой для обеспечения безопасности данных.
К особенностям протокола следует отнести то, что он использует предварительно распределенные ключи, что, однако, является стандартной практикой для IoT-устройств. Для обеспечения защиты информации предусмотрено два криптографических набора:
Для выполнения указанных свойств безопасности протокол CRISP использует алгоритм блочного шифрования "Магма" в режиме гаммирования (согласно ГОСТ Р 34.12–201521) и в режиме выработки имитовставки (согласно ГОСТ Р 34.13–201522). Наличие двух криптографических наборов объясняется тем, что зачастую конфиденциальность не является необходимым требованием при построении промышленных сетей, в отличие от целостности и аутентичности. Кроме того, протокол CRISP обеспечивает защиту от повтора ранее переданных сообщений за счет использования счетчиков и учета полученных пакетов. Для защиты от атак, использующих накопление переданных данных, предусмотрена процедура диверсификации ключа на основе алгоритма "Магма" в режиме выработки имитовставки.
Низкоресурсный протокол CRISP является новым и перспективным для обеспечения безопасности информации, передаваемой в промышленных сетях, а также устойчивости их функционирования. Конкуренцию ему могут составить такие протоколы, как IPSec, Iplir, DLMS. Насколько протокол CRISP окажется востребованным, покажет время.
Еще один вариант протоколов рассматриваемого класса – криптографические механизмы защищенного взаимодействия между двумя абонентами по незащищенному каналу, регламентируемые методическими рекомендациями17. В качестве абонентов могут выступать контрольные и измерительные приборы, устройства Интернета вещей, а также произвольные субъекты автоматизированных систем.
Важной особенностью взаимодействия контрольных и измерительных устройств является необходимость поддержки максимально возможного числа криптографических механизмов аутентификации участников взаимодействия, основанных как на использовании предварительно распределенной ключевой информации, так и на применении инфраструктуры сертификатов открытых ключей.
Первый механизм аутентификации применим в классе устройств, срок жизни которых мал, а уникальная ключевая информация может быть помещена в устройство на этапе его производства. Второй механизм предпочтителен для большего класса устройств, чей срок эксплуатации превышает время действия ключевой информации, или устройств, целью которых является предоставление услуги доступа к защищенному взаимодействию различным физическим лицам (например, кассовые аппараты, терминалы удаленного доступа). При этом наличие единого криптографического механизма взаимодействия позволит объединять в сети устройства независимо от используемого ими механизма аутентификации.
В проекте методических рекомендаций18, который в настоящее время находится в разработке, определяется порядок использования российских криптографических алгоритмов в протоколе DLMS, предназначенном для защищенного взаимодействия между системами сбора данных и измерительными устройствами. Протокол может быть использован для обеспечения конфиденциальности и целостности данных, а также для аутентификации источника данных при помощи криптографических механизмов – предварительно распределенных ключей или инфраструктуры сертификатов открытых ключей.
Таким образом, существует набор безопасных низкоресурсных криптографических протоколов, которые способны обеспечить защиту данных при использовании совместно с широко применяемыми телекоммуникационными протоколами Интернета вещей.