Inflation der Gesichter: Herausforderungen bei biometrischer Authentisierung
BLOG: Datentyp
Möchten Sie lieber eine PIN eingeben, um das Handy zu entsperren, oder soll es einfach Ihr Gesicht erkennen? Und macht es einen Unterschied für Sie, wenn das Gerät ein Bankautomat ist, der die Gesichter von Millionen von Kunden erkennen könnte? Sollten man sich seine PIN zur Bankkarte eigentlich selbst aussuchen können?
Bei diesen Fragen gehen die Meinungen auseinander, und das nicht nur bei Fachleuten. Authentisierungsverfahren befinden sich in einem Spannungsfeld von Sicherheit und Benutzbarkeit. Es geht darum, was man Kunden und Mitarbeitern zumuten möchte.
Mit Authentisierung bezeichnen wir den Vorgang, bei dem ein Benutzer sich an einem Server oder einem Gerät anmeldet und seine Identität nachweist. Das Verfahren, dass wir alle kennen, ist die Eingabe von Benutzername und zugehörigem Passwort, oder die Eingabe einer PIN zum Entsperren eines Gerätes.
Neben dem Nachweis durch Wissen (wie beim geheimen Passwort) gibt es weitere gängige Authentisierungsmethoden:
- Besitz: Smartcards (z. B. Bankkarte, die neben der PIN beim Geldabheben am Automaten benötigt wird), USB-Token oder auch physische Schlüssel beim Safe
- Biometrie: Erkennung der Iris, Fingerabdruck, Gesichtserkennung
Die Methoden stellen nur Beispiele dar, die zudem übergreifend kombiniert werden können. Eine Kombination von Besitz und Wissen ist nicht selten und wird dann als Zwei-Faktor-Authentifizierung bezeichnet. Es können aber auch drei oder mehr Faktoren kombiniert werden. Authentifizierung wird fachsprachlich von Authentisierung unterschieden und bezeichnet den Vorgang, den die andere Seite durchführt: Der Server authentifiziert den Benutzer, d. h. er führt eine Berechtigungsprüfung durch. Umgangssprachlich werden die Begriffe aber oft synonym gebraucht, nicht zuletzt weil im Englischen „authentication“ für Authentifizierung steht, was einer klaren begrifflichen Trennung zuwider läuft.
Passwörter stellen zwar ein etabliertes Konzept dar, das von den Benutzern allgemein verstanden wird. Trotzdem haben sie sich in der Praxis nicht bewährt, denn wir kennen alle die Nachteile: Sie sind wahlweise zu einfach zu raten oder zu schwierig zu merken, die Eingabe kann beobachtet werden, sie müssen preisgegeben werden, obwohl wir nicht immer sicher sind, mit wem wir da kommunizieren. Vor allem aber sind sie lästig, da sie Vorgänge erschweren und uns Zeit und Nerven kosten. Wenn wir ganz schnell ein Bahnticket buchen müssen und schon mehrere Fehlversuche bei der Eingabe des Passwortes gemeldet werden, ist der Tag oft gelaufen.
Nutzerfreundlicher sind unter vielen Gesichtspunkten (Wortspiel nicht beabsichtigt) die biometrischen Verfahren. Das gilt insbesondere für mobile Geräte, für die wir auch keinen zusätzlichen Besitz mitführen wollen. Den Fingerabdruck kann man nicht vergessen; das Gesicht zeigen wir bei der Bedienung von vielen Geräten ohnehin. Aber auch hier gibt es Nachteile: Die Angst, dass uns jemand den Finger abschneiden könnte, um Zugang zu erhalten; das Unbehagen, etwas Fremdes berühren zu müssen oder auch die Hilflosigkeit bei einer fälschlichen Zurückweisung (false rejection), denn wenn uns die Maschine plötzlich nicht mehr erkennt, bleiben keine Optionen mehr. Diskussionen sind zwecklos.
Einen unvermeidbaren Nachteil der Biometrie stellt das Problem dar, dass wir die Merkmale nicht ersetzen können. Es gibt keine Analogie zum Passwortwechsel. Wer unseren Fingerabdruck kennt – und geheim halten lässt er sich kaum – kann versuchen, einen Sensor zu täuschen. Einige Gesichtserkennungen lassen sich bereits mit Fotos überwinden. Zudem werden die biometrischen Daten auf ungesicherten Rechnern oder in umfangreichen Datenbanken verwaltet und es kann – ähnlich wie bei Passwörtern – passieren, dass diese einmal in großer Menge entweichen. Nach einer solchen Datenpanne können nur die Passwörter geändert werden, die Biometrie ist aufgeschmissen.
Was kann bei Biometrie alles schief gehen? Wir können folgende Hauptangriffsarten unterscheiden:
- Einfache Präsentation, um den Sensor zu täuschen: Z. B. Vorzeigen eines Fotos der Person, das auf der Homepage runtergeladen wird.
- Registrierung mit falscher Identität: Bevor das Gerät uns erstmalig biometrisch authentifiziert, muss eine Zuordnung der Merkmale zur Person erfolgen. Gelingt es einem Angreifer, hier zu tricksen, z. B. bei einer Anmeldung einen falschen Ausweis vorzulegen, kann er sich anschließend mit seinen eigenen Körpermerkmalen ungehindert als eine andere Person ausgeben.
- Systemschwachstellen: Der Rechner, der die Authentifizierung vornimmt, wird selbst angegriffen.
- Nutzung gestohlener biometrischer Daten: Z. B. Generierung eines künstlichen Fingers, der genau die benötigten Sensordaten erzeugt.
Für alle genannten Angriffsarten gibt es zwar Gegenmaßnahmen, aber diese wirken sich natürlich nicht allein auf die Sicherheit sondern auch auf Benutzbarkeit, Kosten und Akzeptanz des Systems aus. So kann eine besonders ausgefeilte „Lebenderkennung“ (um Fotos von Gesichtern zu unterscheiden) dazu führen, dass der Anteil fälschlicher Zurückweisungen stark ansteigt. Abgewiesene Benutzer werden sich dann beschweren oder das neu gekaufte Gerät verärgert zurückgeben
Ein kreativer Ansatz, um den Datendiebstahl bei Gesichtserkennungen zu erschweren bzw. aufzudecken, wurde kürzlich von Ohana et a. [1] vorgeschlagen: Honeyfaces. Die Idee: Neben den sensiblen biometrischen Daten, die zur Authentifizierung einer Person benötigt werden, speichert das System die Daten von einer sehr großen Anzahl nicht existierender Personen! Diese Daten werden auf eine Weise künstlich generiert, dass eine spätere Unterscheidung von Datensätzen realer Personen nicht möglich ist. Es findet also eine Inflation von Gesichtern statt, die so weit getrieben wird wie es Speicherkapazität erlaubt. Prototypisch wurden bereits Datenbanken im Terabytebereich erstellt, die mehr künstliche Personen enthalten als es Menschen auf der Erde gibt. Trotzdem ist die Erkennung bei realen Personen dabei nicht beeinträchtigt, denn Rechner finden sich spielend in großen Datenmengen zurecht. Wer allerdings die Daten von außen stehlen möchte, stößt nun auf mehrere Probleme:
- Die gesamte Datenmenge ist zu groß, um übertragen zu werden: Je nach Netzanbindung könnte es Tage oder auch Jahre dauern bis die Datenbank heruntergeladen ist.
- Der Täter weiß nicht, ob ein bestimmter Datensatz zu einer realen Person gehört.
- Der spätere Versuch, sich mit den Daten einer künstlichen Person zu authentisieren, würde zugehörige Alarme triggern, die einen bisher unbemerkten Datendiebstahl nachweisen oder zur Identifizierung des Täters führen können.
Der Ansatz, der nicht nur namentlich an sogenannte Honeypots (Honigtöpfe) erinnert, die Angreifer in Netzwerken vom eigentlichen Ziel ablenken sollen, verhindert also nicht zuverlässig, dass der Täter nach einem Datendiebstahl ein System täuschen kann. Das Verfahren macht es ihm aber im besten Fall so schwer, dass er von seinem Vorhaben Abstand nehmen muss. Zudem wird der Datenschutz der realen Personen gestärkt, da ihre echten personenbezogenen Daten in der Flut künstlicher Daten nahezu verschwinden, was die schädlichen Folgen eines Datendiebstahls stark mindert.
Das HoneyFaces-Verfahren ist aber auch kein Allheilmittel. Es kann nur da sinnvoll eingesetzt werden, wo die Parameter Speicherplatz und Übertragungsrate in einem passenden Verhältnis stehen, zudem ist der Aufwand der Datengenerierung nicht für jeden Anwendungsfall geeignet. Eine Kombination mit anderen Sicherheitsverfahren kann aber in einigen Anwendungsfällen sinnvoll sein. Nicht zuletzt, um gespeicherte personenbezogene Daten besser zu schützen.
Der Vorschlag illustriert, welche Forschungsaktivität das Authentisierungsproblem entfaltet. Sichere und benutzbare Verfahren werden weiterhin gesucht. Und datenschutzfreundlich sollten sie auch sein.
[1] Mor Ohana, Orr Dunkelman, Stuart Gibson, Margarita Osadchy: HoneyFaces: Increasing the Security and Privacy of Authentication Using Synthetic Facial Images. arXiv:1611.03811v1 [cs.CR].
Jedes System kann getäuscht werden, umso mehr, je geschlossener, je eindimensionaler das System ist. Die Authentisierung sollte deshalb meiner Meinung nach gelegentlich auf Vergewisserungen zurückgreifen, die ausserhalb des Systems liegen, beispielsweise indem es bei Freunden der zu authenthisierenden Person nachfrägt. Auf einfache Art wird das jetzt schon gemacht, indem die zu authentisierende Person beispielsweise Codes eingeben muss, die ihr auf ihre EMail-Adresse zugeschickt wurden.
Wie wird das Problem der False Positives gelöst? Nach meiner Kenntnis ist es bei reiner Gesichtserkennung nur bei einer relativ kleinen Gesamtmenge möglich, zuverlässig zu erkennen. Entweder, der Score wird so hoch eingestellt, dass mangels Präzision auch berechtigte Personen nicht korrekt erkannt werden, oder man stellt den Score niedriger ein und kommt dann zu False Positives, also dass jemand einer falschen Person in der Datenbank zugeordnet wird. Je größer die Vergleichsmenge, desto höher das Risiko von False Positives. Wird das nicht mit Honeyfaces erheblich gesteigert?
Im verlinkten arxiv-Dokument liest man dazu:
93.33% aller “berechtigten” Gesichter werden also auch als berechtigt erkannt, was im Umkehrschluss bedeutet, dass fast 6.7% Berechtigter nicht als berechtigt erkannt werden. Mir scheint die Lösung für dieses Problem recht einfach: Wer nicht erkannt wird, der wird gelöchert, es werden bei ihm also alternative Authentificationsmethoden angewandt.
Das echte Problem sind nicht die (zuerst einmal) Zurückgewiesenen, sondern die fälschlicherweise Zugelassenen. Das sind aber nur 0.01%.
Ergänzung/Richtigstellung: Es müsste heissen: “The „password file“ was then inflated to accommodate up to 2 raised to the power of 36.5 users”.
Hier war Copy-Paste der Schuldige.