Aller au contenu

Démarrage sécurisé (Secure Boot)

Démarrage sécurisé (en anglais Secure Boot) : fonction de l'UEFI qui n'exécute au démarrage que des programmes signés par une clé de confiance, de sorte que chaque étage vérifie le suivant jusqu'au noyau et à ses modules.

La base db du firmware contient presque toujours la clé de Microsoft, pas celle des distributions. D'où la chaîne : shimx64.efi, signé par Microsoft et qui embarque la clé de Canonical ou de Debian, vérifie grubx64.efi, qui vérifie le noyau, lequel refuse ensuite les modules non signés. Le noyau démarré ainsi passe en mode lockdown. mokutil --sb-state affiche l'état. Pour charger un module compilé localement (DKMS), on enrôle sa propre clé, une MOK, par mokutil --import, avec une confirmation au redémarrage suivant, sur la console ; sans cela, le noyau répond Loading of unsigned module is rejected.

Il empêche un attaquant devenu root de remplacer GRUB ou le noyau par une version piégée qui survivrait aux réinstallations (un bootkit), et les guides de durcissement recommandent de l'activer quand la plateforme le permet. Ses limites : sur Debian et Ubuntu, l'initramfs généré localement n'est pas signé, et /boot reste lisible et modifiable par qui accède au disque hors ligne. Sur une instance cloud, la confiance repose en dernier ressort sur l'hyperviseur du fournisseur ; la documentation des instances Scaleway ne décrit pas de réglage Secure Boot, il faut donc constater l'état réel et le noter dans la fiche du serveur.

Dans les cours

Voir aussi