Tipps für eine erfolgreiche Umstellung des SSO-Verfahrens Von Einmal-Passwörtern zur FIDO2-Authentifizierung

Ein Gastbeitrag von Vika Basarab & Igor Maxuk * Lesedauer: 6 min |

Anbieter zum Thema

Ob zu Hause, im Co-Working Space oder an anderer Ort und Stelle: Verteilte Development-Teams können überall arbeiten. Um die Multi-Faktor-Authentifizierung für Teammitglieder zu härten, wechselte Grammarly von OTP zu FIDO2. Hier berichtet das Unternehmen über die Umstellung, technische Anforderungen und Erkenntnisse.

Bei der Hardware-gestützten SSO-Authentifizierung fällt der Mensch der Unsicherheitsfaktor weg.
Bei der Hardware-gestützten SSO-Authentifizierung fällt der Mensch der Unsicherheitsfaktor weg.
(Bild: Bruno Brito / Unsplash)

Viele Unternehmen in der Tech-Branche haben hybride oder vollständige Remote-Arbeitsmodelle eingeführt. Während früher die meisten Developer Teams in einer Büroumgebung, also mit einer sicheren Internetverbindung und starken Verschlüsselungsprotokollen arbeiteten, können in der neuen Realität verteilte Teams von verschiedenen Orten aus arbeiten.

Dies ist allerdings mit dem Risiko von kompromittierten oder gestohlenen Anmeldedaten verbunden. So beispielsweise, wenn Dritte die Passwörter aufzeichnen können. Eine sichere Verbindung zu Primärsystemen für Entwickler wie AWS oder Gitlab ist für die sichere Arbeit an technischen Aufgaben wie der Entwicklung neuer Produkte und Dienstleistungen von entscheidender Bedeutung.

Multi-Faktor-Authentifizierung ist daher immer der erste Schritt, um die tägliche Routine zu beginnen. Entwickler arbeiten täglich mit mehreren Anwendungen und Systemen, so dass eine Single-Sign-On-, kurz SSO-Technologie den Anmeldeprozess deutlich vereinfacht und Zeit spart, da sie die Authentifizierung bei mehreren Diensten mit einem einzigen Satz von Anmeldedaten ermöglicht.

Jedoch stellt sich die Frage, was passiert, wenn der SSO-Prozess irgendwann einmal kompromittiert wird und jemand diese Anmeldedaten in die Hände bekommt. Es gibt verschiedene Technologien, die dies verhindern sollen, wie zum Beispiel Einmal-Passwörter (One-Time Password, OTP). Doch ist das wirklich immun gegen ausgeklügelte Cyberangriffe?

Das Softwareunternehmen Grammarly, das weltweit über 800 Mitarbeiter beschäftigt, von denen viele Softwareentwickler sind, führte einen internen Test durch, um die Schwachstellen des OTP-Systems zu ermitteln. Aufgrund der Ergebnisse beschloss das Unternehmen, auf den Authentifizierungsstandard FIDO2 umzusteigen.

Simulierter Cyberhack zeigt OTP-Lücken: das reflexartige „Ja“

Um den Authentifizierungsprozess zu verbessern, arbeitete das Sicherheitsteam von Grammarly mit einem White-Hat-Partner zusammen, um einen raffinierten Cyber-Hack auf das bestehende OTP-System zu simulieren. Sie erstellten eine Website, die die SSO-Anmeldeseite und -Adresse des Unternehmens nachahmte, und schickten E-Mails, in denen die Empfänger aufgefordert wurden, einem Link zu folgen.

Einige Teammitglieder folgten dem Link und gaben ihre Benutzernamen und Kennwörter ein. An dieser Stelle kommt die Multi-Faktor-Authentifizierung (MFA) ins Spiel, die eine Push-Benachrichtigung sendet und eine weitere Überprüfung der Anwenderinnen und Anwender verlangt, bevor der Zugriff auf die SSO-Sitzung gewährt wird. Einige akzeptierten diese MFA-Push-Benachrichtigung.

Warum war die Technik nicht in der Lage, das Angriffsszenario zu entschärfen? Erstens war die Phishing-Nachricht raffiniert und schien legitim zu sein. Zweitens hatten die Teammitglieder durch den täglichen Gebrauch einen schnellen Reflex entwickelt, auf eine mobile Authentifizierungsanfrage mit „Ja“ zu antworten.

Wechsel von OTP zu FIDO2

Nachdem das Team aus erster Hand erfahren hatte, wie anfällig OTP für Phishing-Angriffe ist, wusste es, dass es eine bessere Lösung brauchte. Deshalb wurde beschlossen, den FIDO2-Standard mit einer Kombination aus Yubico-Sicherheitsschlüsseln (YubiKeys) und biometrischen Lösungen wie Windows Hello und macOS TouchID zu implementieren.

Gemessen an anderen Sicherheitsverfahren ist FIDO2 ein relativ neuer Standard – die Unterstützung für ihn ist bei einigen Apps und Diensten noch immer in Arbeit. Außerdem ist es keine leichte Aufgabe, alle Teammitglieder weltweit dazu zu bringen, eine neue Art der Anmeldung zu übernehmen.

Schritt 1: Scoping

Der erste Schritt bei der Einführung bestand darin, festzustellen, welche Systemänderungen notwendig sind, um die bestmögliche Unterstützung zu bieten und sicherzustellen, dass die Benutzererfahrung reibungslos, bequem und konsistent über verschiedene Plattformen und Anwendungen hinweg ist.

Hier stießen wir schnell auf ein Hindernis, das „eingebettete“ Browser betraf. Ein eingebetteter Browser ist beteiligt, wenn sich eine native Anwendung mit SSO auf macOS authentifiziert, indem ein Safari-Fenster geöffnet wird, um Sitzungsinformationen zu erhalten.

Dies funktioniert mit Login, Passwort und OTP, aber der eingebettete Safari-Browser unterstützt FIDO2 nicht. Wir konnten keine direkte Lösung finden – und da wir in erster Linie Apple-Laptops im Unternehmen nutzen, mussten wir Workarounds einbauen, z. B. haben wir den Authentifizierungsprozess für unseren F5BigIP VPN-Client komplett überarbeitet.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Softwareentwicklung und DevOps

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Lessons learned

  • Zunächst müssen die Voraussetzungen geprüft werden, ob alle kritischen Systeme (VPN, SSO, SaaS, Cloud-Anbieter, On-Premise, Desktop-Anwendungen und Kombinationen davon) den FIDO2-Standard unterstützen.
  • FIDO2 kann das Passwort in SSO-Systemen noch nicht vollständig ersetzen. Es gibt immer noch Systeme, in denen Sicherheitsschlüssel nicht gut funktionieren, meist aufgrund mangelnder Unterstützung für die Web-Authentifizierung. Daher muss bedacht werden, wie Legacy-Dienste und -Anwendungen authentifiziert werden, die FIDO2 nicht unterstützen.
  • Mehrere Unternehmen entwickeln Lösungen für diese Probleme. Okta hat zum Beispiel FastPass entwickelt, das wir für native Anwendungen nutzen wollen.

Schritt 2: Trials

Einen Monat vor der großen Einführung haben wir Alpha-Tests mit kleinen Gruppen von Teammitgliedern gestartet. Bevor wir mit den Tests begannen, hatten wir bereits eine erste Dokumentation erstellt, z. B. FAQs und YubiKey-Einrichtungsanleitungen. Die Tests halfen uns, die Dokumentation zu erweitern und Engpässe und Unklarheiten zu identifizieren.

Der Yubikey generiert zufällig eine lange Textzeichenfolge, die vor Fehlbedienung allerdings auch nicht gefeit ist.
Der Yubikey generiert zufällig eine lange Textzeichenfolge, die vor Fehlbedienung allerdings auch nicht gefeit ist.
(Bild: Yubico)

Während der Tests haben wir wichtige Fallstricke aufgedeckt. Zum Beispiel kombinieren YubiKeys mehrere Sicherheitsschnittstellen. Eine davon funktioniert als OTP unter Verwendung eines virtuellen Tastaturtreibers; sie liefert eine zeitbasiert generierte Zeichenfolge wie „cifregrt...“, gefolgt von der Eingabetaste.

Wenn man jedoch beim Schreiben auf Slack versehentlich die Kontaktplatte der Taste berührt, kann es passieren, dass man diese zufällige Textzeichenfolge plötzlich an Hunderte von Kollegen und Kolleginnen sendet. Zum Glück haben wir herausgefunden, wie man dieses Verhalten abstellen kann.

Lessons learned

  • Testläufe bieten die Möglichkeit, schnell zu scheitern, falls die Annahmen oder die Umsetzung nicht funktionieren.
  • Darüber hinaus sind Testläufe ein wichtiges Mittel, um Feedback zu erhalten und die Benutzerfreundlichkeit zu verbessern. Die Lösung und die Handbücher müssen getestet werden, um zu sehen, wie sie mit den Geschäftsprozessen der Mitarbeitenden funktionieren.

Schritt 3: Rollout

Die Herausforderung beim Rollout von Sicherheitsschlüsseln besteht darin, dass dies nicht automatisch oder programmatisch erfolgen kann. Jedes Teammitglied muss die Schlüssel selbst einrichten. Bei Grammarly haben wir dieses Problem auf verschiedene Weise gelöst:

  • Wir machten FIDO2 zu einem erforderlichen Authentifikator in Okta, so dass die Nutzenden ihre biometrische Authentifizierung (TouchID) einrichten mussten.
  • Sobald ein Teammitglied eine Möglichkeit hatte, die YubiKeys zu erhalten, starteten wir einen vom IT-Team entwickelten Slack-Bot, um den Rollout zu überwachen. Wenn Benutzer die YubiKeys nicht einrichteten, wurden sie einmal pro Woche direkt vom Bot angeschrieben.
  • Parallel dazu sammelten wir automatisch Statistiken über die Adoptionsrate und schickten Benachrichtigungen über unseren Bot an die Führungskräfte von Personen, die die Schlüssel noch nicht eingerichtet hatten.
  • Zu guter Letzt, wenn ein Teammitglied mindestens einen Sicherheitsschlüssel registriert hatte, schaltete eine spezielle Automatisierung alle Faktoren außer FIDO2 aus.

Lessons learned

  • Um die Einführung zu beschleunigen, ohne die tägliche Arbeit zu beeinträchtigen, sollten die anderen Optionen so schnell wie möglich ausgeschaltet werden.
  • Mithilfe von automatisierten Benachrichtigungen (Bot) kann die Zielgruppe an die Fristen der Implementierung erinnert werden, damit das IT-Team es nicht manuell für jede Kollegin und jeden Kollegen machen muss.
  • Die Kommunikation ist einer der wichtigsten Bestandteile einer FIDO2-Einführung. Alle Mitarbeitenden sollten über die neuen Initiativen Bescheid wissen, verstehen, warum der Prozess geändert wird und welche Vorteile das für das Unternehmen bringt.

Schritt 4: Logistik

Grammarly hat im Jahr 2021 das hybride Remote-First-Arbeitsmodell eingeführt. Während dies den Mitarbeitenden in vielerlei Hinsicht zugute kam, bedeutete es für das IT-Team eine logistische Herausforderung bei der Bereitstellung von YubiKeys in mehreren Ländern.

Für neue Teammitglieder wird die Bulk-Upload-Funktion des Yubico-Unternehmensportals genutzt, um ihre YubiKeys zusammen mit ihren Laptops zu liefern. Für bestehende Teammitglieder wird ein Selbstbedienungsmodell verwendet, das es ihnen ermöglicht, Sicherheitsschlüssel bei regionalen Yubico-Händlern zu bestellen oder sie in einem der fünf Grammarly-Hubs abzuholen.

Lessons learned

  • Verantwortliche müssen sich auf die logistischen Herausforderungen einstellen und frühzeitig planen, z. B. wie sie mit verloren gegangenen Paketen umgehen werden.
  • Außerdem sollte bedacht werden, dass das regionale Händlernetz von Yubico zwar umfangreich ist, es aber immer noch Orte gibt, an denen die Schlüssel nicht vor Ort zu finden sind.

Zukunftsdenkend wäre die Optimierung der Logistik, indem eine Selbstbedienungslösung angeboten wird, mit der Teammitglieder schnell neue Schlüssel erhalten und alte ungültig machen können, wenn sie verloren gegangen sind - alles mit zwei Klicks.

* Vika Basarab ist Technical Program Managerin bei Grammarly, Igor Maxuk arbeitet bei Grammarly als Systemingenieur.

(ID:49196991)