Sécurité matérielle : évolutions récentes
Sur un appareil qui met à jour son firmware à l'aide de deux zones, la face A et la face B, à quel moment est-il le plus approprié de faire passer au nouveau numéro de version le numéro de version minimal enregistré en eFuse pour la protection anti-rollback ?
- AFaire passer le numéro de version minimal au nouveau numéro dès le début du téléchargement du nouveau firmware
- BFaire avancer le numéro après avoir vérifié la signature du nouveau firmware et confirmé qu'il démarre et fonctionne normalement depuis sa face
- CConserver le numéro de version minimal inscrit à la fabrication et ne jamais le faire avancer, même lors des mises à jour du firmware
Afficher la réponse et l'explication
Réponse : B. Faire avancer le numéro après avoir vérifié la signature du nouveau firmware et confirmé qu'il démarre et fonctionne normalement depuis sa face
Si le numéro est avancé d'abord et que le nouveau firmware s'avère endommagé en cours de route ou ne démarre pas, l'ancienne version restée sur la face d'origine est elle aussi rejetée comme « antérieure à la version minimale », et l'appareil ne peut plus démarrer. On écrit donc la nouvelle version sur la face libre, on vérifie sa signature, et ce n'est qu'après avoir confirmé que l'appareil démarre et fonctionne normalement depuis cette face (commit) que l'on fait avancer le numéro de version minimal. Ensuite, le retour à une ancienne version vulnérable est empêché. À l'inverse, si le numéro n'est jamais avancé, les attaques qui réécrivent une ancienne version correctement signée ne peuvent pas être empêchées.
Continuer : 9 autres questions sur Sécurité matérielle : évolutions récentes