Wie Apple Silicon macOS sicherer starten lässt
Zu Classic-Zeiten war das Macintosh-Betriebssystem so Drag & Drop wie nur irgend möglich: Systemerweiterungen und Kontrollfelder zog man in die entsprechenden Ordner; nach einem Neustart waren die Änderungen wirksam. Um eine Systemkopie von einem anderen Laufwerk die Starterlaubnis zu erteilen, "segnete" man es durch Herüberziehen des Systemkoffers. Das bedeutete allerdings auch, dass sich das Mac-Betriebssystem äußerst leicht böswillig verändern ließ. Seit der Jahrtausendwende arbeitete Apple kontinuierlich daran, den Nachfolger Mac OS X (und später macOS) gleichzeitig abzusichern und komfortabel zu halten. Die Produktion eigener Prozessoren erleichterte den Fortschritt dabei. Im
sechsten Teil seiner Artikelreihe zu Apple Silicon zeichnet Howard Oakley die Entwicklung des Startvorgangs in den letzten Jahren nach.
Am Anfang steht eine Kette aufeinanderfolgender Überprüfungen: Das Boot ROM überprüft die Integrität des Low-Level Bootloaders, dieser wiederum betätigt die Authentizität der Firmware – bei Macs "iBoot" genannt. iBoot nimmt sich dann den aktuellen Schnappschuss des macOS-Betriebssystems vor und überprüft daraufhin dessen Identität, bevor dessen Kernel das signierte Systemvolume (SSV) startet. Bestimmte wichtige, aber separat veränderliche Systembestandteile, etwa Safari, verwahrt macOS seit Version 13 (Ventura) jeweils in einem verschlüsselten und signierten virtuellen Laufwerk (
Cryptex). Diese werden separat überprüft und geladen.
So verläuft, stark vereinfacht, die Verifizierungskette beim Start von macOS.
Externe Startlaufwerke sind erlaubtMit dem Wechsel auf Apple Silicon konnte Apple einige Sicherheitsfeatures von iOS ins Mac-Betriebssystem integrieren – namentlich die Secure Enclave. Dieser ursprünglich zur lokalen Erkennung des Fingerabdrucks im iPhone 5s eingeführte Koprozessor hat seine eigene Firmware und führt sicherheitsrelevante Systemaufgaben in einer mehrfach abgesicherten Umgebung durch. Auf Macs mit M-Prozessor ermöglicht er, macOS von externen Laufwerken ohne Sicherheitseinbußen zu starten. Apple hatte bei den letzten Intel-Macs den T2-Koprozessor eingebaut, der ähnliche Funktionen übernahm. Der erlaubt das Starten von externen Laufwerken nur mit reduzierter Sicherheit, Anwender müssen dies darum im
Startsicherheitsdienstprogramm explizit einschalten. Diese Einschränkung fällt auf ARM-Macs weg, das Hilfsprogramm verschwand ersatzlos. Die ersten Komponenten des Systemstarts erfordern allerdings auch beim M-Mac ein funktionierendes macOS auf der internen SSD.
Die Secure Enclave ist ein spezieller, besonders gesicherter Bereich auf Apple Silicon. Quelle:
Apple Kernel-Erweiterungen bleiben auf der StreckeDie erhöhte Sicherheit gegenüber nachträglichen Veränderungen forderte ihren Tribut: Durch die nahtlos nachweisbare Integrität von macOS war kein Platz mehr für Kernel-Erweiterungen (kexts). Ein in der Form modifiziertes macOS lässt sich nicht mehr lückenlos überprüfen, weshalb macOS ihre Installation nur noch akzeptiert, wenn man im Wiederherstellungsmodus die
System Integrity Protection deaktiviert. Die Funktion ist mit Absicht gut versteckt und auf die Kommandozeile beschränkt – Apple empfiehlt dies nur noch für Testzwecke. Stattdessen mögen Entwickler doch die Frameworks "DriverKit" und "SystemExtension" verwenden. Damit sollen systemnahe Funktionen im "Userspace" möglich sein, also ohne Systemprivilegien.