Processus de démarrage d’un Mac avec processeur Intel
Mac avec processeur Intel et puce T2 Security d’Apple
Lorsqu’un ordinateur Mac avec processeur Intel et puce T2 Security d’Apple est allumé, la puce effectue un démarrage sécurisé à partir de sa mémoire morte d’amorçage tout comme sur iPhone, iPad et les Mac avec puce Apple. Ce processus valide le chargeur de démarrage iBoot. Il s’agit de la première étape de la chaîne de confiance. iBoot vérifie le code du noyau et de l’extension du noyau sur la puce T2, qui vérifie ensuite le programme interne Intel UEFI. Celui-ci ainsi que la signature associée sont d’abord accessibles uniquement par la puce T2.
Après vérification, l’image du programme interne UEFI est associée à une partie de la mémoire de la puce T2. Cette mémoire est mise à la disposition du processeur Intel par le bus d’interface périphérique série améliorée (eSPI). Lorsque le processeur Intel démarre, il récupère le programme interne UEFI par l’eSPI à partir de la copie du programme interne associée à la mémoire dont l’intégrité a été vérifiée qui se trouve sur la puce T2.
L’évaluation de la chaîne de confiance se poursuit sur le processeur Intel : le programme interne UEFI évalue la signature pour boot.efi, qui est le chargeur d’amorçage de macOS. Les signatures de démarrage sécurisé macOS logées dans le processeur Intel sont stockées dans le même format Image4 que celui du démarrage sécurisé d’iOS, d’iPadOS et de la puce T2, et le code qui analyse les fichiers Image4 est le même que le code durci de l’implémentation de démarrage sécurisé actuelle d’iOS et d’iPadOS. Boot.efi vérifie ensuite la signature d’un nouveau fichier appelé immutablekernel. Lorsque le démarrage sécurisé est activé, le fichier immutablekernel représente l’ensemble complet des extensions du noyau Apple requises pour démarrer macOS. La règle de démarrage sécurisé prend fin avec le passage au fichier immutablekernel, puis les règlements de sécurité macOS (comme la protection de l’intégrité du système et les extensions du noyau) prennent effet.
En cas d’erreur ou d’échec de ce processus, le Mac lance le mode de récupération, le mode de récupération de la puce T2 Security d’Apple ou le mode DFU (Device Firmware Upgrade, mise à niveau du programme interne de l’appareil) de la puce T2 Security d’Apple.
Microsoft Windows sur un Mac avec processeur Intel et puce T2
Par défaut, un Mac avec processeur Intel qui prend en charge le démarrage sécurisé ne fait confiance qu’au contenu signé par Apple. Cependant, pour améliorer la sécurité des installations Boot Camp, Apple prend également en charge le démarrage sécurisé de Windows. Le programme interne UEFI (Unified Extensible Firmware Interface, interface micrologicielle extensible unifiée) comprend une copie de l’autorité de certification « Microsoft Windows Production CA 2011 » utilisée pour authentifier les chargeurs d’amorçage Microsoft.
Remarque : Aucune confiance n’est actuellement accordée à l’autorité de certification « Microsoft Corporation UEFI CA 2011 », qui permettrait la vérification du code signé par les partenaires de Microsoft. Cette autorité de certification est couramment utilisée pour vérifier l’authenticité des chargeurs d’amorçage d’autres systèmes d’exploitation comme les variantes de Linux.
La prise en charge du démarrage sécurisé de Windows n’est pas activée par défaut. Elle est plutôt activée à l’aide d’Assistant Boot Camp. Lorsqu’un utilisateur lance Assistant Boot Camp, macOS est reconfiguré pour faire confiance au code signé directement par Microsoft. Une fois qu’Assistant Boot Camp a terminé la configuration, si macOS échoue à l’évaluation de confiance directe d’Apple pendant le démarrage sécurisé, le programme interne UEFI tente d’évaluer le degré de confiance de l’objet selon le formatage du démarrage sécurisé UEFI. Si l’évaluation de confiance réussit, le Mac poursuit le démarrage de Windows. Sinon, le Mac démarre recoveryOS et informe l’utilisateur de l’échec de l’évaluation de confiance.
Ordinateurs Mac avec processeur Intel sans puce T2
Un ordinateur Mac avec processeur Intel sans puce T2 ne prend pas en charge le démarrage sécurisé. Par conséquent, le programme interne UEFI (Unified Extensible Firmware Interface, interface micrologicielle extensible unifiée) charge le démarreur macOS (boot.efi) à partir du système de fichiers sans vérification, puis le démarreur charge le noyau (prelinkedkernel) à partir du système de fichiers sans vérification. Afin de protéger l’intégrité de la chaîne de démarrage, les utilisateurs devraient activer les mécanismes de sécurité suivants :
Protection de l’intégrité du système (SIP) : Activée par défaut, cette option protège le démarreur et le noyau contre des écritures malveillantes depuis l’intérieur d’un macOS actif.
FileVault : Cette fonction peut être activée de deux façons : par l’utilisateur ou par un administrateur de la gestion des appareils mobiles (GAM). Elle assure une protection contre un assaillant physiquement présent qui utiliserait le mode disque cible pour remplacer le démarreur.
Mot de passe du programme interne : Cette fonction peut être activée de deux façons : par l’utilisateur ou par un administrateur de la GAM. Elle veille à empêcher un assaillant physiquement présent de lancer d’autres modes de démarrage, comme recoveryOS, le mode Utilisateur unique ou le mode disque cible, à partir desquels il pourrait remplacer le démarreur. Elle contribue également à prévenir le démarrage à partir d’autres supports que l’assaillant pourrait utiliser pour exécuter un code et ainsi remplacer le démarreur.