Sécurité de DriverKit pour macOS
DriverKit est le cadre d’application qui permet aux développeurs de créer des pilotes de périphérique que l’utilisateur installe sur son Mac. Les pilotes conçus avec DriverKit s’exécutent dans l’espace utilisateur plutôt qu’en tant qu’extensions du noyau, ce qui améliore la sécurité et la stabilité du système. Cela facilite l’installation tout en renforçant la stabilité et la sécurité de macOS.
L’utilisateur n’a qu’à télécharger l’app (aucun programme d’installation n’est requis avec les extensions système ou DriverKit), et l’extension est activée seulement lorsque nécessaire. Dans plusieurs cas, cela évite d’utiliser des extensions de noyau dont l’installation dans /System/Library ou /Library nécessite des privilèges d’administrateur.
Nous conseillons aux administrateurs de TI qui utilisent des pilotes de périphérique, des solutions de stockage infonuagique, des réseaux ou des apps de sécurité qui requièrent des extensions de noyau de passer à des versions plus récentes dotées d’extensions système. Ces versions plus récentes réduisent grandement les risques d’erreurs graves du noyau sur Mac, mais aussi la surface d’attaque. Les nouvelles extensions, qui s’exécutent dans l’environnement utilisateur, ne requièrent aucun privilège pour leur installation et sont automatiquement retirées lorsque le groupe d’apps est placé dans la corbeille.
Le cadre DriverKit offre des classes C++ pour les services entrée/sortie, la correspondance d’appareils, les descripteurs de mémoire et les files de transmission. Il définit également les types d’entrée/sortie appropriés pour les numéros, les collectes, les chaînes et d’autres types communs. L’utilisateur s’en sert avec les cadres de pilotes propres à la famille comme USBDriverKit et HIDDriverKit. Utilisez le cadre d’application Extensions système pour installer et mettre à niveau un pilote.