Apple Security Research Device
Das Apple Security Research Device ist ein iPhone für die Sicherheitsforschung, das mit speziellen Sicherungsschaltungen ausgestattet ist („specially fused“). Das iPhone ermöglicht es Sicherheitsforschern, Forschungsarbeiten an und mit iOS vorzunehmen, ohne sich über die Sicherheitsfunktionen der Plattform hinwegzusetzen oder sie zu deaktivieren. Das Gerät erlaubt es Forschern, Sideload-Inhalte zu verwenden und mit Berechtigungen auszuführen, die denen der Plattform gleichkommen, und so Forschungsarbeiten auf einer Plattform durchzuführen, die Produktionsgeräte genauer nachbildet.
Damit sichergestellt ist, dass die Benutzergeräte nicht durch die für die Sicherheitsforschung geltende Ausführungsrichtlinie beeinträchtigt werden, werden Richtlinienänderungen in einer Variante von iBoot und in der Boot Kernel-Sammlung implementiert. Sie lassen sich nicht auf der Benutzerhardware starten. Das für die Forschung konzipierte iBoot-Objekt prüft, ob ein neuer „Fusing“- oder Schaltungsstatus vorliegt, und startet eine Schleife, die eine kritische Situation signalisiert, wenn es auf Hardware ausgeführt wird, die nicht über für Forschung ausgestattete Sicherungsschaltungen verfügt.
Das cryptex-Subsystem erlaubt es einem Forscher, einen personalisierten Cache für die Vertrauensstellung („Trust Cache“) und eine Image-Datei mit entsprechendem Inhalt zu laden. Damit sichergestellt ist, dass dieses Subsystem nicht auf Benutzergeräten ausgeführt werden kann, wurde eine Reihe tiefgreifender Schutz- und Abwehrmaßnahmen implementiert:
launchd
lädt nicht die launchd-Eigenschaftsliste voncryptexd
, wenn ein normales Kundengerät erkannt wird.cryptexd
bricht ab, wenn ein normales Kundengerät erkannt wird.AppleImage4
gibt die Nonce nicht weiter, die für die Überprüfung eines Forschungs-Cryptex auf einem normalen Kundengerät verwendet wird.Der Signierungsserver verweigert das Personalisieren einer für cryptex konzipierten Image-Datei, wenn das betreffende Gerät nicht in einer expliziten Positivliste enthalten ist.
Damit die Privatsphäre des Sicherheitsforschers gewahrt bleibt, werden im Zuge der Personalisierung nur die Kennzahlen (z. B. Hashes) der ausführbaren Objekte oder des Kernel-Caches und die Kennungen (IDs) des für die Sicherheitsforschung genutzten Geräts an Apple gesendet. Der auf dem Gerät geladene cryptex-Inhalt wird nicht an Apple übermittelt.
Das für die Sicherheitsforschung konzipierte Gerät weist diverse Unterschiede gegenüber anderen Geräten auf. Sie sollen vermeiden, dass Außenstehende in böswilliger Absicht versuchen, ein Forschungsgerät als Benutzergerät auszugeben und eine Person dahingehend zu täuschen, dass es für den alltäglichen Gebrauch nutzbar ist. Diese Unterschiede sind:
Das für die Sicherheitsforschung konzipierte Gerät kann nur gestartet werden, solange seine Batterie geladen wird. Dies kann über ein Lightning-Kabel oder ein Qi-Ladegerät erfolgen. Wenn beim Starten des Geräts die Batterie aktuell nicht geladen wird, wird das Gerät in den Wiederherstellungsmodus versetzt. Wenn der Benutzer das Gerät neu startet, solange die Batterie geladen wird, wird der normale Startvorgang ausgeführt. Sobald XNU gestartet wurde, muss das Gerät für den weiteren Betrieb nicht länger geladen werden.
Während des iBoot-Startvorgangs wird „Security Research Device“ unter dem Apple-Logo eingeblendet.
Der XNU-Kernel wird im Modus „Verbose“ gestartet.
Das Gerät wird seitlich mit einer Beschriftung versehen: „Property of Apple. Confidential and Proprietary. Call +1 877 595 1125.”
Die folgenden zusätzlichen Maßnahmen werden in der nach dem Startvorgang erscheinenden Software implementiert:
Während der Konfiguration des Geräts wird „Security Research Device“ angezeigt.
„Security Research Device“ wird auf dem Sperrbildschirm und in der App „Einstellungen“ angezeigt.
Das für die Sicherheitsforschung konzipierte Gerät erlaubt einem Forscher Tätigkeiten, die bei einem Benutzergerät nicht möglich sind. Sie können:
Sideload-Inhalt als ausführbare Objekte auf das Gerät laden und mit beliebigen Berechtigungen auf derselben Berechtigungsebene wie die Komponenten des Apple-Betriebssystems ausführen
Dienste während des Startvorgangs starten
Inhalte über Neustarts hinweg beibehalten
die Berechtigung
research.com.apple.license-to-operate
verwenden, um einen Prozess zum Debuggen eines beliebigen anderen Prozesses auf dem System zu erlauben, einschließlich Systemprozesse.Der Namespace
research.
wird nur von derRESEARCH
-Variante der AppleMobileFileIntegrity-Kernel-Erweiterung berücksichtigt. Jeder Prozess mit dieser Berechtigung wird auf einem Kundengerät während der Signaturüberprüfung beendet.eigene Kernel-Caches personalisieren und wiederherstellen