Ксавье Бигналет (Xavier Bignalet), менеджер по маркетингу продукции, Microchip Technology
Не существует единого решения по обеспечению безопасности интернета вещей (IoT) – каждой его реализации требуется собственная многоуровневая стратегия защиты. Подключение к интернету встраиваемой IoT-системы требует иного подхода, а не разработки классических решений. В то же время ожидается, что даже небольшое встраиваемое устройство будет в полной мере соответствовать требованиям быстро меняющегося рынка информационных технологий и безопасности, легко обновляться и иметь защиту на уровне постоянно контролируемых центров обработки данных. Это, конечно, трудная задача, но она решается с помощью правильных методов проектирования.
Интернет вещей значительно расширил возможности угроз со стороны злоумышленников. Каждое IoT-устройство представляет собой уязвимый конечный узел. Схематично устройство интернета вещей представлено на рисунке 1.
Рис. 1. Основные элементы IoT-устройства
В общем случае, встраиваемое подключаемое к сети устройство состоит из четырех основных аппаратных модулей:
- обработки данных;
- памяти;
- связи;
- безопасности.
Подробнее организация узла беспроводной сети IoT показана на рисунке 2.
Рис. 2. Пример беспроводного решения
Чтобы уменьшить уязвимость, было предложено усилить модель аутентификации подключаемого устройства с помощью элемента безопасности, сконфигурированного для хранения закрытых ключей и обработки алгоритмов криптозащиты.
К сожалению, из-за тех логистических ограничений, которые накладывают цепочки поставок, такой подход было сложно внедрить в большинстве средне- и крупномасштабных сетей. Возник вопрос о том, как использовать заказной производственный процесс для нужд массового рынка так, чтобы уникальный ключ предоставлялся каждому устройству по доступной цене?
Аппаратная платформа нового типа Trust Platform, разработанная компанией Microchip Technology, позволяет решить эту задачу. Платформа обеспечивает приложениям интернета вещей аппаратную защиту с помощью предварительно сконфигурированных элементов безопасности; при этом клиенту необходимо заказать как минимум всего 10 таких устройств. Это трехуровневое решение предоставляет готовые предварительно инициализированные, настроенные или полностью адаптируемые под требования заказчика элементы безопасности, а также возможность аутентификации в любой публичной, частной облачной инфраструктуре или сети LoRaWAN.
На этой платформе осуществляется производство элементов безопасности с предварительной конфигурацией IoT-устройств и их предварительной инициализацией в процессе изготовления. Только в этом случае аппаратное хранилище криптографических ключей может получить типовой сертификат по меньшей стоимости из расчета на одно устройство, что гораздо проще, если эти же услуги окажут сторонние компании, поставщики услуг для инфраструктуры открытых ключей (PKI) и центры сертификации. По мере перехода отрасли на платформу этого типа даже базовое IoT-приложение, например шлюз, кондиционер воздуха или камера наблюдения, можно защитить на аппаратном уровне с помощью предварительно сгенерированных типовых сертификатов, которые надежно хранятся в элементе безопасности для автономной облачной аутентификации.
Не существует универсального подхода к обеспечению безопасности интернета вещей – в каждом отдельном случае требуется своя многоуровневая стратегия. Но даже общеизвестная криптосистема защищена согласно принципу криптографии Керкхоффа, пока ключ закрыт. Ключ играет критически важную роль, позволяя клиенту и хосту установить подлинность доверенных идентификационных данных устройства, прежде чем оно установит связь, начнет обмениваться данными или совершать транзакции.
Необходимо, чтобы ключ был защищен от физических атак и удаленного извлечения. Оптимальное решение изолирует стандартные криптографические ключи в элементе безопасности и обеспечивает изолированную безопасную границу, чтобы их нельзя было открыть. Это сложная задача, которая требует соответствующих знаний и опыта в области безопасности, а также дополнительного времени на разработку IoT-решения. Тем не менее, таково основное требование к обеспечению криптозащиты.
Каждому IoT-устройству должен быть предоставлен элемент безопасности, который работает сообща с микроконтроллером устройства. Этот элемент необходимо правильно настроить в соответствии со сценариями использования, снабдить учетными данными и другими криптографическими средствами для используемой модели аутентификации. Элемент безопасности обеспечивает аутентификацию устройства в облачных сервисах с использованием хорошо протестированных и понятных принципов инфраструктуры открытых ключей. Такой подход позволяет заранее регистрировать устройства в системе на производстве с индивидуальными сертификатами для каждого устройства и генерировать QR-код на заводе, позволяющий увязать конечное изделие с конкретным сертификатом. Затем при вводе в эксплуатацию пользователь назначает тот же QR-код к своей учетной записи, а система безопасности связывает сертификаты с учетной записью клиента, обеспечивая простой и безопасный процесс ввода в эксплуатацию с соблюдением нормативных требований.
Устройству также предоставляются соответствующие конфиденциальные данные для каждого из определенных вариантов использования; при этом они должны быть защищены от раскрытия на всех этапах производства. Прежде этот процесс был недоступен при реализации большинства проектов малой или средней величины.
Производители оборудования для интернета вещей, как правило, были готовы нести бремя реализации этого аппаратного механизма аутентификации только в случае крупных заказов, но теперь полупроводниковая промышленность получает возможность для его массового внедрения.
Microchip Technology – первый поставщик, предлагающий безопасную аутентификацию достаточно малых партий изделий для систем любого масштаба. Разработанная компанией платформа позволяет использовать несколько вариантов реализации безопасного хранилища ключей для аутентификации устройств при любых объемах заказов. Например, некоторые производители IoT-изделий предпочитают автоматическое применение предварительно сконфигурированных элементов безопасности. При использовании этой опции закрытый ключ элемента безопасности и типовые сертификаты генерируются на этапе производства на защищенном оборудовании и не раскрываются в течение всего процесса обеспечения безопасности. Они надежно заперты внутри элемента безопасности при доставке и регистрации через автоматизированное IP-облако или сеть LoRaWAN.
Бывает, производители выбирают аутентификацию другого типа нескольких или всех сетевых изделий. Например, собственная цепочка сертификатов в комбинации с предварительно сконфигурированными сценариями использования сокращает время и сложность настройки, устраняя необходимость в кастомизации инвентарных номеров. К числу предварительно сконфигурированных вариантов относятся такие базовые меры безопасности как аутентификация на основе сертификатов TLS (Transport Layer Security), аутентификация LoRaWAN, безопасная загрузка, обновления по беспроводной сети (OTA), IP-защита, защита данных пользователя и ротация ключей. Помимо основных сценариев использования востребованы и заказные опции.
Самые последние разработки в области аппаратной безопасности позволяют легко и недорого реализовать элементы безопасности для защиты IoT-устройств сетей любого размера. Таким образом, устранены препятствия, традиционно связанные с настройкой и предоставлением безопасных элементов. Безопасная цепочка поставок получает все более широкое применение, позволяя распространить передовой отраслевой опыт на аутентификацию любых подключаемых устройств интернета вещей.
Немного подробнее перечислим основные особенности новой платформы и ее функциональные возможности.
- Аутентификация данных. Используя якорь доверия, можно определить, получены ли измерения с определенного устройства и не были ли они изменены. Это также помогает выявлять аномалии в данных с помощью облачной аналитики, поскольку крупномасштабное физическое вмешательство осуществить трудно.
- Безопасная загрузка означает, что для идентификации изменений в криптографической сигнатуре хост-микроконтроллера и сохраненных образах обновления встроенного ПО используется секретный ключ, хранящийся в защищенном компоненте. Кроме того, во время исполнения можно использовать дополнительные проверки целостности с помощью методов из библиотек безопасности класса B (Class B Safety Libraries).
- Безопасное «обновление прошивки по воздуху» (FUOTA) означает, что для проверки целостности источника обновления применяется секретный ключ, хранящийся в элементе безопасности, а для подтверждения целостности образа – подпись образа, отправленная на устройство перед загрузкой.
- Защита от клонирования. При правильном управлении производством элемент безопасности помогает предотвратить клонирование и подделку оборудования.
Однако помимо средств хранения секретных ключей для отдельного изделия в аппаратном элементе безопасности также требуется, чтобы оно было запрограммировано в безопасной производственной среде. Это требование создает проблемы обеспечения масштабируемости и надежности, во многих случаях связанные с субподрядчиками–изготовителями. Гибкость производства и простота ввода в эксплуатацию в этом случае легко обеспечивается за счет приобретения устройств с уже закрытой информацией, предварительно запрограммированной поставщиком этих изделий в безопасной среде. При этом загрузка общедоступной информации может осуществляться через облачную службу с помощью простого автоматизированного процесса.
Обновления
Обычно обновление прошивки выполняется с помощью кабеля, подключенного непосредственно к устройству через последовательный порт. Такой способ применялся на протяжении многих лет, но сможет ли этот подход работать с большим количеством подключенных к сети устройств, находящихся в недоступных местах?
В случае возникновения проблемы, требующей быстрого обновления вне обычного цикла технического обслуживания, следует избегать методов, для использования которых необходимо физическое присутствие. Альтернативой является использование обновления FUOTA и, в идеале, безопасного FUOTA. Поскольку это подход не требует физического присутствия, для предотвращения несанкционированных обновлений из неизвестного или ненадежного источника система должна использовать функции, обеспечиваемые элементом безопасности.
Как выполняется обновление? В идеальном случае, безопасные обновления FUOTA должны осуществляться без помощи хост-микроконтроллера. Реализация обновления непосредственно во флэш-памяти устройства для хранения программ без локальной резервной копии может привести к ужасному сценарию – превращению устройства в «кирпич», когда в процессе возникает неустранимая ошибка.
Выбранный метод FUOTA не должен зависеть от среды передачи данных, т.е. он должен обеспечивать требуемую пропускную способность, малую задержку, справляться со сбоями связи и потерями в любом физическом носителе. Таким образом, в разных носителях должен использоваться и поддерживаться один и тот же процесс со стороны сервера и один и тот же механизм загрузки, хранения и проверки целостности на стороне устройства. Неизбежно будет возникать некоторая вариативность универсального метода, основанного на полном развертывании системы, но сохранение близкого к стандартному подхода с использованием модульных методов помогает поддерживать код в долгосрочной перспективе.
MCA826