Comment activer les extensions du noyau sur votre Mac avec Apple Silicon

Si vous souhaitez que les extensions du noyau fonctionnent malgré tout, vous devez les autoriser en modifiant la politique de sécurité de votre Mac via macOS Recovery. Voici comment procéder.

À partir de macOS 11, si les extensions de noyau tierces (kexts) sont activées, elles ne peuvent pas être chargées dans le noyau à la demande. Au lieu de cela, il est intégré à la suite auxiliaire du noyau (AuxKC), qui est chargée pendant le processus de démarrage. Pour les ordinateurs Mac avec Apple Silicon, le compteur AuxKC est enregistré dans LocalPolicy (sur les machines antérieures, AuxKC est situé sur le volume de données). La reconstruction d'AuxKC nécessite le consentement de l'utilisateur, le redémarrage de macOS pour télécharger les modifications dans le noyau et nécessite la configuration de Secure Boot à un niveau de sécurité faible. Vérifier Comment corriger une erreur d'utilisation élevée du processeur à partir de kernel_task.

Comment activer les extensions du noyau sur un Mac avec Apple Silicon - Mac

Important: L'exécution de Kexts pour macOS n'est plus recommandée. Kexts met en péril l'intégrité et la fiabilité du système d'exploitation, et Apple conseille aux utilisateurs de sélectionner des solutions qui ne nécessitent pas d'extension du noyau.

Extensions de noyau sur Mac avec Apple Silicon

Kexts doit être explicitement activé pour les ordinateurs Mac équipés d'Apple Silicon en appuyant sur le bouton d'alimentation au démarrage pour passer en mode One True Recovery (1TR), puis revenir au verrouillage bas et cocher la case pour activer les extensions du noyau. Cette procédure nécessite également que vous saisissiez le mot de passe administrateur pour autoriser la rétrogradation. La combinaison des exigences 1TR et de mot de passe rend difficile pour les attaquants utilisant uniquement des logiciels à partir de macOS d'entrer des kexts dans macOS, qu'ils peuvent ensuite exploiter pour obtenir des privilèges de noyau.

Une fois que l'utilisateur a autorisé le chargement des kexts, le chargement des extensions du noyau approuvées par l'utilisateur ci-dessus est utilisé pour permettre l'installation des kexts. L'autorisation utilisée pour le flux ci-dessus est également utilisée pour capturer le hachage SHA384 d'une liste de kext approuvée par l'utilisateur (UAKL) dans LocalPolicy. Le programme de gestion du noyau (kmd) est chargé de valider les kexts dans UAKL pour les inclure dans AuxKC.

Étape 1. Entrez la récupération macOS

Vous devez commencer par accéder à macOS Recovery sur votre Mac avec Apple Silicon.

  • Éteignez votre Mac.
  • Redémarrez-le, mais maintenez le bouton d'alimentation enfoncé jusqu'à ce que vous voyiez le chargement des options de démarrage clignoter à l'écran.
  • Attendez d'atteindre l'écran des options de démarrage.
  • Sélectionner Option -> Continuer.
  • Sélectionnez le compte administrateur Mac et entrez le mot de passe pour télécharger macOS Recovery.

Étape 2. Autoriser les extensions du noyau

Dans macOS Recovery, utilisez l'outil de sécurité au démarrage pour autoriser les extensions de noyau sur votre Mac.

  • Sélectionner "Utilitaires" -> "Outil de sécurité au démarrage" Dans la barre de menus.
  • Sélectionnez votre disque de démarrage et sélectionnez le bouton Politique de sécurité.
  • Sélectionnez le bouton radio à côté de Sécurité faible. Ensuite, cochez la case à côté de Autoriser la gestion des utilisateurs des extensions de noyau des développeurs sélectionnés.
  • Sélectionner Ok.
  • Lorsque vous êtes invité à vous authentifier, cliquez sur Entrer le mot de passe macOS, puis choisissez un compte administrateur et entrez son mot de passe. Alors choisi Continuer.
  • Ouvrez le menu Pomme et sélectionnez Redémarrer , et laissez le Mac fonctionner normalement.

Comment activer les extensions du noyau sur un Mac avec Apple Silicon - Mac

Étape 3. Activer les extensions du noyau

Pour activer un fichier kext installé avec un programme, utilisez l'application Préférences système Mac.

  • Ouvrez l'application Préférences Système et sélectionnez Sécurité et confidentialité.
  • Sélectionnez l'icône de verrouillage et entrez le mot de passe administrateur Mac.
  • Sélectionner Autoriser.
  • Sélectionner Redémarrer.
  • Attendez que votre Mac ait fini de redémarrer.

Alternatives à Kext

macOS 10.15 permet aux développeurs d'étendre les capacités de macOS en installant et en gérant des extensions système qui s'exécutent dans l'espace utilisateur plutôt qu'au niveau du noyau. En s'exécutant dans l'espace utilisateur, les extensions système augmentent la stabilité et la sécurité de macOS. Bien que les kext aient intrinsèquement un accès complet à l'ensemble du système d'exploitation, les extensions s'exécutant dans l'espace utilisateur ne reçoivent que les privilèges nécessaires pour remplir leur fonction spécifique.

Les développeurs peuvent utiliser des frameworks tels que DriverKit, EndpointSecurity et NetworkExtension pour écrire des pilotes USB, des interfaces humaines, des outils de sécurité des terminaux (tels que DLP ou d'autres proxys de terminaux), des VPN et des outils réseau, le tout sans avoir à écrire des kexts. Les agents de sécurité tiers ne doivent être utilisés que s'ils utilisent ces API ou s'ils disposent d'une feuille de route robuste pour migrer vers et depuis les extensions du noyau. Vérifier Comment configurer un mot de passe de micrologiciel pour sécuriser votre Mac.

 

Activez simplement les Kext auxquels vous faites confiance

Les extensions du noyau peuvent mettre en danger la sécurité de votre Mac, alors activez-les uniquement auprès de développeurs en qui vous avez confiance. Si vous avez des doutes sur un kext particulier, vous ne devez pas le laisser fonctionner. Lorsque vous avez fini d'utiliser kexts, c'est une bonne idée d'annuler les modifications que vous avez apportées ici pour rétablir la politique de sécurité de votre Mac. Vous pouvez désormais visualiser Quelles sont les autorisations de sécurité et de confidentialité protégées par MacOS?

source
Aller au bouton supérieur