★ Erst die Secure Enclave, nun die Secure Exclave: Wie funktioniert Apples neueste Innovation?
Mit TouchID führte Apple die sog. »Secure Enclave« ein, also einen besonders geschützten Bereich im Prozessor, der sensible Daten geheim hält. Nun führt Apple eine weitere Technologie ein, die sehr ähnlich klingt: Die Secure Exclave schützt Kamerabilder und Mikrofonaufnahmen davor, von außen gekapert zu werden. Dadurch werden Geräte wie der »HomeView« möglich, die nonstop die Kamera und das Mikrofon verwenden. Dieser Beitrag erklärt, warum es laut Apple nicht möglich sein soll, diese Daten zu klauen.
Stellen wir uns folgendes Szenario vor: Anna kommt in die Küche. Auf dem gemeinsam genutzten HomeView erscheinen ihre nächsten Termine. Kurz darauf startet sie einen FaceTime-Anruf mit Video, und die Kamera-LED leuchtet auf. Die Kamera hat in beiden Momenten Bilder geliefert. Beim ersten Mal hat HomeView sie in einem geschützten Bereich ausgewertet, sodass die Bilder nicht für weitere Systemdienste (oder gar Apps) sichtbar wurden. Beim zweiten Mal, beim FaceTime-Anruf erhält die FaceTime-App tatsächlich die Bilder für das Gespräch. Es gibt also zwei Betriebsarten.
HomeView auf einer Kommode · Apple
HomeView kann laut Apple bis zu sechs Personen erkennen. Damit der Kalender in Annas Beispiel erscheint, muss HomeView sie am Gesicht erkennen. Ihr gekoppeltes iPhone oder iPad ist in diesem Fall im selben WLAN und wurde kürzlich entsperrt.
Was Touch ID mit HomeView verbindet
Wer sich mit Touch ID in einer App ausweist, nutzt ein ähnliches Prinzip wie bei der Personenerkennung auf HomeView. Die App fragt einen geschützten Bereich, ob der Fingerabdruck zum hinterlegten Muster passt. Sie bekommt das Ergebnis der Prüfung. Der Scan gelangt verschlüsselt zur Secure Enclave.
Bei Touch ID übernimmt die Secure Enclave den Abgleich des Fingerabdrucks.
Wie die Secure Enclave Touch ID schützt
Beim eingebauten Touch-ID-Sensor verschlüsselt der Sensor den Fingerabdruckscan, bevor er ihn verschickt. Den Schlüssel für diese Übertragung handeln der Sensor und die Secure Enclave untereinander aus. Der Hauptprozessor reicht das verschlüsselte Paket weiter. Selbst wer macOS unter Kontrolle bringt und dort mitliest, sieht auf diesem Weg nur verschlüsselte Daten.
Die Secure Enclave entschlüsselt den Scan und prüft dabei, ob er vom zugehörigen Sensor stammt und unverändert angekommen ist. Erst danach gleicht ihr eigener Prozessor den Scan mit dem hinterlegten Muster ab. Eine eigene Hardwareschaltung schützt auch ihren Teil des Arbeitsspeichers. Sie verschlüsselt Daten beim Schreiben und prüft sie beim Lesen auf Veränderungen. Für die Touch-ID-Abfrage gibt die Enclave nur das Prüfergebnis an das Hauptsystem zurück.
Blau führt der verschlüsselte Scan zur Secure Enclave, pink geht das Prüfergebnis zurück. Rechts ist der geschützte Speicherzugriff eingezeichnet.
Eigener Prozessor und gemeinsam genutzte Kerne
Die Secure Enclave hat einen eigenen Sicherheitsprozessor im Apple-Chip. Die Secure Exclaves nutzen dieselben Hauptprozessorkerne wie das gewöhnliche Betriebssystem. Sie laufen dort in einer abgeschirmten Umgebung namens exclaveOS. So können sie für die Auswertung von Bild und Ton die Rechenleistung des Hauptprozessors und der Neural Engine nutzen.
Links der separate Sicherheitsprozessor in Pink. Rechts stehen die Ebenen für zwei Ausführungskontexte auf denselben Kernen.
Wer den Zugriff auf den Speicher kontrolliert
Ein Kamerabild von HomeView liegt in einem Bereich des Arbeitsspeichers, der für die Kamera-Exclave reserviert ist. Solange ein Prozessorkern den Code der Kamera-Exclave ausführt, kann dieser Code das Bild dort lesen. Wechselt derselbe Kern zurück zum Hauptbetriebssystem, gelten dessen Zugriffsrechte. Versucht das Hauptsystem, das Bild aus diesem Speicherbereich zu lesen, blockiert die Chip-Hardware den Zugriff.
Derselbe Prozessorkern in zwei Situationen. Die pink markierten Speicherbereiche sind für die Secure Exclave reserviert.
Was hält einen Angreifer davon ab, sich selbst Zugriff zu geben? Dafür müsste er die Speichertabellen ändern, in denen die erlaubten Speicherbereiche stehen. Bei Apple verwaltet diese Tabellen eine eigene Systemkomponente, der Secure Page Table Monitor. Der Kern des Hauptbetriebssystems muss Änderungen dort beantragen. Der Monitor prüft sie und verweigert dem Hauptsystem Zugriff auf den privaten Exclave-Speicher.
Der Monitor läuft in einem eigenen Modus, den die Chip-Hardware vor dem Betriebssystemkern schützt. Selbst ein Angreifer, der diesen Kern übernommen hat, bleibt deshalb an die Speicherregeln gebunden.
Der Schutz reicht über die Prozessorkerne hinaus. Hardwarefilter sichern auch Zugriffe auf den Sensorspeicher und die geschützten Warteschlangen der Neural Engine ab. Eine festgelegte Schnittstelle bestimmt, welche Informationen die Exclaves an das Hauptsystem weitergeben dürfen.
Was HomeView von einer Person erfährt
Wenn Anna vor HomeView tritt, sucht die Kamera-Exclave in den laufenden Bildern nach Gesichtern. Andere Exclaves bereiten die Mikrofondaten auf. Die Neural Engine berechnet Merkmale aus Gesicht und Stimme. Der Abgleich mit hinterlegten Profilen findet im geschützten Bereich statt. Die Rohdaten bleiben währenddessen abgeschirmt und werden nach der Auswertung verworfen.
Schon während der Analyse kann das Hauptsystem einen Hinweis auf mögliche Anwesenheit erhalten. Das fertige Erkennungsergebnis umfasst eine Personenkennung, eine Position und einen Wert dafür, wie sicher die Zuordnung ist. Damit kann das Hauptsystem entscheiden, wessen Inhalte es anzeigt, sofern die Voraussetzungen für persönliche Inhalte erfüllt sind.
Bild und Ton bleiben im geschützten Bereich. Das Hauptsystem erhält das Erkennungsergebnis.
Was die Kamera-LED anzeigt
Beim FaceTime-Anruf mit Video braucht die App die Kamerabilder selbst. Eine dafür zuständige Exclave steuert die LED direkt. Nach Apples Beschreibung prüft sie, ob die Leuchte hell genug und ausreichend lange sichtbar ist, bevor sie die Bilder freigibt. Das Betriebssystem soll diese Kopplung auch dann nicht umgehen können, wenn es angegriffen wurde.
Die Kamera-LED zeigt bei HomeView also an, wann der Bildstrom für eine aktive Nutzung freigegeben ist. Bei der Personenerkennung kann sie dunkel bleiben, während die Exclaves die Kamerabilder auswerten.
Die leuchtende Kameraanzeige signalisiert die Freigabe des Bildstroms.
Fazit
HomeView kann Annas Kalender anzeigen, weil dem Hauptsystem das Ergebnis der Personenerkennung genügt. Die Secure Exclaves werten dafür Bild und Ton auf denselben Prozessorkernen aus wie das Hauptsystem. Die Rohdaten (Bild und Ton) bleiben dabei in einem abgeschirmten Speicherbereich. Startet Anna einen FaceTime-Anruf mit Video, muss erst die Kamera-LED sichtbar leuchten. Dann gibt eine Exclave den Bildstrom für die App frei. Die Daten sind dann nutzbar, aber Anna sieht deutlich anhand der LED, dass dies geschieht.