Suite à l’installation des mises à jour du Patch Tuesday de ce mois-ci sur une machine Windows, des utilisateurs se plaignent de ne plus pouvoir utiliser Linux, lors de l’utilisation d’un Dual Boot. Microsoft a confirmé l’existence de ce problème. Faisons le point.
Bien qu’il y ait de bonnes raisons d’installer les mises à jour d’août 2024 sur les machines Windows, celles-ci sont accompagnées, comme trop souvent, d’effets indésirables. Le problème évoqué dans cet article est un nouvel exemple.
Le correctif pour la vulnérabilité CVE-2022-2601
Dans ces nouvelles mises à jour pour Windows, Microsoft a pris la décision d’appliquer une mise à jour « Secure Boot Advanced Targeting » (SBAT). L’objectif étant de bloquer les chargeurs de démarrage (bootloader) Linux non patché contre la faille de sécurité CVE-2022-2601. La raison : ceci pourrait avoir un impact sur la sécurité de Windows.
Si l’on s’intéresse au bulletin de sécurité de la vulnérabilité CVE-2022-2601, on peut lire ce qui suit : « La vulnérabilité attribuée à ce CVE se trouve dans le chargeur d’amorçage Linux GRUB2, un chargeur d’amorçage conçu pour prendre en charge le Secure Boot sur les systèmes fonctionnant sous Linux. »
Microsoft précise aussi que ce changement n’aura pas d’impact sur les machines où il y a un dual boot Windows et Linux. Autrement dit, sur les machines où les deux systèmes sont installés côte à côte, et où l’utilisateur doit choisir quel système il souhaite utiliser au démarrage de la machine.
Le problème, c’est que de nombreux utilisateurs de dual boot se plaignent de ne plus pouvoir utiliser Linux suite à l’installation des mises à jour d’août 2024. Diverses distributions sont évoquées, notamment Ubuntu, Linux Mint, Zorin OS, et Puppy Linux. Si vous avez rencontré ce problème, le message d’erreur suivant devrait vous parler : « Verifying shim SBAT data failed: Security Policy Violation. Something has gone seriously wrong: SBAT self-check failed: Security Policy Violation. »
Microsoft reconnait l’existence du problème
Du côté de Microsoft, c’est désormais un problème connu et référencé dans la documentation officielle. Il est précisé : « Après avoir installé la mise à jour de sécurité Windows d’août 2024, publiée le 13 août 2024 (KB5041585), vous pourriez rencontrer des problèmes lors du démarrage de Linux si vous avez activé la configuration de dual boot pour Windows et Linux sur votre appareil. »
Microsoft reconnait que dans certains cas, le dual boot n’est pas correctement détecté. Windows 10 et Windows 11 sont affectés par ce problème, tout comme Windows Server, même s’il est moins fréquent de voir une machine en dual boot Linux et Windows Server.
Microsoft affirme travailler avec ses partenaires Linux au sujet de ce bug lié au correctif pour la faille de sécurité CVE-2022-2601. En attendant, il y a tout de même 2 solutions proposées par Microsoft.
Si vous utilisez un dual boot Windows et Linux et que vous n’avez pas encore installé les mises à jour d’août 2024, Microsoft vous invite à exécuter cette commande :
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecureBoot\SBAT /v OptOut /d 1 /t REG_DWORD
Elle va modifier une valeur dans le Registre pour empêcher la mise à jour SBAT, et ainsi ne pas affecter le dual boot de votre PC.
Si vous avez déjà installé la mise à jour d’août 2024 et que votre Linux ne démarre plus, il y a aussi une solution. Les informations ci-dessous sont reprises du site Microsoft. Je n’ai pas pu tester personnellement, donc n’hésitez pas à nous faire un retour en commentaire.
- Étape n°1 – Désactiver le Secure Boot :
Démarrez dans les paramètres du firmware de votre appareil (accédez au BIOS).
Désactivez le Secure Boot dans les options de démarrage (les étapes varient selon le fabricant).
- Étape n°2 – Supprimer la mise à jour SBAT :
Démarrez sous Linux. Ouvrez le terminal et exécutez la commande suivante :
sudo mokutil --set-sbat-policy delete
Entrez votre mot de passe root si demandé. Redémarrez sous Linux une nouvelle fois.
- Étape n°3 – Vérifier les révocations SBAT :
Dans le terminal, exécutez la commande suivante :
mokutil --list-sbat-revocations
Assurez-vous que la liste ne montre aucune révocation.
- Étape n°4 – Réactiver le Secure Boot :
Redémarrez votre PC et accédez une nouvelle fois aux paramètres du BIOS afin de réactiver le Secure Boot.
- Étape n°5 – Vérifier l’état du Secure Boot :
Démarrez sous Linux. Exécutez la commande suivante :
mokutil --sb-state
La sortie devrait indiquer « SecureBoot enabled ». Si ce n’est pas le cas, répétez l’étape n°4 car vous n’avez pas dû réactiver correctement le Secure Boot.
- Étape n°6 – Empêcher les futures mises à jour SBAT sous Windows :
Pour finir, démarrez sous Windows, ouvrez l’invite de commande en tant qu’administrateur et exécutez :
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecureBoot\SBAT /v OptOut /d 1 /t REG_DWORD
Désormais, votre PC doit être capable de démarrer sous Linux ou Windows, selon vos besoins.