Verrouillage de la configuration de périphérique
Une configuration de périphérique est un mappage de périphériques à cœurs. Les puces Azure Sphere ont désormais la possibilité de verrouiller une configuration de périphérique afin de fournir une sécurité supplémentaire. Toutes les futures puces Azure Sphere auront également un verrouillage de configuration périphérique.
Au démarrage du système, le runtime Azure Sphere lit le manifeste de l’application pour déterminer les périphériques qu’une application est autorisée à utiliser et affecte les périphériques à un cœur en configurant le pare-feu matériel. Lorsque la configuration de périphérique n’est pas verrouillée, il peut être possible pour un attaquant de reconfigurer les attributions principales des périphériques et d’accéder à des périphériques arbitraires. Toutefois, lorsque la configuration du périphérique est verrouillée, une personne malveillante ne peut pas réaffecter des périphériques même si le code est compromis.
Lorsque la configuration du périphérique est verrouillée
Le runtime Azure Sphere verrouille la configuration périphérique au démarrage du système, une fois toutes les applications initialisées, si les deux conditions suivantes sont remplies :
- L’état de fabrication de l’appareil est défini sur DeviceComplete.
- La fonctionnalité d’appareil appDevelopment n’est pas présente sur l’appareil.
Le verrouillage de configuration périphérique ajoute une autre couche de sécurité pour la défense en profondeur, qui est l’une des sept propriétés requises pour les appareils hautement sécurisés. Une fois la configuration du périphérique verrouillée, elle ne peut pas être révisée tant que l’appareil n’est pas redémarré.
Mises à jour d’application et redémarrage de l’appareil
Une mise à jour d’application qui nécessite une modification de la configuration du périphérique déclenche un redémarrage de l’appareil lorsque la configuration du périphérique est verrouillée. Une fois la configuration verrouillée, l’appareil doit redémarrer avant de pouvoir réviser la configuration du périphérique en conséquence pour la mise à jour de l’application.
Une modification de la configuration des périphériques se produit lorsqu’une mise à jour d’application nécessite la publication ou l’acquisition de périphériques. Voici des exemples de mises à jour d’application qui déclenchent un redémarrage de l’appareil lorsque la configuration du périphérique est verrouillée :
- Une nouvelle application qui utilise des périphériques est installée dans le cadre d’une mise à jour cloud ou d’un chargement indépendant. Dans ce cas, un nouveau cœur et des périphériques doivent être acquis.
- Une application mise à jour nécessite un ensemble de périphériques différent de sa version précédente. Dans ce cas, certains périphériques doivent être libérés et d’autres doivent être acquis.
- Une application qui utilise des périphériques est supprimée dans le cadre d’une mise à jour cloud. Dans ce cas, tous les périphériques utilisés par l’application doivent être libérés.
Voici des exemples de mises à jour d’application qui ne déclenchent pas de redémarrage de l’appareil, car la configuration du périphérique reste inchangée :
- Une nouvelle application qui n’utilise aucun périphérique est installée dans le cadre d’une mise à jour cloud ou d’un chargement indépendant.
- Une application qui n’utilise aucun périphérique est supprimée dans le cadre d’une mise à jour cloud.
- Une application mise à jour nécessite l’ensemble exact des périphériques utilisés par sa version précédente.