Compartir vía


Bloqueo de configuración de periféricos

Una configuración de periféricos es una asignación de periféricos a núcleos. Los chips de Azure Sphere ahora tienen la capacidad de bloquear una configuración de periféricos para proporcionar seguridad adicional. Todos los futuros chips de Azure Sphere también tendrán bloqueo de configuración de periféricos.

Durante el inicio del sistema, el entorno en tiempo de ejecución de Azure Sphere lee el manifiesto de la aplicación para determinar qué periféricos puede usar una aplicación y asigna los periféricos a un núcleo configurando el firewall de hardware. Cuando la configuración de periféricos no está bloqueada, es posible que un atacante vuelva a configurar las asignaciones principales de los periféricos y acceda a periféricos arbitrarios. Sin embargo, cuando se bloquea la configuración de periféricos, un atacante no puede reasignar periféricos incluso si el código está en peligro.

Cuando la configuración de periféricos está bloqueada

El tiempo de ejecución de Azure Sphere bloquea la configuración periférico durante el inicio del sistema, después de inicializar todas las aplicaciones, si se cumplen las dos condiciones siguientes:

El bloqueo de configuración de periféricos agrega otra capa de seguridad para defensa en profundidad, que es una de las siete propiedades necesarias para dispositivos altamente protegidos. Una vez bloqueada la configuración del periférico, no se puede revisar hasta que se reinicia el dispositivo.

Actualizaciones de aplicaciones y reinicio del dispositivo

Una actualización de la aplicación que requiere un cambio en la configuración de periféricos desencadena un reinicio del dispositivo cuando la configuración del periférico está bloqueada. Una vez bloqueada la configuración, el dispositivo debe reiniciarse antes de poder revisar la configuración periférico en consecuencia para la actualización de la aplicación.

Un cambio en la configuración de periféricos se produce cuando una actualización de aplicación requiere que los periféricos se liberen o adquieran. Los siguientes son ejemplos de actualizaciones de aplicaciones que desencadenan un reinicio del dispositivo cuando la configuración periférico está bloqueada:

  • Se instala una nueva aplicación que usa periféricos como parte de una actualización en la nube o instalación de prueba. En este caso, debe adquirirse un nuevo núcleo y periféricos.
  • Una aplicación actualizada requiere un conjunto diferente de periféricos de su versión anterior. En este caso, es necesario liberar algunos periféricos y adquirir otros periféricos.
  • Una aplicación que usa periféricos se elimina como parte de una actualización en la nube. En este caso, deben publicarse todos los periféricos que use la aplicación.

Los siguientes son ejemplos de actualizaciones de aplicaciones que no desencadenan un reinicio del dispositivo porque la configuración de periféricos no cambia:

  • Se instala una nueva aplicación que no usa periféricos como parte de una actualización en la nube o instalación de prueba.
  • Una aplicación que no usa periféricos se elimina como parte de una actualización en la nube.
  • Una aplicación actualizada requiere el conjunto exacto de periféricos que usa su versión anterior.