Bypass Biometric Authentication (Android)
Last updated
Last updated
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Vertiefen Sie Ihr Fachwissen in Mobilsicherheit mit der 8kSec Academy. Meistern Sie die Sicherheit von iOS und Android durch unsere selbstgesteuerten Kurse und erhalten Sie ein Zertifikat:
Der Fokus liegt hier auf dem onAuthenticationSucceeded Callback, der im Authentifizierungsprozess entscheidend ist. Forscher von WithSecure entwickelten ein Frida-Skript, das die Umgehung des NULL CryptoObject in onAuthenticationSucceeded(...) ermöglicht. Das Skript erzwingt eine automatische Umgehung der Fingerabdruckauthentifizierung bei der Aufruf des Verfahrens. Unten ist ein vereinfachter Ausschnitt, der die Umgehung im Kontext von Android-Fingerabdruck zeigt, mit der vollständigen Anwendung verfügbar auf GitHub.
Befehl zum Ausführen des Frida-Skripts:
Ein weiteres Frida-Skript von WithSecure behandelt das Umgehen der unsicheren Verwendung von Kryptoobjekten. Das Skript ruft onAuthenticationSucceeded mit einem CryptoObject auf, das nicht durch einen Fingerabdruck autorisiert wurde. Wenn die Anwendung versucht, ein anderes Cipher-Objekt zu verwenden, wird eine Ausnahme ausgelöst. Das Skript bereitet sich darauf vor, onAuthenticationSucceeded aufzurufen und die javax.crypto.IllegalBlockSizeException in der Cipher-Klasse zu behandeln, um sicherzustellen, dass nachfolgende Objekte, die von der Anwendung verwendet werden, mit dem neuen Schlüssel verschlüsselt sind.
Befehl zum Ausführen des Frida-Skripts:
Beim Erreichen des Fingerabdruckbildschirms und der Initiierung von authenticate()
, geben Sie bypass()
in die Frida-Konsole ein, um den Bypass zu aktivieren:
Instrumentierungs-Frameworks wie Xposed oder Frida können verwendet werden, um zur Laufzeit in Anwendungs-Methoden einzugreifen. Für die Fingerabdruck-Authentifizierung können diese Frameworks:
Die Authentifizierungs-Callbacks nachahmen: Durch das Hooken in die Methoden onAuthenticationSucceeded
, onAuthenticationFailed
oder onAuthenticationError
des BiometricPrompt.AuthenticationCallback
können Sie den Ausgang des Fingerabdruck-Authentifizierungsprozesses steuern.
SSL-Pinning umgehen: Dies ermöglicht es einem Angreifer, den Datenverkehr zwischen dem Client und dem Server abzufangen und zu modifizieren, was potenziell den Authentifizierungsprozess verändern oder sensible Daten stehlen kann.
Beispielbefehl für Frida:
Reverse Engineering-Tools wie APKTool
, dex2jar
und JD-GUI
können verwendet werden, um eine Android-Anwendung zu dekompilieren, ihren Quellcode zu lesen und ihren Authentifizierungsmechanismus zu verstehen. Die Schritte umfassen in der Regel:
Dekompilierung der APK: Konvertieren Sie die APK-Datei in ein menschenlesbareres Format (wie Java-Code).
Analyse des Codes: Suchen Sie nach der Implementierung der Fingerabdruckauthentifizierung und identifizieren Sie potenzielle Schwächen (wie Fallback-Mechanismen oder unsachgemäße Validierungsprüfungen).
Rekompilierung der APK: Nach der Modifikation des Codes, um die Fingerabdruckauthentifizierung zu umgehen, wird die Anwendung rekombiniert, signiert und auf dem Gerät zur Prüfung installiert.
Es gibt spezialisierte Werkzeuge und Skripte, die entwickelt wurden, um Authentifizierungsmechanismen zu testen und zu umgehen. Zum Beispiel:
MAGISK-Module: MAGISK ist ein Tool für Android, das es Benutzern ermöglicht, ihre Geräte zu rooten und Module hinzuzufügen, die hardwarebezogene Informationen, einschließlich Fingerabdrücke, modifizieren oder fälschen können.
Benutzerdefinierte Skripte: Skripte können geschrieben werden, um mit der Android Debug Bridge (ADB) oder direkt mit dem Backend der Anwendung zu interagieren, um die Fingerabdruckauthentifizierung zu simulieren oder zu umgehen.
Vertiefen Sie Ihr Fachwissen in Mobiler Sicherheit mit der 8kSec Academy. Meistern Sie die Sicherheit von iOS und Android durch unsere selbstgesteuerten Kurse und erhalten Sie ein Zertifikat:
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)