Warum eine Consumer Technologie im Unternehmen Sinn machen kann?

Die passwortlose Anmeldung ist hier der absolute Treiber und der macht auch Sinn und wird seit 10 Jahren propagiert. Bei Fast Identity Online (FIDO) landet nur der public key beim Webdienst-Anbieter oder in der Cloud und die private key Operation wird damit verifiziert. Das ist hoch sicher (non-repudiation), so wie wir das von zertifikatsbasierten Anmeldungen mit Smart Cards kennen.

Das Gemeinsame dieser Technologien sind zum Ersten das asymmetrische Verfahren und zum Zweiten die Hardware basierte Security. Der User beweist seine Identität mit dem Besitz (Haben) und Zugriff (Wissen) auf den private key und auch das Nonce wurde nicht manipuliert.

Danke an Ralph, Martin, Whitfield, Ron. Adi und Leonard, die uns Mitte der 70er Jahre diese Möglichkeiten aus den Tiefen der Zahlentheorie schöpften.

Einige praktische Möglichkeiten, für «passwordless authentication», die man heute in Erwägung ziehen kann, sind hier mal aufgelistet und meine persönlichen Präferenzen für Zertifikate lassen ich mal aussen vor.

  • Smart Cards schon seit mehr als 25 Jahren
  • Windows Hello for Business (key based & certificate based )
  • FIDO2
  • Hypr
  • Passkey

Details findet man immer noch unter: https://www.tec-bite.ch/passwordless-authentication-or-normal-it-madness/

Der Vorteil von FIDO ist, dass wir ohne Zertifikate und PKI auskommen. Das ist jedoch auch ein Nachteil, denn im Unternehmen benötigen wir dann einen Identity Provider – in der Regel MS Entra ID, Okta, Entrust, gluu, ForgeRock, Ping oder auch Thales STA –, um ein Ablaufdatum für Accounts zu definieren, den Zugriff zu deaktivieren sowie grundlegende Funktionen wie das Entsperren von Tokens oder das Zurücksetzen von PINs und ähnliche Anforderungen zu erfüllen.  Weitere Nachteile sind, dass typische Zertifikatsanwendungen, wie E-Mail, Dokumenten- oder code Signing, Verschlüsselung sowie starke Authentisierung am Desktop mit einem Domänenkonto ausgeschlossen sind. FIDO ist – wie der Name schon sagt – für Identifikation, also Anmeldungen und den Einsatz im Web konzipiert, basiert auf ECC und ist letztlich lediglich ein Public-Private-Key.

Aber es hilft uns entscheidende Herausforderungen heute und jetzt anzugehen:

  • Resistenz gegen Phishing und man-in-the-middle Angriffe
  • Nutzbarkeit an quasi jedem Gerät in Kombination mit USB-C and NFC
  • Anforderungen von Cyber-Versicherungen und Regularien erfüllen Common Criteria, eIDAS, French ANSSI, FIPS 140-2, FIPS 140-3, FIPS 201

FIDO im Unternehmen

Was macht nun FIDO so sexy für den Einsatz in Unternehmen? Manche behaupten sogar «the future authentication technology any enterprise should invest in». Wie oben bereits erwähnt, benötigt man weder Zertifikate noch eine PKI. Man verfügt per se über eine Key Attestation – das heisst, es wird ein zertifiziertes Gerät verwendet, um den Private Key zu speichern. Wenn ein User einen FIDO-Stick bekommt und diesen verwendet, generiert er bei der Registrierung auf der Website einen pivate key auf dem Stick und der public key wird auf der Website hinterlegt. Die nächste Authentisierung kann nun mit dem public key verifiziert werden.

Damit sind wir phishing-resistant und für man-in-the-middle attacks unangreifbar. Es werden keine shared secrets ausgetauscht oder irgendwo gespeichert. Damit ist auch das Risiko des Verlusts von Credentials quasi ausgeschlossen, auch wenn der Client-Computer des Benutzers oder der Cloud-Anbieter ins Visier genommen wurde.

Aber fehlt uns da nicht irgendwas? Fordern wir nicht, dass Benutzerkonten ein Ablaufdatum haben? Benötigen wir nicht Wiederherstellungsmechanismen und Deaktivierungsmöglichkeiten, wenn der Benutzer das Unternehmen verlässt? In Unternehmen ist das zwingend notwendig, für Consumer stand das nicht im Fokus der Entwicklung, und hier kommt nun der Identity Provider (IdP) zum Tragen. Alles, was wir mit Zertifikaten und dem Smart Card Management schon lange haben, muss nun nochmals wieder erfunden werden. Dafür nimmt man geeignete IdPs. Zum Glück verwenden ja so viele MS Entra ID oder andere IdPs und diese bieten nun seit einiger Zeit FIDO2 Support, aber auch certificate based authentication. Wir können also wählen.

Es stellen sich weitere Aufgaben oder Anforderungen, die wir mit Smart Cards lange kennen. Hier helfen die Erweiterungen mit FIDO2.1 und den Enterprise Featurs von Thales.

FIDO 2.1

  • PIN Länge festlegen, PIN ändern und
  • PIN Eingabe forcieren

Enterprise feature Thales

  • Zentrales Management der FIDO Credentials
  • Provisionieren der Credentials im IdP
  • Einschränkung der Verwendung des Tokens oder Karte an unternehmensrelevanten Diensten
  • Unblock Token

Supported IdPs

Die ganze Übersicht finden Sie hier: https://cpl.thalesgroup.com/access-management/fido-compatible-services

Smart Card (cba)FIDO2IdP
HardwareXX
Phishing-resistantXX
Asymmetric authenticationRSA/ECCECC
Trust – certificate chainX
ValidityXX
RecoveryXX
SubjectXX
Exended key usageX
RSAX
ECCXX
Key lengthX
Unblock / Unlock Token / CardXNein – erst mit FIDO2.1
Recovery accessXX
PIN enforcementimmerNein – erst mit FIDO2.1
Einschränkung auch WebdiensteVia EKUnein - erst mit EF

Passkey

Passkey ist im Grunde eine Adaption von FIDO auf dem Smartphone. Der Schutz des privaten Schlüssels obliegt hier dem Hersteller des OS und damit es für den User so richtig benutzerfreundlich wird, macht der Hersteller noch ein Backup in seiner Cloud und verteilt den Schlüssel auf alle mobilen Geräte – was die Grundidee von FIDO konterkarriert. Sicherheit ist hier nicht an erster Stelle.

Die offizielle Erläuterung finden Sie hier – Was sind Passkeys?

Insbesondere:

Privater Schlüssel oder Key: Dieser befindet sich auf dem Gerät des Benutzers, z. B. einem Smartphone. Er verlässt das Gerät nie und ist immer durch eine starke Form der Benutzerverifizierung geschützt.“

aber

Passkeys funktionieren auch über verschiedene Geräte. Dank sicherer Ökosysteme werden die privaten Keys über alle Geräte hinweg synchronisiert, so dass die Authentifizierung auf jedem Gerät, auf dem ein Cloud Konto wie iCloud oder Google aktiv ist, einwandfrei funktioniert.“

Also verlässt der private key den TPM, die Secure Enclave etc doch und wandert via Cloud auf die anderen Geräte.


Hardware

Mit den Thales FIDO Token erschliessen sich diese Wege und auch die Kombination mit Smart Cards und zertifikatbasierten Authentisierungen sind möglich. Die Zertifikate auf einer Smart Card können natürlich für vieles weitere eingesetzt werden:

  • Encryption
  • Dokumenten- und Email-Signatur
  • Delegation von Aufgaben (dertificate request agent)
  • Smart card Logon am Desktop gegen ein ActiveDirectory oder sonstige Lösungen, die cba unterstützen

Verschiedene Varianten der Token und Karten die aktuell von Thales geboten werden und in Europa produziert werden:


FIDO und PKI (certificate based)

Die Kombination von beiden Welten ist auch mit Thales Karten / Token möglich. So ist man für alle Fälle gerüstet. Die traditionelle Welt wird mit Zertifikaten bedient, und für Applikationen, Webdienste, die nur FIDO unterstützen, hat man eine Alternative.

Auch Kombinationen mit der typischen Verwendung aus dem RFID-Bereich wie Gebäudezutritt, Zeiterfassung, Bezahlfunktionen, Secure Printing lassen sich auf Karten kombinieren. PKI-Funktionen, FIDO und Legic vereint auf einer Karte.

Der FIDO Manager von Thales ist eine stand-alone Applikation, um auch die erweiterten FIDO Feature zu verwalten.

  • Manage Mode
  • Definieren der erlaubten Webdienste
  • Unblock FIDO token
  • Reset FIDO Token
  • PIN Länge setzen
  • Setzen und Ändern des PINs

Deployment & Management

Im Standard FIDO2 ist das Management des Lifecycles eine reine Enduser-Aufgabe und die übliche Unterstützung, wie wir sie von Smart Cards kennen, dem User eine Karte fully staged zur Verfügung zu stellen und den Benutzer mit einem Reset des PIN oder einem Unlock der Karte oder des Tokens zu unterstützen, gibt es nicht.

Mit einem Credential Manager wie Versasec’s vSEC:CMS wird das Provisionieren der Token oder der Karten für die Mitarbeiter nun deutlich vereinfacht.

  • Provisionieren des Tokens oder der Karte im MS Entra ID Account oder anderen IdPs
  • Setzen des Admin PIN für das Unblocking,
  • PIN Länge festlegen, Erzwingen der Änderung des PINs bei der ersten Verwendung
  • Inventarisierung
  • Beschränkung der Verwendbarkeit,

Das sind alles Aufgaben, die per Richtlinie umgesetzt werden können.

Als weitere Enterprise Feature kommen hinzu:

  • Provisionieren des FIDO-Token zu mehreren IdPs
  • FIDO Management for keys with HID Interface
  • General CTAP2.1 support
  • PKI/FIDO PIN Policy bei der Schlüsselaktivierung

Fazit

FIDO2 ist zu einer Technologie gereift, die wir unbedingt nutzen sollten, wenn Zertifikate auf einer Smartcard nicht eingesetzt werden können, keine PKI vorhanden ist oder mobile Geräte wie Tablets und Smartphones dies nicht zulassen. Durch die Kombination von FIDO und PKI auf einem Token stehen uns beide Welten offen.

Die Fragen, die man sich stellen sollte, sind für mich:

  • Wo soll die sichere Authentisierung eingesetzt werden?
  • Welche Enduser-Geräte sind im Einsatz?
  • Möglichst ein Verfahren für alle Anwendungen direkt oder über den IdP mit SAML oder OIDC
  • Wie ist das Enrollment für den Endbenutzer?
  • Was passiert, wenn es nicht funktioniert (unblock Token, reset PIN remote, offline)?