Zwei-Faktor-Authentisierung

Die Zwei-Faktor-Authentisierung (2FA), häufig auch Zwei-Faktor-Authentifizierung genannt, bezeichnet den Identitätsnachweis eines Nutzers mittels einer Kombination zweier unterschiedlicher und insbesondere voneinander unabhängiger Komponenten (Faktoren). Typische Beispiele sind Bankkarte und PIN beim Geldautomaten, Fingerabdruck und Zugangscode in Gebäuden, oder Passphrase und Transaktionsnummer (TAN) beim Online-Banking. Die Zwei-Faktor-Authentisierung ist ein Spezialfall der Multi-Faktor-Authentisierung.

Anwendung und Zweck

Insbesondere für sicherheitskritische Anwendungsbereiche wird die Zwei-Faktor-Authentisierung empfohlen, so beispielsweise vom deutschen Bundesamt für Sicherheit in der Informationstechnik in seinen IT-Grundschutz-Katalogen.[1] BSI für Bürger und die Stiftung Warentest empfehlen Verbrauchern aber inzwischen, Zwei-Faktor-Authentisierung für möglichst viele webbasierte Dienste bzw. Online-Portale zu nutzen.[2][3] Grund ist, dass Benutzer häufig ungeeignete oder zu schwache Passwörter wählen und ein und dasselbe Kennwort für mehrere Benutzungskonten bzw. Web-Dienste nutzen.[4] Einmalpasswörter werden nach wenigen Sekunden oder Minuten ungültig – das wehrt Angreifer ab, die Passwörter erspähen wollen, z. B. durch Mitlesen von Passwörtern bei der Eingabe oder durch einen Keylogger.

Im Bankwesen wurde 2018 mit der EU-Zahlungsdiensterichtlinie die Zwei-Faktor-Authentisierung für den Europäischen Wirtschaftsraum verpflichtend eingeführt.[5] Auch Webplattformen wie Amazon[6] oder Google[7] und E-Mail-Provider wie mail.de (seit 2012), posteo (seit 2014) oder mailbox.org bieten den Anwendern an, ihr Benutzerkonto durch Zwei-Faktor-Authentisierung zu schützen.

Komponenten

Die Authentifizierung mit zwei Faktoren ist nur dann erfolgreich, wenn zwei festgelegte Authentisierungsmittel unterschiedlicher Kategorie (Besitz, Wissen, Eigenschaft) zusammen bei der Prüfung eingesetzt werden. Jedes Authentisierungsmittel muss dabei das Protokoll der Authentifizierung erfolgreich bestehen. Fehlt ein Faktor oder ein Faktor wird falsch verwendet, lässt sich die Authentizität nicht zweifelsfrei feststellen und der Zugang zum System wird verweigert.

Die Faktoren können sein:[8]

Mittelbare Zwei-Faktor-Authentisierung

Authentisierung über ein Sicherheits-Token als geheimnishütenden Gegenstand hat den Nachteil, dass dieser immer präsent sein muss, wenn der Nutzer sich anmelden möchte. Wird der Gegenstand gestohlen, verloren oder hat der Nutzer ihn schlicht nicht dabei, sind Zugriffe unmöglich bzw. es entsteht ein hoher Aufwand. Zudem entstehen Kosten für die Erstanschaffung, ebenso wie ggf. bei Ersatzbeschaffungen. Um diesen Risiken aus dem Weg zu gehen, ist die sogenannte mittelbare Zwei-Faktor-Authentisierung als Alternative entwickelt worden.[9][10] Sie nutzt Mobilgeräte, wie Mobiltelefone und Smartphones, als geheimnishütenden Gegenstand, also „etwas, was der Nutzer besitzt“ (aber auch verlieren kann). Da das Mobilgerät bei vielen Menschen heute ein ständiger Begleiter ist, muss kein zusätzlicher Token angeschafft und beschützt werden.

Möchte der Anwender sich authentisieren, muss er meist eine Passphrase und ein einmalig gültiges, dynamisch erzeugtes Einmalkennwort eingeben. Diesen Code erhält er per SMS oder E-Mail auf sein Mobilgerät gesendet, oder (besser) die entsprechende App zur Zwei-Faktor-Authentisierung generiert das Einmalkennwort auf dem Mobilgerät.

Hat der Nutzer eine Ziffernfolge verwendet, wird diese automatisch gelöscht, und das System sendet einen neuen Code an das Mobilgerät. Wird der neue Code nicht innerhalb einer festgelegten Frist eingegeben, ersetzt ihn das System automatisch. Auf diese Weise verbleiben keine alten, schon verwendeten Codes auf der mobilen Komponente. Für noch gesteigerte Sicherheit lässt sich festlegen, wie viele Falscheingaben toleriert werden, bevor das System den Zugang sperrt.

Wenn der sich authentisierende Benutzer keine manuelle Dateneingabe mehr zu erledigen braucht, gilt der Prozess als halbautomatisiert. Das ist mit der NFC-Methode erreicht. Verwendet wird dazu ein zuvor personalisiertes Mobilgerät.

Erst dann, wenn der sich authentisierende Benutzer keinerlei Handhabung mehr zu erledigen braucht, gilt der Prozess als vollautomatisiert. Das ist mit dem Verwenden von Piconetzen (Bluetooth) als internationaler Industriestandard erreicht. Verwendet wird dazu ein zuvor personalisiertes Mobilgerät.[11]

Apps zur Zwei-Faktor-Authentisierung mittels zeitbasierten Einmalkennwörtern (TOTP)

Anwender installieren auf dem mobilen Endgerät, das zur Zwei-Faktor-Authentisierung gegenüber einem oder mehreren webbasierten Diensten dient, eine App. Sodann kann ein webbasierter Dienst durch Zwei-Faktor-Authentisierung geschützt werden, indem man die App beim Dienst als zweiten Faktor registriert. Dazu tauschen der Sicherheits-Server des Dienstes und das Endgerät eine Zeichenfolge als Geheimnis oder Token aus – z. B. indem man mit dem Mobilgerät einen QR-Code scannt oder eine entsprechende, vom Sicherheits-Server angezeigte Zeichenfolge händisch eintippt. Nach diesem ersten Schritt ist das Geheimnis im Idealfall nur dem Sicherheits-Server und dem persönlichen Gerät des Nutzers bekannt und sollte diesen Speicher nie verlassen. Nach einem Funktionstest schaltet der Webdienst die Zwei-Faktor-Authentisierung für das Benutzerkonto aktiv.

Will der Benutzer den webbasierten Dienst nun nutzen, wird er – nach Eingabe seines Benutzernamens und Passworts – aufgefordert, ein von der App generiertes Einmalpasswort als zweiten Faktor zur Authentisierung einzugeben. Die App berechnet das Einmalpasswort aus der aktuellen Uhrzeit und dem Geheimnis. Daher müssen die Uhren von Client und Server ungefähr synchron sein. In der Regel funktioniert der Vorgang auch im Flugmodus. In der Praxis kann der Server so programmiert werden, auch den Vorgänger- und Nachfolger-Code zu akzeptieren, um Zeitabweichungen von bis zu einer Minute abzudecken. Das zum Erzeugen des Einmalpassworts notwendige Geheimnis wird nicht übertragen und kann deswegen nicht abgehört werden.

Es gibt mehrere Apps zur Zwei-Faktor-Authentikation via TOTP. Einige unterstützten viele Plattformen, da sie die offenen Standards HOTP (RFC 4226[12]) und TOTP (RFC 6238[13]) umsetzen. Damit sind sie gegenüber jedem Webdienst einsetzbar, dessen Sicherheits-Server jene Standards implementiert.

Appunterstützte PlattformenImport/Export-Funktion?Anmerkungen
Google AuthenticatorAndroid, iOS, Blackberry OSja[14]Login in Google-Konten per Push-Notifikation. Für Android entwickelt, war die App ursprünglich bis Version 2.21 Open Source, später wurde sie proprietär.
andOTPAndroidja[15][16]Open Source – seit 14. Juni 2022 nicht mehr weiterentwickelt.[17]
FreeOTP AuthenticatorAndroid (zuletzt aktualisiert am 25. Januar 2016) und iOSkeine[18]Die Open-Source-Software wurde basierend auf der Version des Google Authenticators, die über das GitHub Verzeichnis verfügbar war, entwickelt.[19][20] FreeOTP wird von Red Hat zur Verfügung gestellt.
FreeOTP+AndroidjaDie Open-Source-Software FreeOTP+ ist ein Fork von FreeOTP, welcher Erweiterungen integriert.[21]
Aegis AuthenticatorAndroidjaQuelloffene App mit Importmöglichkeit von anderen Apps.[22]
Authy (Twilio)Android, BlackBerry OS, iOS, Windows, Mac OS und LinuxjaDie Geheimnisse / Token werden (verschlüsselt) in der Cloud gespeichert, dadurch auf mehreren Geräten parallel verwendbar.
Microsoft AuthenticatorAndroid und iOS[23]ja[24]Login in das Microsoft-Konto per Push-Notifikation
PrivacyIDEAAndroid und iOSneinOpen Source OTP Server. Login über einen OIDC Server (z. B.: Keycloak etc.) per Push-Notifikation, TOTP etc.

Auch Passwort-Manager wie LastPass, Bitwarden, 1Password oder KeePass unterstützen Zwei-Faktor-Authentisierung gegenüber Dritten.

Universelle Zwei-Faktor-Authentisierung

Die FIDO-Allianz veröffentlichte am 9. Dezember 2014 die erste Version des universellen und lizenzfreien Standards U2F für die Zwei-Faktor-Authentisierung, die verschiedene Verfahren und Geräte unterstützt.[25] Im Februar 2015 kündigte Microsoft an, dass der Standard 2.0 der FIDO-Allianz für die Authentifikation im Internet vom Betriebssystem Windows 10 unterstützt wird.[26]

Sicherheitsaspekte

Sicherheitsexperten warnen, dass SMS-Spoofing und Man-in-the-Middle-Angriffe, bei denen Angreifer eine gefälschte Login-Seite präsentieren, missbrauchen können, um die Zwei-Faktor-Authentisierung, die auf Einmalkennwörtern beruht, zu umgehen.[27] FIDO U2F bietet hier zusätzlichen Schutz.

Beide Faktoren sollten zwei getrennte Übertragungskanäle nutzen.[28] Der Forderung, sie nicht am gleichen Ort zu speichern, wird oft nicht nachgekommen. So nutzen viele Banken die E-Banking-App und die App zur Zwei-Faktor-Authentisierung per Einmalkennwort im selben Endgerät, sodass bei dessen Verlust nur noch ein etwaiger PIN-Code auf der 2FA-App die Anwendung schützt. Selbst wenn man die App zur Zwei-Faktor-Authentifizierung mittels TOTP auf demselben Gerät installierte, auf dem man den 2FA-gesicherten IT-Dienst nutzt, erhöht das die Sicherheit gegenüber der Authentisierung lediglich mittels Anmeldename und Passwort – der sich aus der Einmaligkeit des Einmalpassworts ergibt. Die Nutzung der Authentisierungs-App über ein zweites Gerät bietet jedoch zusätzlich die Sicherheit des zweiten Faktors.

Außerdem erlauben die meisten Anbieter, bestimmte Rechner als vertrauenswürdige Clients zu definieren, von denen aus die Anmeldung ohne Einmalpasswort erfolgen darf. Kann ein Angreifer sich Zugang zu einem solchen Rechner verschaffen, besteht kein zusätzlicher Schutz.

Kritik

Nachdem insbesondere durch gesetzliche Regulierungen die Zwei-Faktor-Authentisierung Verbreitung gefunden hatte, zeigte sich, dass das als kriminelles Geschäftsmodell missbraucht wurde. So zahlte das Unternehmen Twitter Inc. einige Jahre lang mehr als 60 Millionen US-Dollar pro Jahr an rund 390 Telekommunikationsunternehmen, bei denen mehr als 10 % der angeforderten Kostenerstattungen für den SMS-Versand durch Anmeldungen betrügererischer Anmeldeprozesse entstanden.[29] Diese Telekommunikationsunternehmen richteten millionenfach kostenlose Zugänge zwecks Anmeldemissbrauch ein. Darin waren Unternehmen aus Nordamerika noch nicht inbegriffen. Diese 60 Millionen US-Dollar bildeten den größten Posten der 210 Millionen US-Dollar Verlust der Twitter Inc. im Jahre 2021.[30]

Weblinks

Einzelnachweise

  1. SYS.2.1.M1 Benutzerauthentisierung, BSI, IT-Grundschutz-Kompendium Edition 2020, abgerufen am 28. August 2020.
  2. Zwei-Faktor-Authentisierung für höhere Sicherheit. BSI für Bürger, Bundesamt für Sicherheit in der Informationstechnik.
  3. Online-Konten schützen mit 2FA. So funktioniert Zwei-Faktor-Authentifizierung. Test.de, Stiftung Warentest, 11. Dezember 2020.
  4. one-time password (OTP). TechTarget Network
  5. Zwei-Faktor-Authentifizierung bei Online-Banking kommt. futurezone.at, 2. August 2017; abgerufen am 8. Juli 2019.
  6. Mehr Sicherheit: Amazon führt Zweifaktor-Authentifizierung ein. In: Der Standard online, 5. Dezember 2016.
  7. Zweiter Faktor: Nur wenige User sichern ihren Google-Account zusätzlich ab. In: Der Standard online, 22. Januar 2018.
  8. Zwei-Faktor-Authentifikation: So funktioniert sie, test.de, 28. Januar 2015, abgerufen am 20. Februar 2015
  9. datenschutzticker.de, 29. April 2020 (KINAST Rechtsanwälte)
  10. Zwei-Faktor-Authentifizierung (Virtual Solution AG)
  11. Michel Smidt: Kurz erklärt: Sichere Logins mit Zwei-Faktor-Authentifizierung. In: Univention Blog. univention, 27. April 2017, abgerufen am 14. August 2018.
  12. RFC4226 – HOTP: An HMAC-Based One-Time Password Algorithm. 2005 (englisch).
  13. RFC6238 – TOTP: Time-Based One-Time Password Algorithm. Mai 2011 (englisch).
  14. Stand Januar 2021, in der Version vom 12. Mai 2020
  15. Backup-format. In: andOTP wiki. Abgerufen am 2. Januar 2021 (englisch).
  16. Migration. In: andOTP wiki. Abgerufen am 2. Januar 2021 (englisch).
  17. [Unmaintained][App][4.4+][Open source] and OTP – Open source two-factor authentication for Android. In: XDA Forums. 14. Juni 2022, abgerufen am 24. Februar 2023 (englisch).
  18. Stand Januar 2021, in der Version vom 25. Januar 2016
  19. Willis, Nathan: FreeOTP multi-factor authentication. LWN.net, 22 January 2014
  20. FreeOTP, github.com
  21. FreeOTP+ | F-Droid - Free and Open Source Android App Repository. Abgerufen am 4. August 2022.
  22. Aegis Authenticator | F-Droid - Free and Open Source Android App Repository. Abgerufen am 8. Oktober 2021 (englisch).
  23. Microsoft Authenticator: So funktioniert die App. Von Nicole Hery-Moßmann, Chip.de, 29. Juni 2019
  24. Back up and recover account credentials using the Microsoft Authenticator app. Microsoft Docs, 3. Juni 2020
  25. FIDO 1.0 Specifications are Published and Final Preparing for Broad Industry Adoption of Strong Authentication in 2015, FIDO-Allianz, abgerufen am 12. Dezember 2014
  26. Dustin Ingalls: Microsoft Announces FIDO Support Coming to Windows 10 (Memento vom 15. Februar 2015 im Internet Archive), windows.com, abgerufen am 15. Februar 2015
  27. one-time password (OTP). TechTarget Network
  28. Mehrfaktor-Authentifizierung. A-SIT Zentrum für sichere Informationstechnologie, onlinesicherheit.gv.at; abgerufen am 8. Juli 2018.
  29. Twitter: Zwei-Faktor-Authentifizierung per SMS künftig nur noch für Abonnenten. Heise.de; abgerufen am 19. Februar 2023
  30. Elon Musk sagt, Twitter verlor 60 Millionen Dollar pro Jahr, weil 390 Telekommunikationsunternehmen Bot-Konten missbrauchten, um A2P-SMS hochzupumpen. Commsrisk.com; abgerufen am 19. Februar 2023.