Kampf gegen Cheating: Apple erinnert an neue APIs in iOS 14
Entwickler von Apps und Spielen haben es schwer zu erkennen, ob sich Hacker am Code zu schaffen machten: Besonders bei Spielen, aber auch bei normalen Apps, welche mit Servern kommunizieren, ist eine unmodifizierte Kopie kaum von einer gehackten Version zu unterscheiden. Beispielsweise könnte sich ein Spieler einer modifizierten Version schneller durch die Spielwelt bewegen oder genauer auf Gegner zielen und sich somit einen Vorteil verschaffen.
Der Grund dahinter ist, dass aus Perspektive des Spiel-Servers nicht zu erkennen ist, ob die Netzwerkkommandos von einer echten App stammen oder ob es sich um modifizierte Kommandos handelt. Eine Weisheit aus der Software-Entwicklung ist folgender Spruch: "Der Client muss als kompromittiert betrachtet werden, solange nicht das Gegenteil bewiesen ist". Dieser Beweis ist meist nicht zu erbringen, da die Netzwerkkommandos von gehackten Apps nicht von echten Kommandos zu unterscheiden sind.
Sicherheit erhöhen mit "DeviceCheck"Mit iOS 14 führt Apple eine neue Programmierschnittstelle mit dem Namen "DeviceCheck" ein, welche auf neueren iOS-Geräten zur Nutzung bereitsteht. Mit diesem API lassen sich kryptographische Schlüssel erzeugen, welche in der Secure Enclave gespeichert abzulegen sind – die Erstellung eines solchen Schlüssels geht nur einmalig pro Gerät. Vereinfacht gesagt ist es möglich, diesen Schlüssel bei Nachrichten an den Server mitzusenden – der Server des Entwicklers überprüft daraufhin mithilfe eines Apple-Servers die Gültigkeit.
Läuft eine modifizierte iOS-Version, welche die Installation von gehackten Apps erlaubt, greifen verschiedene Sicherheitsmechanismen: Die Secure Enclave liefert beispielsweise keine Schlüssel mehr aus oder erlaubt nicht mehr das Speichern von neuen Schlüsseln. Außerdem attestiert der Apple-Server nicht die Gültigkeit, wenn auf dem Gerät beispielsweise ein Jailbreak durchgeführt wurde.
Keine absolute SicherheitApple schreibt aber selbst in der
Dokumentation, dass auch dieses Verfahren keine absolute Sicherheit bietet. Sind zum Beispiel gültige Schlüssel im Umlauf geraten, könnten Hacker diese verwenden, um Nachrichten an den Entwickler-Server valide erscheinen zu lassen. Doch mit dem DeviceCheck-Verfahren erhöht Apple die Hürde für Hacker deutlich – und wenn auf neueren Geräten kein Jailbreak möglich ist, verringert sich auch die Gefahr von kompromittierten Client-Apps.