Super UEFIinSecureBoot Disk est une image amorçable de validation (non activement entretenue ou améliorée) avec le chargeur de démarrage GRUB2 conçu pour être utilisé comme base pour la récupération de clés USB.
Caractéristique clé : le disque est entièrement fonctionnel avec le mode UEFI Secure Boot activé. Il peut lancer n'importe quel système d'exploitation ou fichier .efi, même avec une signature non fiable, invalide ou manquante.
Secure Boot est une fonctionnalité du micrologiciel UEFI conçue pour sécuriser le processus de démarrage en empêchant le chargement de pilotes ou de chargeurs de système d'exploitation qui ne sont pas signés avec une signature numérique acceptable.
La plupart des ordinateurs modernes sont dotés du démarrage sécurisé activé par défaut, ce qui est une condition requise pour le processus de certification Windows 10. Bien qu'il puisse être désactivé sur toutes les cartes mères classiques dans le menu de configuration UEFI, cela n'est parfois pas facilement possible, par exemple en raison du mot de passe de configuration UEFI sur un ordinateur portable d'entreprise que l'utilisateur ne connaît pas.
Ce disque, après avoir été installé sur une clé USB et démarré à partir de celui-ci, désactive efficacement les fonctionnalités de protection du démarrage sécurisé et permet temporairement d'effectuer presque toutes les actions avec le PC comme si le démarrage sécurisé était désactivé. Cela pourrait être utile pour la récupération de données, la réinstallation du système d'exploitation ou simplement pour démarrer à partir d'une clé USB sans penser à des étapes supplémentaires.
Téléchargez le fichier image à partir de la page des versions, écrivez-le sur une clé USB à l'aide de l'un des programmes suivants :
ATTENTION : toutes vos données flash USB seront supprimées.
L'image contient une seule partition FAT32 de 500 Mo. Utilisez gparted ou un outil similaire pour le redimensionner afin d'obtenir l'espace complet sur la clé USB.
Le premier démarrage sur un PC avec Secure Boot affichera la boîte de message Access Violation. Appuyez sur OK et choisissez l'option de menu « Enregistrer le certificat à partir du fichier ». Sélectionnez ENROLL_THIS_KEY_IN_MOKMANAGER.cer
et confirmez l'inscription du certificat.
Les ordinateurs sans démarrage sécurisé démarreront sur GRUB sans intervention manuelle.
Ce disque fonctionne-t-il en Secure Boot ?
Oui, c'est le cas. Il charge tout noyau Linux ou fichier ou pilote .efi non signé ou non fiable, après l'inscription manuelle de la clé au premier démarrage à l'aide du logiciel MokManager. Vous n'avez pas besoin de désactiver Secure Boot pour effectuer l'inscription de la clé de démarrage initial.
Ce disque fonctionne-t-il sur les ordinateurs UEFI sans démarrage sécurisé ou avec le démarrage sécurisé désactivé ?
Oui, cela fonctionnerait comme un GRUB2 d'origine.
Ce disque fonctionne-t-il sur les anciens ordinateurs dotés du BIOS ?
Oui, cela fonctionne comme n'importe quel autre chargeur de démarrage GRUB2.
Ce disque peut-il être utilisé pour contourner le démarrage sécurisé dans le bootkit/virus UEFI ?
Non, pas vraiment. Ce disque nécessite l'intervention manuelle d'un utilisateur physique au premier démarrage, ce qui élimine l'objectif du bootkit d'être furtif.
Puis-je remplacer GRUB par un autre chargeur de démarrage EFI (rEFInd, syslinux, systemd-boot) ?
Oui, remplacez grubx64_real.efi
/ grubia32_real.efi
par vos fichiers. Le chargeur de démarrage ne nécessite pas d'être signé et doit également démarrer tous les fichiers .efi grâce à la politique de sécurité installée par grubx64.efi
/ grubia32.efi
(PreLoader), tout comme GRUB2 inclus dans le disque.
Le processus de démarrage UEFI de ce disque s'effectue en 3 étapes.
bootx64.efi (shim) → grubx64.efi (preloader) → grubx64_real.efi (grub2) → EFI file/OS
Etape 1 : la carte mère charge les cales. Shim est un chargeur spécial qui charge simplement l'exécutable suivant, grubx64.efi (préchargeur) dans notre cas. Shim est signé avec la clé Microsoft, ce qui lui permet d'être lancé en mode Secure Boot sur toutes les cartes mères PC d'origine.
Shim contient un certificat Fedora intégré (car il est extrait du référentiel Fedora). Si Secure Boot est activé, puisque grubx64.efi n'est pas signé avec le certificat Fedora intégré, shim démarre un autre exécutable, MokManager.efi, qui est un logiciel spécial de gestion de clés shim. MokManager demande à l'utilisateur de poursuivre le processus d'inscription de clé ou de hachage.
Les versions plus récentes de shim installent des hooks pour les fonctions UEFI LoadImage, StartImage, ExitBootServices et Exit afin de « renforcer les chargeurs de démarrage non participants », qui doivent être contournés pour ce cas d'utilisation de disque. Le shim de Fedora n'installe pas de politiques de sécurité UEFI personnalisées, c'est pourquoi il n'est pas possible de charger des fichiers efi auto-signés à partir du chargeur de démarrage de deuxième étape, même si vous ajoutez leurs hachages ou certificats à l'aide de MokManager.
Etape 2 : preloader est un logiciel similaire à shim. Il effectue également une validation exécutable et charge le prochain fichier efi. Le préchargeur inclus dans ce disque est une version allégée qui ne remplit qu'une seule fonction : installer la politique de sécurité UEFI autorisant tout. Cela permet le chargement d'exécutables efi arbitraires avec les fonctions UEFI LoadImage/StartImage même en dehors de GRUB (par exemple, dans UEFI Shell) et contourne le durcissement des cales.
Étape 3 : GRUB2 est un chargeur de démarrage universel bien connu. Il a été corrigé pour charger le noyau Linux sans vertification supplémentaire (commandes Linux/linuxefi), charger les binaires .efi en mémoire et accéder à son point d'entrée (commande chainloader), et pour imiter le « chargeur de démarrage participant » pour shim.
Lisez mon article sur ce sujet : Exploiter les chargeurs de démarrage signés pour contourner le démarrage sécurisé UEFI (également disponible en russe)
Super UEFIinSecureBoot Disk GRUB2 définit la variable suisbd=1
. Il pourrait être utilisé pour détecter le GRUB2 corrigé du disque dans un grub.conf
partagé entre plusieurs chargeurs de démarrage.
Depuis la version 3, GRUB utilise le chargeur de fichiers UEFI .efi d'origine, car il existe quelques problèmes avec l'implémentation du chargeur interne. Pour utiliser le chargeur interne, ajoutez set efi_internal_loader=1
dans le fichier de configuration GRUB. Les deux méthodes peuvent charger des fichiers .efi non fiables.