Sicherheit beim Login erhöhen

Sicherheit beim Login erhöhen

Tagtäglich loggen wir uns im Internet an den verschiedensten Websites und Applikationen ein. Dabei vertrauen wir unserem Gegenüber und gehen davon aus, dass unsere Daten sicher sind. Schützt uns unser Login aber wirklich gut genug?

Der gängige Weg und seine Risiken

Während dem Login-Prozess, der Authentifizierung, prüft das System unsere Zugangsdaten. Dieser Schritt ist emminent wichtig, um unterschiedliche Benutzer von einander zu unterscheiden und um genau zu prüfen, ob die eingegebenen Zugangsdaten (Credentials) auch zusammen passen und gültig sind.

Jeder von uns kennt die übliche Login-Maske, die Benutzername und Kennwort abfragt:

Symbolbild: Login-Maske von Instagram
Symbolbild: Login-Maske von Instagram

Dieses Login birgt allerdings Risiken, insbesondere wenn die Verbindung zwischen Browser und Webserver unverschlüsselt ist. Theoretisch kann jeder, der die übermittelten Daten mitlesen kann, diese auch abgreifen. Mit diesen Daten kann sich jemand mit böser Absicht anschliessend als Benutzer ausgeben und die Identität des eigentlichen Benutzers kapern.

Im Idealfall ist die Verbindung natürlich verschlüsselt und das Mitschneiden und Interpretieren des Datenverkehrs zwischen dem Browser des Benutzers und dem Webserver ist somit nicht möglich. Zusätzlich wird oft ein SSL-Zertifikat zur Verschlüsselung der Verbindung dem Benutzer gegenüber eingesetzt. Dieses stellt sicher, dass das Gegenüber (der Webserver) auch effektiv die Website oder Applikation ist, die der Benutzer erwartet. Ohne diese Überprüfung könnte sich z.B. eine betrügerische Website als Website einer Bank ausgeben und Zugangsdaten in Erfahrung bringen (typisches Phishing).

Trotz verschlüsselter Verbindung bleibt ein grosses Risiko.

Die Zugangsdaten sind häufig unsicherer als wir denken: Die E-Mail Adresse oder "vorname.nachname" als Benutzername? Das ist höchst einfach zu erraten ... Passwörter wie der eigene Geburtstag, 1234 oder ein einfaches Wort? Auch das ist schnell herausgefunden ...

Zudem können Zugangsdaten auf dem PC des Benutzers ausgespäht werden durch Schadsoftware, die sich der unbedarfte Benutzer schneller einfängt als ihm lieb ist. Und diese Zugangsdaten werden sehr schnell - und auch voll automatisiert - ausgenutzt. Hat der Benutzer für unterschiedliche Websites dasselbe Kennwort verwendet, ist der Schaden noch schlimmer: Gelangt ein Angreifer in den Besitz des Kennworts, kann dieser im dümmsten Fall nicht nur auf das E-Mail-Postfach sondern gleich noch auf das Facebook-Profil und weitere Online-Accounts des Opfers zugreifen.

Gerade E-Mail-Konten sind besonders heikel und sollten mit einem sicheren Kennwort geschützt werden, da diverse Dienste z.B. um das Kennwort zurückzusetzen jeweils einen Link per E-Mail zustellen - über ein gekapertes E-Mail-Postfach ist also häufig auch der Zugriff auf andere Dienste (Facebook etc.) vereinfacht möglich.

Abhilfe bieten sichere Kennwörter, die nicht einfach zu erraten sind, sowie die Verwendung unterschiedlicher Kennwörter für jeden Online-Dienst. Zusätzlich gibt es eine weitere Möglichkeit, den Zugriff auf Web-Applikationen sicherer zu gestalten.

Der zweite Faktor

Schauen wir uns einmal das Online-Banking an: Dort ist eine höhere Sicherheit gefordert und seit Jahren gehört es zum Standard, dass nicht nur Benutzername und Kennwort als Authentifizierungs-Merkmale genutzt werden. Stattdessen setzen Banken beim Login auf ihre e-Banking Plattformen stets auf einen weiteren Faktor. Dabei ist es sekundär, ob es sich um eine Streichliste auf Papier oder eine andere technische Lösung handelt.

Beim Bargeld-Bezug am Automaten ist es genau das Selbe. Damit wir Geld erhalten, müssen wir mehr als die Kontonummer und den PIN-Code eingeben. Es braucht eine weitere Komponente: die Plastikkarte. Am Schalter widerum benötigt man neben der Kontokarte noch einen Ausweis.

Verschiedene technische Lösungen machen dies auch für die eigene Web-Applikation möglich. Zwei Kandidaten aus der Schublade der Zweifaktor-Authentifizierung (2FA) stelle ich hier exemplarisch vor. Obwohl technisch ganz unterschiedlich angesiedelt, folgen beide Lösungen dem gleichen Grundprinzip: Neben dem Benutzernamen und dem Kennwort fordern sie einen zweizen, physischen Faktor.

YubiKey - immer am Schlüsselbund mit dabei

Der YubiKey sieht aus wie ein USB-Stick. Durch Druck auf den einzigen Button auf dem Gerät, «tippt» dieser ein einmalig gültiges Kennwort ein, welches seitens der Web-Applikation validiert wird.

YubiKey Standard am Schlüsselbund - Quelle: Yubico YubiKey Standard am Schlüsselbund - Quelle: Yubico

Damit dies funktioniert, muss die Schlüssel-ID des YubiKeys vorgängig für das Benutzerkonto hinterlegt werden. So ist sichergestellt, dass nur der einmalig hinterlegte YubiKey für ein Benutzerkonto genutzt werden kann. Der Login-Ablauf erfolgt dann wahlweise in einem oder in zwei Schritten:

Schritt 1: Eingabe von Benutzername + Kennwort:

YubiKey Standard am Schlüsselbund - Quelle: Yubico Beispiel aus einem realisierten Projekt: Eingabe von Benutzername und Kennwort

Schritt 2: Authentifizierung mittels dem YubiKey Token:

Beispiel aus einem realisierten Projekt: Authentifizierung mittels dem YubiKey Tokens Beispiel aus einem realisierten Projekt: Authentifizierung mittels dem YubiKey Token[/caption]

Erst nach beiden Schritten gilt die Authentifizierung als erfolgreich und der Benutzer erhält Zugriff auf die Applikation hinter dem Login. Die zwei aufgezeigten Schritte können auch so festgelegt werden, dass beide Schritte zusammengefasst werden oder sich nur einzelne Benutzergruppen mit einem zweiten Faktor authentifizieren müssen. Dementsprechend wird nur der erforderliche Teil angezeigt, respektive abgefragt.

Ein erfolgreiches Login ist durch den Einsatz eines solchen One-Time-Passwords (OTP) nur möglich, wenn neben den weichen Faktoren wie Benutzername und Kennwort auch der physische Faktor in Form des YubiKey-Tokens vorhanden ist. Das erschwert einen Missbrauch massiv: Es genügt nicht, das Kennwort in Erfahrung zu bringen - man muss dem Benutzer auch noch etwas Physisches entwenden. Sofern man den YubiKey am Schlüsselbund aufbewahrt, sollte dies eher schwierig zu bewerkstelligen sein. Auf seinen Schlüsselbund passt der Otto-Normal-Benutzer in der Regel ziemlich gut auf.

Google Authenticator - immer im Handy mit dabei

Manche Leute tragen eher ihr Handy mit sich und weniger den Schlüsselbund. Eine Zweifaktor-Authentifizierung ist auch auf diesem Weg möglich. Exemplarisch für eine ganze Liste von OTP-Tools steht hier die Google Authenticator App, die sowohl für Android wie auch iOS basierte Geräte verfügbar ist.

Die Authentifizierung an einem Zweifaktor-Authentifzierungs-System dieser Art, erfolgt meist in zwei Schritten: Nach der Eingabe des Benutzernamens und des Kennworts erscheint die Aufforderung, eine sechsstellige Zahl einzutippen. Diese Zahl liefert die App auf dem Handy. Für die zusätzliche Sicherheit ändert sich die gültige Zahl nach kurzer Zeit.

Die Google Authenticator App in Aktion: Die dargestellte Zahl ändert sich alle 60 Sekunden.
Die Google Authenticator App in Aktion: Die dargestellte Zahl ändert sich alle 60 Sekunden.

Das Zeichen auf der rechten Seite neben der Zahl deutet an, wie lange diese noch gültig ist - nach 60 Sekunden ist sie bereits passé und eine neue Zahl wird angezeigt.

Wer soll dies nun nutzen?

Der technische Aufwand für die einmalige Integration wurde in den letzten Jahren massiv reduziert und eine sichere Mehrfaktorauthentifizierung ist damit auch für kleinere Websites und Applikationen erschwinglich. Trotzdem stellt sich natürlich die Frage, an wen sich diese Technologie nun richtet.

Grundsätzlich empfehlen wir eine Risiko-Analyse auf Basis der Art der verarbeiteten Daten: Generell haben Applikationen, die personenbezogene Daten verarbeiten, höhere Anforderungen an die Sicherheit als Applikationen, die keine «Geheimnisse» verarbeiten. Sollte Ihr nächstes Projekt mit sensitiven Daten umgehen, ist es sinnvoll, die Möglichkeit einer sichereren Authentifizierungslösung zu prüfen.

Auf welche technische Lösung Sie anschliessend tendieren ist sekundär und hängt individuell vom Projekt ab: Je nach Zielgruppe, Nutzertyp und Menge der zu schützenden Accounts bietet sich eher ein Hardware-Token wie der YubiKey an, oder eine OTP-App für das Handy wie der Google Authenticator.

Wir beraten Sie gerne und finden die ideale Lösung für Ihr Projekt.

 

Kopfbild: «The double locked door» von flickr-User "pat_ossa" (CreativeCommons lizenziert)