0
21:46:37 - 18.10.2018
Валюта: Р (RUB)
  • Р (RUB)
  • $ (USD)
  • € (EUR)
21:46:37 - 18.10.2018

Безопасность встраеваемых систем засчет виртуального разделение среды

(МК) применяются почти в каждом приложении - в промышленном оборудовании и автомобильной электронике, в носимых электронных устройствах и даже в «умной» одежде. Все чаще приложения с микроконтроллерами оснащаются модулями Wi-Fi, NFC и Zigbee с малым энергопотреблением. Подключенные к сети микроконтроллеры должны управлять собственным состоянием и ресурсами, захватывать и обрабатывать данные с датчиков, выполнять анализ и поддерживать безопасное хранение информации. Кроме того, МК должны поддерживать связь с удаленным хостом для передачи данных, управления платформами и беспроводных обновлений. По мере роста числа встраиваемых подключенных приложений возникают серьезные угрозы при эксплуатации встраиваемых платформ. Вопросам их безопасности следует уделять самое пристальное внимание на ранних этапах проектирования.

Известно несколько методов реализации защиты в самом микроконтроллере. К ним относится безопасная загрузка и обновления безопасного кода. Кроме того, для повышения безопасной эксплуатации системы применяются центральные процессоры (ЦП) с блоками защиты информации (Memory Protection Unit, MPU), чтобы предотвратить не авторизованный доступ к загрузочному коду и исполнение недоверенного кода.

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

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

АППАРАТНАЯ ВИРТУАЛИЗАЦИЯ

Аппаратная виртуализация, как правило, тесно связана с процессорной технологией серверного класса. Эта хорошо себя зарекомендовавшая технология применяется на 64-разрядных серверных платформах предприятий уже многие годы. Виртуализация позволяет объединить несколько схожих или разных рабочих нагрузок в центрах обработки данных, что уменьшает капитальные затраты (на оборудование и инфраструктуру) и эксплуатационные расходы (на энергопотребление и охлаждение).

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

1.PNG

Разработка начинается с разделения. С помощью технологии виртуализации можно разделить общие ресурсы на аппаратной платформе в логически несвязанные среды, или т. н. виртуальные машины (ВМ). Каждая виртуальная машина состоит из приложений и соответствующей операционной системы (при необходимости). С помощью аппаратной виртуализации можно разделить и защитить коммуникационные интерфейсы (а также программные стеки), память и другие ресурсы на области с собственными адресами и заблокировать доступ к другим адресным пространствам приложений. На рисунке 1 показана упрощенная схема виртуализации во встраиваемой системе. IP-ядра MIPS М5100 и М5150, представляющие собой ЦП с небольшой площадью, обеспечивают изоляцию до семи гостей. В большинстве современных встраиваемых приложений с виртуализацией, как правило, используются до трех изолированных сред; ЦП М51хх предназначены для более крупного масштабирования.

После защиты критически важных областей от возможных уязвимостей обеспечивается соответствие каждой изолированной среды определенным требованиям безопасности. Аппаратный корень доверия (Root of Trust, RoT) и службы защиты позволяют реализовать соответствующие требования к аутентификации и конфиденциальности. Основу виртуальной платформы составляет доверенный гипервизор, который создает и управляет виртуальными машинами, работающими на самом привилегированном корне¬вом уровне процессора (см. рис. 1).

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

2.PNG

На рисунке 2 показаны потенциальные преимущества виртуализации во встраиваемых приложениях. В рассматриваемом случае ЦП М5150 сконфигурирован для поддержки до трех раздельных сред. Каждая из них изолирована и защищена от других, включая память и систему ввода/вывода. Как правило, RoT и службы защиты предназначены для использования в доверенной среде. Службы защиты RoT, запрашиваемые другими средами (ВМ2 или ВМЗ), перенаправляются и управляются безопасной средой ВМ1.

В отличие от традиционного одно-осевого представления с разделением рабочего пространства на область пользователя и ядра, процессор MIPS М5150 можно разделить на четыре области (квадранта) с двумя осями. Области «Пользователь» и «Ядро» группируются в контексты «Корень» и «Гость».

Гость-пользователь.

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

Гость-ядро.

Типовая область ядра ЦП, где выполняются привилегированные задачи уровня ОС. В качестве примера можно привести ОС Linux, систему ввода/вывода данных, управление прерываниями и назначения памяти.

Корень-пользователь. Единственный привилегированный режим ЦП, в котором выполняются защищенные приложения.

Корень-ядро.

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

Представления гость-пользователь и гость ядро можно продублировать для создания нескольких изолированных областей. Гостевые контексты копируются в параллельные области или среды, изолированные с помощью аппаратного механизма. При использовании процессора М5150 имеется возможность. Корневой контекст работает в привилегированном режиме на процессоре М5150. Благодаря этому привилегированные команды, программное обеспечение, прерывания и исключения выполняются внутри этого контекста, обеспечивая при необходимости контроль, управление и завершение гостевых служб. Доступ из любого гостевого ресурса к корневому ресурсу можно запретить программным способом. Однако корневой контекст может работать как посредник, обеспечивающий косвенный доступ к закрытым или защищенным ресурсам.

3.PNG

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

ЗАМЕНА ДВУХЪЯДЕРНОГО КРИСТАЛЛА ОДНОЯДЕРНЫМ ПРОЦЕССОРОМ

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

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

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

4.PNG

Использование одноядерного кристалла позволяет решать задачи, которые прежде решались с помощью разных ресурсов - как в памяти, так и в системе ввода/вывода данных. При таком подходе задачи разделяются, а вместо двух ядер используется одно (см. рис. 4). За счет большей производительности и отсутствия жестких ограничений, связанных с разделением ЦП на два ядра, появляется возможность использовать это решение в новых приложениях.


По сравнению с конкурирующими двухъядерными встраиваемыми ЦП, у одноядерного процессора MIPS М5150 производительность на 35% выше, а площадь - на 10% меньше, что повышает эффективность использования приложений. Единое виртуализованное ядро позволяет уменьшить сложность проектирования, создания межсоединений и сократить время отладки, а также повысить безопасность и универсальность решения.

21:46:37 - 18.10.2018
Возврат к списку