Архитектура безопасности для решений Интернета вещей

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

Моделирование угроз

Корпорация Майкрософт рекомендует использовать процесс моделирования угроз в рамках разработки решения Интернета вещей. Если вы не знакомы с моделированием угроз и жизненным циклом безопасной разработки, см. следующие статьи:

Безопасность в IoT

В рамках упражнения по моделированию угроз полезно разделить архитектуру Интернета вещей на несколько зон:

  • Устройство
  • Полевой шлюз
  • Облачный шлюз
  • Служба

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

Каждая зона отделена границей доверия, показанной на следующей схеме в виде пунктирной красной линии. Он представляет собой переход данных из одного источника в другой. Во время этого перехода данные могут подвергаться следующим угрозам:

  • спуфинг;
  • незаконное изменение;
  • отказ;
  • раскрытие информации;
  • отказ в обслуживании;
  • повышение привилегий.

Дополнительные сведения см. в статье о модели STRIDE.

Схема, на которую показаны зоны и границы доверия в типичной архитектуре решения Интернета вещей.

Вы можете использовать STRIDE для моделирования угроз для каждого компонента в каждой зоне. В следующих разделах содержатся детальные сведения о каждом из компонентов, соответствующие проблемы безопасности, а также решения по их устранению.

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

Зона устройства

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

Зона полевой шлюза

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

Полевой шлюз отличается от маршрутизатора трафика тем, что он имеет активную роль в управлении доступом и потоком информации. У полевого шлюза есть две отдельные контактные зоны. Один из них сталкивается с подключенными к нему устройствами и представляет внутреннюю часть зоны. Другая сторона сталкивается со всеми внешними сторонами и является краем зоны.

Зона облачного шлюза

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

Облачный шлюз может быть сопоставлен с наложением виртуализации сети, чтобы изолировать облачный шлюз и все подключенные к нему устройства или полевые шлюзы от любого другого сетевого трафика. Сам облачный шлюз не является системой управления устройствами, а также не средством обработки или хранения данных устройства; эти средства взаимодействия с облачным шлюзом. Зона облачного шлюза включает в себя сам облачный шлюз и все полевые шлюзы и устройства, прямо или опосредованно подключенные к нему. Край зоны — это отдельная поверхность, через которую взаимодействуют все внешние стороны.

Зона служб

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

  • Хранение и анализ данных
  • Выдача команд устройствам на основе аналитики данных или расписаний
  • Предоставление информации и возможностей управления авторизованным конечным пользователям

Устройства IoT

Устройства Интернета вещей часто являются специализированными устройствами, которые варьируются от простых датчиков температуры до сложных производственных линий с тысячами компонентов внутри них. Ниже приведены примеры возможностей устройств Интернета вещей.

  • Измерение условий окружающей среды и создание отчетов
  • Поворотные клапаны
  • Управление сервоприводами
  • Звуковое оповещение
  • Включение и выключение света

Назначение этих устройств определяет их техническую конструкцию и доступный бюджет для их производства и запланированного жизненного цикла. Сочетание этих факторов ограничивает доступный операционный бюджет энергопотребления, физический объем, а также доступные возможности хранения, вычислений и безопасности.

Что может пойти не так с автоматизированным или удаленно управляемым устройством Интернета вещей:

  • Физические дефекты
  • Дефекты логики управления
  • Умышленное несанкционированное вторжение и манипуляции.

Последствия этих сбоев могут быть серьезными, такими как разрушенные производственные участки, сгоревшие здания, травмы и смерть. Таким образом, существует высокая панель безопасности для устройств, которые перемещают вещи, или передают данные датчика, что приводит к командам, вызывающим перемещение объектов.

Взаимодействие контроля устройства и данных устройства

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

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

Моделирование угроз для эталонной архитектуры Интернета вещей Azure

В этом разделе используется эталонная архитектура Интернета вещей Azure , чтобы продемонстрировать, как думать о моделировании угроз для Интернета вещей и как устранять выявленные угрозы:

Схема эталонной архитектуры Интернета вещей Azure.

На следующей схеме представлено упрощенное представление эталонной архитектуры с помощью модели схемы потока данных:

Схема потока данных, полученная на основе эталонной архитектуры Интернета вещей Azure.

Архитектура разделяет возможности устройств и полевых шлюзов. Такой подход позволяет использовать более безопасные устройства полевых шлюзов. Устройства полевых шлюзов могут обмениваться данными с облачным шлюзом с помощью безопасных протоколов, которые обычно требуют больше вычислительной мощности, чем простое устройство, например термостат, может предоставлять само по себе. На схеме зона служб Azure Центр Интернета вещей Azure служба — это облачный шлюз.

На основе архитектуры, описанной ранее, в следующих разделах показаны некоторые примеры моделирования угроз. В примерах рассматриваются основные элементы модели угроз:

  • Процессы
  • Связь
  • Память

Процессы

Ниже приведены некоторые примеры угроз в категории процессов. Угрозы классифицируются на основе модели STRIDE:

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

Отказ в обслуживании. Устройство может быть распознано как неработоспособное или неспособное обмениваться данными из-за радиочастотных помех или потому, что обрезаны провода. Например, камера наблюдения, которая намеренно отключена от сети или питания, не может передавать данные.

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

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

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

Раскрытие информации. Если на устройстве работает измененное программное обеспечение, из него возможна утечка данных посторонним лицам.

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

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

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

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

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

В следующей таблице показаны примеры мер по устранению этих угроз. Значения в столбце угрозы являются сокращениями:

  • Спуфингов (S)
  • Незаконное изменение (T)
  • Отказ (R)
  • Раскрытие информации (I)
  • Отказ в обслуживании (D)
  • Повышение привилегий (E)
Компонент Аналитика Меры по снижению риска Риск Реализация
Устройство S Назначить устройству удостоверение и проверять его подлинность Замена устройства или его части другим устройством. Как узнать, что вы разговариваете с нужным устройством? Проверка подлинности устройства с использованием протокола TLS или IPSec. Инфраструктура должна поддерживать использование общего ключа (PSK) на тех устройствах, которые не могут обрабатывать полное асимметричное шифрование. Используйте Azure AD OAuth.
TRID Например, примените к устройству механизмы защиты от незаконного изменения, чтобы предотвратить извлечение ключей и других криптографических материалов с устройства. Кто-то может незаконно изменить устройство (физически вмешаться). Как вы уверены, что устройство не было изменено. Наиболее эффективным средством устранения рисков является доверенный платформенный модуль (TPM). Доверенный платформенный модуль хранит ключи в специальной схеме на микросхеме, из которой ключи не могут быть считаны, но могут использоваться только для криптографических операций, использующих этот ключ. Шифрование памяти устройства. Управление ключами устройства. Подписывание кода
E Обеспечить контроль доступа к устройству. Применить схему авторизации Если устройство позволяет выполнять отдельные действия с помощью команд из внешнего источника или даже со скомпрометированного датчика, при атаке оно позволяет выполнять операции, которые недоступны при других обстоятельствах. Наличие схемы авторизации для устройства.
Полевой шлюз S Обеспечить аутентификацию полевого шлюза при доступе к облачному шлюзу (например, на основе сертификатов, общих ключей или утверждений). Если кто-то может подделать данные полевого шлюза, он сможет выдавать свое устройство за любое другое TLS RSA/PSK, IPSec, RFC 4279. В отношении тех же основных проблем хранения и обеспечения соответствия устройств в целом лучшее решение — использовать доверенный платформенный модуль. Использование расширения 6LowPAN для IPSec, чтобы обеспечить поддержку сетей беспроводных датчиков
TRID Защита полевой шлюза от незаконного изменения (TPM) Атаки спуфингом, которые обманывают облачный шлюз, думая, что он взаимодействует с полевым шлюзом, могут привести к раскрытию информации и незаконному копированию данных Шифрование памяти, TPM, проверка подлинности.
E Реализовать механизм контроля доступа для полевого шлюза

Связь

Ниже приведены некоторые примеры угроз в категории коммуникации. Угрозы классифицируются на основе модели STRIDE:

Отказ в обслуживании. Устройства с ограниченными ролями обычно находятся под угрозой DoS, когда они активно прослушивают входящие подключения или нежелательные датаграммы в сети. Злоумышленник может открыть несколько подключений в параллельном режиме и либо не обслуживать их, либо медленно обслуживать их, либо заполнить устройство нежелательным трафиком. В обоих случаях сеть может распознать устройство как неработоспособное.

Спуфингом, раскрытие информации. Устройства с ограниченными ограничениями и устройства специального назначения часто имеют единые средства безопасности, такие как защита паролем или ПИН-кодом. Иногда они полностью полагаются на доверие сети и предоставляют доступ к информации любому устройству в той же сети. Если сеть защищена общим ключом, который раскрывается, злоумышленник может управлять устройством или наблюдать за передаваемыми данными.

Спуфинг: злоумышленник может перехватить или частично переопределить широковещательный канал и подделывать инициатора.

Незаконное изменение. Злоумышленник может перехватить или частично переопределить трансляцию и отправить ложную информацию.

Раскрытие информации: Злоумышленник может прослушивать трансляцию и получать информацию без авторизации.

Отказ в обслуживании. Злоумышленник может заглушить широковещательный сигнал и запретить распространение информации.

В следующей таблице показаны примеры мер по устранению этих угроз:

Компонент Аналитика Меры по снижению риска Риск Реализация
Устройство, Центр Интернета вещей TID (От D) использовать TLS (для общих ключей или RSA), чтобы шифровать трафик Перехват данных обмена между устройством и шлюзом или вмешательство в обмен Обеспечение безопасности на уровне протокола. При использовании пользовательских протоколов нужно выяснить, как обеспечить соответствующую защиту. В большинстве случаев устройство отправляет данные в Центр Интернета вещей (инициирует подключение)
Устройство — устройство TID (От D) использовать TLS (для общих ключей или RSA), чтобы шифровать трафик Считывание данных при их передаче между устройствами. Незаконное изменение данных. Перегрузка устройства новыми подключениями Обеспечение безопасности на уровне протокола (HTTP, HTTPS, AMQP, MQTT или CoAP). При использовании пользовательских протоколов нужно выяснить, как обеспечить соответствующую защиту. Чтобы устранить риск атаки типа "отказ в обслуживании", нужно устанавливать одноранговые подключения устройств через полевой или облачный шлюз, чтобы они работали в качестве клиентов по отношению к сети. После подключения шлюза к пирингу может быть установлено прямое соединение между одноранговыми узлами.
Внешняя сущность, устройство TID Надежное подключение внешней сущности к устройству Перехват подключения к устройству. Вмешательство в обмен данными с устройством Обеспечить безопасное подключение внешней сущности к устройству, используя технологию Bluetooth с низким энергопотреблением или NFC. Управление рабочей панелью устройства (физическое устройство).
Полевой шлюз, облачный шлюз TID Использовать TLS (для общих ключей или RSA), чтобы шифровать трафик Перехват данных обмена между устройством и шлюзом или вмешательство в обмен Обеспечение безопасности на уровне протокола (HTTP, HTTPS, AMQP, MQTT или CoAP). При использовании пользовательских протоколов нужно выяснить, как обеспечить соответствующую защиту.
Устройство, облачный шлюз TID Использовать TLS (для общих ключей или RSA), чтобы шифровать трафик Перехват данных обмена между устройством и шлюзом или вмешательство в обмен Обеспечение безопасности на уровне протокола (HTTP, HTTPS, AMQP, MQTT или CoAP). При использовании пользовательских протоколов нужно выяснить, как обеспечить соответствующую защиту.

Память

В следующей таблице показаны примеры мер по устранению угроз для хранилища.

Компонент Аналитика Меры по снижению риска Риск Реализация
Хранилище устройства TRID Шифрование хранилища, подписывание журналов Чтение данных из хранилища, изменение данных телеметрии. Незаконное изменение данных управления командами, которые находятся в очереди или кэше. Незаконное изменение пакетов обновления конфигурации или встроенного ПО, которые есть в локальной очереди или локальном кэше, может повлечь компрометацию операционной системы или ее компонентов. Шифрование, использование кода проверки подлинности сообщения или цифровых подписей. Обеспечение строгого контроля доступа к ресурсам с помощью списков управления доступом (ACL) или разрешений
Образ ОС устройства TRID Незаконное изменение ОС или замена ее компонентов Раздел ОС только для чтения, подписанный образ ОС, шифрование
Хранилище полевого шлюза (для хранения очередей данных) TRID Шифрование хранилища, подписывание журналов Чтение данных из хранилища, изменение данных телеметрии, незаконное изменение данных управления командами в очереди или кэшированные данные. Незаконное изменение пакетов обновления конфигурации или встроенного ПО (предназначенных для устройств или полевого шлюза), которые есть в локальной очереди или локальном кэше, может повлечь компрометацию операционной системы или ее компонентов. BitLocker
Образ ОС полевого шлюза TRID Незаконное изменение ОС или замена ее компонентов Секционирование ОС только для чтения, подписывание образов ОС, шифрование

Дальнейшие действия

Дополнительные сведения о безопасности Интернета вещей см. в статье: