Vulnérabilité critique dans le chargeur de démarrage GRUB2 qui vous permet de contourner le démarrage sécurisé UEFI

Dans le chargeur de démarrage GRUB2 identifié 8 vulnérabilités. Le plus dangereux problème (CVE-2020-10713), dont le nom de code est BootHole, donner une chance contournez le mécanisme de démarrage sécurisé UEFI et installez des logiciels malveillants non vérifiés. La particularité de cette vulnérabilité est que pour l'éliminer, il ne suffit pas de mettre à jour GRUB2, puisque l'attaquant peut utiliser un support de démarrage avec une ancienne version vulnérable certifiée par une signature numérique. Un attaquant peut compromettre le processus de vérification non seulement de Linux, mais également d'autres systèmes d'exploitation, notamment Windows.

Le problème ne peut être résolu qu'en mettant à jour le système liste de révocation de certificats (dbx, UEFI Revocation List), mais dans ce cas, la possibilité d'utiliser l'ancien support d'installation avec Linux sera perdue. Certains fabricants d'équipements ont déjà inclus une liste mise à jour des certificats de révocation dans leur firmware ; sur ces systèmes, seules les versions mises à jour des distributions Linux peuvent être chargées en mode UEFI Secure Boot.

Pour éliminer la vulnérabilité des distributions, vous devrez également mettre à jour les installateurs, les chargeurs de démarrage, les packages du noyau, le micrologiciel fwupd et la couche de calage, en générant de nouvelles signatures numériques pour eux. Les utilisateurs devront mettre à jour les images d'installation et autres supports de démarrage, ainsi que charger une liste de révocation de certificats (dbx) dans le micrologiciel UEFI. Avant de mettre à jour dbx vers UEFI, le système reste vulnérable quelle que soit l'installation de mises à jour dans le système d'exploitation.

La vulnérabilité causé un débordement de tampon qui peut être exploité pour exécuter du code arbitraire pendant le processus de démarrage.
La vulnérabilité se produit lors de l'analyse du contenu du fichier de configuration grub.cfg, qui se trouve généralement dans l'ESP (EFI System Partition) et peut être modifié par un attaquant disposant de droits d'administrateur sans violer l'intégrité du shim signé et des fichiers exécutables GRUB2. À cause de Erreurs dans le code de l'analyseur de configuration, le gestionnaire des erreurs d'analyse fatales YY_FATAL_ERROR a uniquement affiché un avertissement, mais n'a pas terminé le programme. Le risque de vulnérabilité est réduit par la nécessité d'un accès privilégié au système ; cependant, le problème peut être nécessaire pour introduire des rootkits cachés s'il existe un accès physique à l'équipement (s'il est possible de démarrer à partir de votre propre support).

La plupart des distributions Linux utilisent un petit couche de cale, signé numériquement par Microsoft. Cette couche vérifie GRUB2 avec son propre certificat, ce qui permet aux développeurs de distribution de ne pas faire certifier chaque noyau et chaque mise à jour GRUB par Microsoft. La vulnérabilité permet, en modifiant le contenu de grub.cfg, d'exécuter votre code après une vérification de shim réussie, mais avant de charger le système d'exploitation, de s'insérer dans la chaîne de confiance lorsque le mode Secure Boot est actif et d'obtenir un contrôle total. sur la suite du processus de démarrage, y compris le chargement d'un autre système d'exploitation, la modification des composants du système d'exploitation et le contournement de la protection Lockdown.

Vulnérabilité critique dans le chargeur de démarrage GRUB2 qui vous permet de contourner le démarrage sécurisé UEFI

Autres vulnérabilités dans GRUB2 :

  • CVE-2020-14308 — débordement de tampon dû au manque de vérification de la taille de la zone mémoire allouée dans grub_malloc ;
  • CVE-2020-14309 - un débordement d'entier dans grub_squash_read_symlink, pouvant conduire à l'écriture de données au-delà du buffer alloué ;
  • CVE-2020-14310 - débordement d'entier dans read_section_from_string, pouvant conduire à l'écriture de données au-delà du buffer alloué ;
  • CVE-2020-14311 - un débordement d'entier dans grub_ext2_read_link, pouvant conduire à l'écriture de données au-delà du buffer alloué ;
  • CVE-2020-15705 — vous permet de charger des noyaux non signés lors du démarrage direct en mode Secure Boot sans couche de calage ;
  • CVE-2020-15706 — accès à une zone mémoire déjà libérée (use-after-free) lors de la redéfinition d'une fonction au moment de l'exécution ;
  • CVE-2020-15707 — débordement d'entier dans le gestionnaire de taille initrd.

Des mises à jour du pack de correctifs ont été publiées pour Debian, Ubuntu, RHEL и SUSE. Pour GRUB2 suggéré ensemble de correctifs.

Source: opennet.ru

Ajouter un commentaire