Bents Blog

 

Ein IT Blog mit Themen aus dem Windows Server Umfeld.

Zwei-Faktor-Authentifizierung mit VASCO

Heute möchte ich einmal einen Beitrag zu einer – von mir bevorzugten – Sicherheitslösung für Windows Umgebungen schreiben. Dabei geht es um die Idee des One-Time-Password (OTP), also einer Authentifizierungsmethode, bei der das Passwort des Benutzers nur für wenige Sekunden gültig ist. Das Ganze bezeichnet man im Deutschen auch als Zwei-Faktor-Authentifizierung.

Wie funktioniert diese Lösung? So einfach die Idee, so genial und sicher ist diese auch. Ähnlich wie bei einer Transaktion mit einer üblichen EC-Karte, benötigt der Benutzer bei einem OTP-Verfahren zwei Dinge: Er muss etwas haben und etwas wissen. Dafür benötigt man einen sogenannten Token, der, basierend auf einem speziellen Algorithmus, eine Zahlenkombination (Code) generiert und zusätzlich eine PIN. Der Tokencode wird dabei mit Hilfe der Seriennummer eines Tokens (um die Einmaligkeit eines Tokens zu gewährleisten) und einem integrierten Quarz zeitabhängig (um ca. aller 30 Sekunden einen neuen Code erzeugen zu können) berechnet – dieser ist nicht manipulier- bzw. änderbar oder etwa durch Rückwärts-Berechnung zu ermitteln. Ein solcher Token ist deshalb mit einer Batterie ausgestattet und funktioniert typischerweise für etwa 5 Jahre. Die PIN des Benutzers kann selbstverständlich vom Benutzer geändert werden, kann es doch einmal passieren, dass ein Dritter Kenntnis von ihr erlangt.

Das endgültige Passwort des Benutzers setzt sich dann aus der PIN und dem Tokencode zusammen. Damit kann bei Verlust des Tokens kein Dritter das Passwort „erraten“ ohne die PIN des Benutzers zu kennen. Im anderen Fall nützt einem Dritten auch die Kenntnis der PIN nichts, da diese ohne den aktuell gültigen Tokencode praktisch unbrauchbar ist. Alles in allem eine wirklich sichere und zuverlässige Authentifizierungsmethode für Anwender, die einen gesteigerten Wert auf die Sicherheit (im Bezug auf den Zugriff) ihrer Systeme legen.

Es gibt für diese Art der Benutzerauthentifizierung mehrere Anbieter, ich möchte hier die Lösung von VASCO vorstellen, die ich nicht nur in unserem Unternehmen, sondern auch für mehrere Kunden eingeführt und umgesetzt habe: den VASCO IDENTIKEY Server. (Vorgänger war VACMAN Middleware, diese Version ist aber abgekündigt.) Die Lösung besteht aus Hard- und Software, den Token und der Installation von Diensten im internen Netzwerk. VASCO selbst bietet viele verschiedene (für die unterschiedlichsten Sicherheitsanforderungen) Token-Typen an, für den Einstieg genügt hier bereits der Digipass GO 3 oder Digipass GO 6.

Die Token gibt es in 5er-Paketen, je nach endgültiger Benutzeranzahl gibt es Staffelpreise. Bleibt noch die Software, der VASCO IDENTIKEY Server. Die Software unterstützt alle aktuellen Betriebssystemversionen von Microsoft, also vom Windows Server 2003 bis hin zu 2008 R2 (inkl. Small Business Server) und bei den Clients Windows XP, Vista und 7. Für andere Betriebssysteme sowie alle restlichen Systemanforderungen möchte ich mir hier Erklärungen sparen, diese können in aktueller Version auf der Webseite von VASCO nachgelesen werden.

Die Installation der Serversoftware ist relativ unkompliziert, allerdings muss man sich im Vorfeld genaue Gedanken zu den benötigten Komponenten und möglichen Optionen machen. So benötigt der Server eine Datenbank, um die Daten der Token und Benutzer speichern zu können – für Umgebungen mit einer Domäne besteht aber die Möglichkeit diese Daten im Active Directory zu speichern. Meiner Meinung nach genial, da so keine neue Datenbank erstellt werden muss und bei mehr als einem Domänencontroller die Daten auch verteilt, also redundant, abgelegt werden. (Für unsere Installationen habe ich immer das AD benutzt.) Dafür erweitert VASCO einmalig das Schema, die Verwaltung der Token und zugeordneten Benutzer erfolgt später über die MMC Active Directory Benutzer und Computer.

Da auch die Attribute des Benutzerobjektes erweitert werden, kann man die Zuordnung und Verwaltung der Token und Benutzer direkt über die Eigenschaften eines Benutzers vornehmen.

Das restliche Management läuft Web-basiert und kann unter einem IIS installiert werden. Hier werden zentrale Optionen (Module) konfiguriert, Benutzer erhalten die Möglichkeit über eine eigene Self-Management-Seite ihre PIN zu ändern. Der VASCO IDENTIKEY Server beinhaltet außerdem einen RADIUS Server, mit dem beliebige Firewall-Systeme kommunizieren können, um Benutzer, die sich über das Internet einwählen, via RADIUS Authentifizierung im Backend anzumelden. Bei unseren Systemen nutzen wir typischerweise einen Microsoft ISA Server 2006 bzw. TMG 2010, die Konfiguration für den VPN-Clientzugriff ist hier innerhalb von wenigen Minuten abgeschlossen.

Wenn sich ein ein Domänennutzer nun via VPN einwählen will, muss er nur noch den integrierten VPN Client starten (und natürlich mit richtiger Zieladresse konfigurieren) und anschließend seinen Benutzernamen und sein OTP eingeben:

Die Firewall leitet das OTP an den VASCO IDENTIKEY Server via RADIUS (verschlüsselt) weiter, welcher die Daten mit seinen internen Werten und Algorithmen (Zeit, Token-Seriennummer) vergleicht. Bei Erfolg wird der Benutzer authentifiziert, im Fehlerfall abgewiesen. Die Fehler werden selbstverständlich gezählt, im Standard wird ein Nutzer mit 3 falschen Passwörtern im AD gesperrt – aus diesem Grund darf im VPN Client niemals das Passwort gespeichert werden.

Als besondere Erweiterung hat VASCO noch den DIGIPASS Authentication for Windows Logon im Angebot. Dabei handelt es sich um einen Austausch der Winlogon bzw. GINA-Komponente auf einem Clientgerät.

So kann der Benutzer auch bei interner Anmeldung an der Domäne das OTP-Passwort nutzen und muss sich nicht mehrere Passwörter merken. Die Authentifizierung geschieht dann automatisch durch den VASCO IDENTIKEY Server.  Das Ganze funktioniert selbstverständlich auch für Terminalserver 2003/2008.

Fazit

VASCO bietet mit seinen Produkten eine enorme Steigerung der Sicherheit nicht nur für die Authentifizierung von Remote-Einwahlen. Gerade für kleinere und mittlere Unternehmen bietet VASCO – nach meinen Erfahrungen – das beste Preis-Leistung-Verhältnis. Wer Fragen zum Produkt hat kann diese hier als Kommentar hinterlassen, wer Interesse an einer Lösung von VASCO hat, meldet sich besser gleich in der Firma für die ich arbeite.

Einen Blog am Leben zu erhalten kostet Zeit und Geld. Da ich auf meiner Seite weder Werbung einbinde, noch andersweitige Zuwendungen erhalte, freue ich mich über jede kleine Spende. Einfach und unkompliziert geht das über PayPalMe. Du unterstützt damit diesen Blog. Vielen Dank.