BrutePrint: Attacke knackt Schutz mit Fingerabdrucksensoren
IT-Sicherheitsforscher haben einen Angriff namens BrutePrint auf den Zugangsschutz von Smartphones mit Fingerabdrucksensoren vorgestellt.
Die IT-Sicherheitsforscher Yu Chen von Tencent und Yiling He von der Universität Zhejiang haben in einem Forschungspapier einen Angriff auf den Zugangsschutz mit Fingerabdrucksensoren von handelsüblichen Smartphones vorgestellt. Die BrutePrint-Attacke ermöglicht auf vielen Geräten einen Brute-Force-Angriff. Insbesondere Strafverfolgungsbehörden dürften interessiert sein.
Die Voraussetzungen für BrutePrint schränken die Möglichkeiten etwas ein – einfach ein Smartphone am Nebentisch "mal eben" knacken ist nicht möglich. Angreifer benötigen mehrere Stunden physischen Zugriff auf das Handy. Sie müssen mindestens die Rückseite entfernen und eigene Hardware an den SPI-Bus des biometrischen Sensors anschließen. Dabei darf das Handy keinesfalls neu starten, da beim Neustart üblicherweise ein Entsperrmuster oder eine PIN für den Zugriff verlangt wird.
BrutePrint: Viele Geräte betroffen
Wie Chen und He erläutern, haben sie mehrere Schwachstellen ausgemacht, wobei nicht jedes untersuchte Smartphone von jeder betroffen ist. Am wackersten schlugen sich demnach iOS-Geräte. Auf denen ließ sich kein Brute-Force-Angriff durchführen.
Bei einem Authentifizierungsversuch per Fingerabdruck läuft die Prüfung in einer Schleife und untersucht in der Regel mehrere, jedoch eine begrenzte Anzahl von Fingerabdruckbildern. Dies dient dazu, technische Unzulänglichkeiten auszugleichen. Es muss zudem kein hundertprozentiger Treffer erreicht werden, sondern eine wesentliche Übereinstimmung genügt bereits für ein positives Prüfungsergebnis.
Beliebig viele Versuche
Die Ergebnisse Error (Fehler), Success (Treffer), Non-live (nicht lebendig), oder das Erreichen der maximalen Anzahl an geprüften Fingerabdruckbildern unterbrechen die Schleife. Zudem führt das weitere mögliche Ergbnis Failed (Fehlgeschlagen) zur Erhöhung des Authentifizierungsversuchszählers; dazu gehört auch das Überschreiten zu vieler nicht positiv untersuchter Fingerabdruckbilder in der Schleife.
Eine der Sicherheitslücken nennen die IT-Forscher Cancel-After-Match-Fail (CAMF). Durch CAMF können Angreifer vor dem Erreichen der maximalen Anzahl der in der Schleife untersuchten Fingerabdruckbilder einen Pfad "Error-Cancel" auslösen, der den Versuch abbricht. Das setzt den Zähler zurück und ermöglicht das Prüfen weiterer Fingerabdruckbilder. Das umgeht damit das Ergebnis "Failed", erhöht den Authentifizerungsversuchszähler nicht und lässt die Angreifer beliebig viele Fingerabdrücke probieren.
Die Match-After-Lock (MAL) getaufte Lücke hingegen betrifft die Blockade weiterer Authentifizierungsversuche für einen bestimmten Zeitraum nach zu vielen Fehlversuchen. Einige Smartphones nutzen jedoch eine Pseudo-Lockout-Funktion. Auch sie verhindert die Anmeldung mit Fingerabdruck, jedoch läuft im Hintergrund in der Trusted Execution Environment (TEE) des Geräteprozessors die Prüfung der Fingerabdrücke weiter. Über einen Seitenkanal lässt sich das Ergebnis der Prüfung etwa mittels Unterschieden in Antwortzeiten und der Anzahl übermittelter Bilder ableiten. MAL ermöglicht somit ebenfalls eine Brute-Force-Attacke mit unbegrenzter Versuchsanzahl.
Man-in-the-Middle: Angriff auf den SPI-Bus
Der biometrische Fingerabdrucksensor ist mittels SPI-Bus an den Prozessor angebunden. SPI bietet eine sehr einfache DatenĂĽbertragung und ist im Audiobereich sowie im Mikroprozessor- und Sensorbereich weitverbreitet. AuĂźer Apples TouchID nutze den Forschern zufolge bislang kein Sensor VerschlĂĽsselung oder Authentifizierung auf dem SPI-Bus. Dadurch lasse sich die Kommunikation auf dem SPI-Bus manipulieren.
Die günstige, selbst gebaute Hardware klinkt sich in die Datenleitungen ein und kann dort lauschen, aber auch eigene Signale einstreuen (Glitching). Im Endeffekt lässt sich ein Fingerabdruckbild auslesen oder ersetzen. Dabei nutzt jedes Smartphone respektive jeder Sensor ein unterschiedliches Format, woran die Angreifer ihre eingeschleusten Bilder anpassen müssen. Als Basis dienen Open-Source-Datenbanken mit zahlreichen Fingerabdrücken. Diese passen sie mit einem trainierten CycleGAN-Filter (eine Art trainierbares neuronales Netz) an die Ausgaben des Zielsensors an.
Da die Lebenderkennung in der Regel auf charakteristische Änderungen in den Fingerabdruckbildern basiert, hebelt der vorgestellte Angriff mit den angepassten Bildern die Schutzfunktion in einem Rutsch gleich mit aus. Bei dem Angriff stören die IT-Forscher bei jedem beispielsweise vierten vom Fingerabdrucksensor abgeholten Bild die SPI-Kommunikation, sodass es zu Checksummenfehlern kommt. Dies führt zum Abbruch (Cancel) der CAMF-Lücke und ermöglicht, beliebig viele Fingerabdruckbilder zu prüfen. Die Nummer des "gestörten" Bildes variiert dabei von einem Smartphone-Modell zum anderen.
Die Hardware, mit der die IT-Forscher den Angriff durchführen, ist günstig und frei zugänglich – rund 15 US-Dollar haben sie ausgeben müssen: Ein Mikroprozessor STM32F412 (Cortex M4) kommt für die SPI-Kommunikation bei etwa 38 MHz im Slave-Mode zum Einsatz und kontrolliert den gesamten Angriff. Ein Wechselschalter RS2117 schaltet zwischen den Angriffsmodi um. Ein Flashspeicher mit 8 Gigabyte Platz dient zum Vorhalten von etwa 200.000 Fingerabdruckbildern in 8-Bit-Graustufen und schließlich wird noch ein Stecker benötigt, um die Angriffshardware auf Handy- und Sensor-Seite anzuschließen. Ein Auto-Klicker weckt den Fingerabdruckscanner auf Geheiß der STM32-MCU sekündlich auf, um den Angriff automatisiert für längere Zeit vorzunehmen.
Konkrete Angriffe mit BrutePrint
Chen und He führen aus, dass ein Angriff wie folgt aussieht: Als Erstes muss die Rückseite des Smartphones entfernt und die Verbindung zwischen Fingerabdrucksensor und Handy-Motherboard gekappt werden. Als Zweites müssen Angreifer die Angriffshardware in den Lausch-Modus versetzen und Fingerabdruckbilder abgreifen. Im dritten Schritt erstellen sie das Fingerabdruck-Wörterbuch aus der Fingerabdruck-Datenbank anhand des erkannten Formats der übertragenen Fingerabdruckbilder. An vierter Stelle erfolgt die Übertragung des Fingerabdruck-Wörterbuchs in den Flashspeicher und der Start des automatisierten Angriffs.
Die IT-Sicherheitsforscher haben die BrutePrint-Attacken auf zehn handelsüblichen Smartphones ausprobiert. Davon waren sechs Android- und zwei HarmonyOS-Geräte (Huawai) – dort gelangen unendlich viele Authentifizierungsversuche sowie das Einschmuggeln der Fingerabdrücke aus dem Wörterbuch. Beim iPhone 7 und iPhone SE war beides unter anderem aufgrund der verschlüsselten SPI-Kommunikation mit Authentifizierung nicht möglich – die CAMF-Lücke ermöglichte jedoch die Ausweitung der Anmeldeversuche von fünf auf 15.
In Ihrer Forschungsarbeit erläutern die Autoren detaillierter, wie sie etwa mit Reverse-Engineering die Bildgröße der Fingerabdrucksensoren herausfinden, die Bilder aus der Datenbank mit CycleGAN anpassen und die proprietären Protokolle der Sensoren analysieren. Zudem berichten sie ausführlich von den Angriffen auf die zehn Smartphone-Modelle.
Einige Verbesserungsvorschläge machen die beiden IT-Forscher ebenfalls. Um die CAMF-Angriffe zu unterbinden, müssten Hersteller einen Zähler für die abgebrochenen Fingerabdruck-Prüfungen einführen. Die Übertragung auf dem SPI-Bus müsse abgesichert werden. Außerdem sollte sich das Timing für Rückmeldungen zu positiven oder negativen Prüfungen gleichen und nicht etwa kürzere Animationen bei positivem Befund liefern.
Die CAMF-Lücke sollte sich mit einem Firmware-Update abdichten lassen, ebenso die MAL-Schwachstelle. Die vorgestellten Angriffe sind zwar mit günstiger Hardware durchführbar, aber vermutlich eher etwa für Strafverfolgungsbehörden interessant. Sofern etwa zu durchsuchende Smartphones von Verdächtigen nicht neu gestartet wurden, könnten Ermittler sich möglicherweise mit BrutePrint Zugang verschaffen.
(dmk)