Zum Inhalt springen

SafetyNet: Unterschied zwischen den Versionen

2 Bytes hinzugefügt ,  3. April 2019
→‎Probleme mit CustomROMs und Root: Rechtschreibfehler behoben
(Die Seite wurde neu angelegt: „'''SafetyNet''' ist ein Service von Google, welcher im Rahmen der Google Play Services auf einem Android-Gerät installiert ist und vordergründig für A…“)
 
(→‎Probleme mit CustomROMs und Root: Rechtschreibfehler behoben)
 
(Eine dazwischenliegende Version von einem anderen Benutzer wird nicht angezeigt)
Zeile 6: Zeile 6:
''SafetyNet'' besteht grundlegend aus zwei Komponenten. Auf dem Gerät des Nutzers ist zum einen ein Service <code>snet</code> installiert, welcher im Hintergrund kontinuierlich Daten über das Gerät sammelt und an Google sendet. Zum Anderen existiert eine Komponente bei Google, welcher diese Daten Server-seitig von ''SafetyNet''-Geräten entgegennimmt und auswertet. Auf Basis dieser Daten kann Google durch nicht näher dokumentierte Prüfmechanismen und -analysen die Entscheidung treffen, ob ein Gerät aktuell in einem ''sicheren und nicht veränderten Status'' ist.<ref>{{Internetquelle|url=https://koz.io/inside-safetynet/|titel=SafetyNet: Google's tamper detection for Android ·  John Kozyrakis ~ blog|sprache=en-us|zugriff=2018-09-29}}</ref>
''SafetyNet'' besteht grundlegend aus zwei Komponenten. Auf dem Gerät des Nutzers ist zum einen ein Service <code>snet</code> installiert, welcher im Hintergrund kontinuierlich Daten über das Gerät sammelt und an Google sendet. Zum Anderen existiert eine Komponente bei Google, welcher diese Daten Server-seitig von ''SafetyNet''-Geräten entgegennimmt und auswertet. Auf Basis dieser Daten kann Google durch nicht näher dokumentierte Prüfmechanismen und -analysen die Entscheidung treffen, ob ein Gerät aktuell in einem ''sicheren und nicht veränderten Status'' ist.<ref>{{Internetquelle|url=https://koz.io/inside-safetynet/|titel=SafetyNet: Google's tamper detection for Android ·  John Kozyrakis ~ blog|sprache=en-us|zugriff=2018-09-29}}</ref>


Dieser Status wird als ''CTS compatible'' bezeichnet, wobei ''CTS'' für die ''Compatibility Testing Suite'' steht,<ref>{{Internetquelle|url=https://developer.android.com/training/safetynet/attestation#cts-check|titel=SafetyNet Attestation API  {{!}}  Android Developers|werk=Android Developers|sprache=en|zugriff=2018-09-29}}</ref> welche grundsätzlich jedes Gerät bestehen muss, bevor Google Services, wie bspw. der Google Play Store, auf diesem vorinstalliert werden darf. Die CTS-Kompatibilität beinhaltet allerdings lediglich die Aussage, ob das Gerät CTS-kompatibel ist und ''nicht verändert wurde'', allerdings nicht, ob es Fehlerfrei ist oder keine Sicherheitslücken aufweist.
Dieser Status wird als ''CTS compatible'' bezeichnet, wobei ''CTS'' für die ''[[Compatibility Test Suite]]'' steht,<ref>{{Internetquelle|url=https://developer.android.com/training/safetynet/attestation#cts-check|titel=SafetyNet Attestation API  {{!}}  Android Developers|werk=Android Developers|sprache=en|zugriff=2018-09-29}}</ref> welche grundsätzlich jedes Gerät bestehen muss, bevor Google Services, wie bspw. der Google Play Store, auf diesem vorinstalliert werden darf. Die CTS-Kompatibilität beinhaltet allerdings lediglich die Aussage, ob das Gerät CTS-kompatibel ist und ''nicht verändert wurde'', allerdings nicht, ob es Fehlerfrei ist oder keine Sicherheitslücken aufweist.


== SafetyNet-Überprüfung ==
== SafetyNet-Überprüfung ==
Zeile 14: Zeile 14:
Aufgrund des gesetzten Ziels von ''SafetyNet'' und der daraus resultierenden Implementierung, ist es problematisch, ein [[ROM|CustomROM]] zu installieren oder ein Gerät zu [[Root|rooten]], wenn gleichzeitig eine App genutzt wird, die einen positiven ''SafetyNet'' Check benötigt. Sowohl das Installieren eines CustomROM, wie auch das rooten, verändern die auf dem Gerät installierte Software und resultieren damit in einer negativen ''SafetyNet''-Überprüfung, sodass Apps wie bspw. [[Google Pay]] aber auch ''Pokemon GO'' nicht mehr funktionieren. Aus der Entwickler-Community gibt es immer wieder Wege und Implementierungen, die die Veränderung des Systems vor ''SafetyNet'' verbergen sollen und somit zu einem positiven Ergebnis bei der Überprüfung führen. Aufgrund der unbekannten Analysen, die auf den gesammelten Daten seitens Google durchgeführt werden, ist es allerdings oft schwer nachzuvollziehen, welche Informationen verändert werden müssen. Zusätzlich verändert Google regelmäßig die Analysen um Methoden zur Umgehung von ''SafetyNet'' unbrauchbar zu machen. Die Server-seitige Überprüfung unterstützt hierbei sowohl das geheimhalten der verwendeten Algorithmen, wie auch die schnelle Anpassung der Analysen.
Aufgrund des gesetzten Ziels von ''SafetyNet'' und der daraus resultierenden Implementierung, ist es problematisch, ein [[ROM|CustomROM]] zu installieren oder ein Gerät zu [[Root|rooten]], wenn gleichzeitig eine App genutzt wird, die einen positiven ''SafetyNet'' Check benötigt. Sowohl das Installieren eines CustomROM, wie auch das rooten, verändern die auf dem Gerät installierte Software und resultieren damit in einer negativen ''SafetyNet''-Überprüfung, sodass Apps wie bspw. [[Google Pay]] aber auch ''Pokemon GO'' nicht mehr funktionieren. Aus der Entwickler-Community gibt es immer wieder Wege und Implementierungen, die die Veränderung des Systems vor ''SafetyNet'' verbergen sollen und somit zu einem positiven Ergebnis bei der Überprüfung führen. Aufgrund der unbekannten Analysen, die auf den gesammelten Daten seitens Google durchgeführt werden, ist es allerdings oft schwer nachzuvollziehen, welche Informationen verändert werden müssen. Zusätzlich verändert Google regelmäßig die Analysen um Methoden zur Umgehung von ''SafetyNet'' unbrauchbar zu machen. Die Server-seitige Überprüfung unterstützt hierbei sowohl das geheimhalten der verwendeten Algorithmen, wie auch die schnelle Anpassung der Analysen.


Des Weiteren kann der SfatyNet-Status nicht ohne Weiteres von einem ''tampered'', also einem ''veränderten'', Zustand zurück geändert werden. Hintergrund ist, dass ''SafetyNet'' nicht nur den aktuellen Status des Gerätes für eine Überprüfung heranzieht, sondern auch die verschiedenen Status im Verlauf der Zeit bewertet. Das Zurücksetzen des Status ist daher nur durch einen kompletten Austausch der System-Partition mit einem unveränderten Image möglich.<ref>{{Internetquelle|url=https://www.androidpit.de/gefangen-im-safetynet-was-modder-beachten-muessen|titel=Gefangen im SafetyNet von Google: Was Modder beachten müssen {{!}} AndroidPIT|sprache=de|zugriff=2018-09-29}}</ref>
Des Weiteren kann der SafetyNet-Status nicht ohne Weiteres von einem ''tampered'', also einem ''veränderten'', Zustand zurück geändert werden. Hintergrund ist, dass ''SafetyNet'' nicht nur den aktuellen Status des Gerätes für eine Überprüfung heranzieht, sondern auch die verschiedenen Status im Verlauf der Zeit bewertet. Das Zurücksetzen des Status ist daher nur durch einen kompletten Austausch der System-Partition mit einem unveränderten Image möglich.<ref>{{Internetquelle|url=https://www.androidpit.de/gefangen-im-safetynet-was-modder-beachten-muessen|titel=Gefangen im SafetyNet von Google: Was Modder beachten müssen {{!}} AndroidPIT|sprache=de|zugriff=2018-09-29}}</ref>


== Überprüfen des aktuellen SafetyNet Status ==
== Überprüfen des aktuellen SafetyNet Status ==
Anonymer Benutzer
Cookies helfen uns bei der Bereitstellung von Android Wiki. Durch die Nutzung von Android Wiki erklärst du dich damit einverstanden, dass wir Cookies speichern.