Une attaque « BootHole » touche les systèmes Windows et Linux utilisant GRUB2 et Secure Boot
Une nouvelle vulnérabilité est apparue au niveau d’un élément central de Secure Boot. L’apparition de cette faille inédite devrait pousser Microsoft, Red Hat, Cononical, SuSE, Oracle, VMWare, Citrix et plusieurs OEM à publier rapidement des correctifs afin de faire face à l’attaque surnommée BootHole.
La vulnérabilité nommée BootHole permettrait aux attaquants d’altérer le processus précédant le démarrage du système d’exploitation (OS). Le processus est basé sur des composants nommés « bootloaders » chargeant le microprogramme (firmware) de l’ensemble des composants matériels de l’ordinateur sur lesquels le système d’exploitation fonctionne.
BootHole est une faille dans GRUB2, un des composants les plus connus du bootloader. GRUB2 s’utilise comme un chargeur d’amorçage pour toutes les principales distributions Linux, mais peut aussi être utilisé pour les systèmes Windows, macOS et BSD.
La faille de BootHole a été découverte par un groupe de chercheurs en sécurité chez Eclypsium. Ces derniers affirment que BootHole permet aux attaquants d’altérer le composant CRUB2 afin d’insérer et exécuter du code malveillant pendant le processus de démarrage, permettant ainsi aux attaquants d’insérer du code qui leur permet de contrôler entièrement le système d’exploitation, lancé en amont.
D’après Eclypsium, la vulnérabilité BootHole se situe dans le fichier de configuration grub.cfg, qui est séparé du composant GRUB2, où le chargeur d’amorçage extrait les paramètres dédiés au système. Les attaquants ont la possibilité de modifier les valeurs de ce fichier afin de déclencher un dépassement de tampon (overflowing) à l’intérieur du composant GRUB2 lorsqu’il lit le fichier à chaque démarrage du système d’exploitation.
Afin d’aggraver la situation, Eclypsium affirme qu’une attaque par BootHole fonctionne aussi lorsque les serveurs ou les stations de travail ont la fonction « Secure Boot » activée. Cette fonction est un processus dans lequel l’ordinateur ou le serveur utilise des contrôles cryptographies pour s’assurer que le processus de démarrage ne charge que des composants de firmware signés cryptographiquement.
Eclypsium a indiqué que l’attaquant nécessite un accès administrateur pour avoir la possibilité de modifier le fichier grub.cfg. Cependant, ceci ne représente pas vraiment une limite car les systèmes d’exploitation et leurs composants sont remplis de bugs d’élévation de privilèges qui pourraient être exploités dans une attaque BootHole pour permettre aux logiciels malveillants d’obtenir un accès administrateur et de modifier le fichier grub.cfg.