Martins key.matique-Blog

>> Zurück zum Artikelverzeichnis >>


Aussperren! –
Aber nur die Bösewichte!

Geschrieben: 18.03.2019

Was ist ein "Lockout"?

Es ist eine Aussperrung und zwar im Zusammenhang mit Anmeldeverfahren die Sperrung der Anmeldung nach mehreren fehlerhaften Versuchen.

Wir kennen Sie von Chipkarten (z. B. nach dreimaliger falscher Eingabe der PIN), oder auch bei PCs bei denen man einstellen kann, dass die Anmeldung nach einer Anzahl Fehlversuchen für eine Zeitlang gesperrt wird.

Auch die Sperrung eines Online-Banking-Zugangs nach dreimalig falscher TAN-Eingabe ist solch ein Lockout.

Wann sind solche Aussperrungen sinnvoll?

Wenn bei der Anmeldung die Zwei-Faktor-Authentisierung (2FA) verwendet wird, der Benutzer kurzfristig informiert werden kann und der mutmaßliche Angreifer einen Faktor vorgewiesen hat.

Warum nur bei 2FA?

Weil sonst z. B. bei key.matique Boxen von Hackern durch bewusst fehlerhafte Anmeldung mit der E-Mail-Adresse lahmgelegt werden können. Eine E-Mail-Adresse ist von Natur aus nichts sehr Geheimes, Hunderte von Millionen dieser Adressen sind definitiv im Besitz von Hackern. Man kann eine E-Mail-Adresse aber nicht so leicht ändern wie ein Passwort, weil sie in aller Regel nicht nur zwei, sondern viele, oft auch unbekannte, Kommunikationteilnehmer betrifft.

Die Angabe der E-Mail-Adresse anstelle des Box-Namens zu verbieten, würde die Bequemlichkeit der Benutzer einschränken ohne allzu viel zu bringen, da Box-Namen in der Regel kurz und daher leicht erratbar sind. Sie länger zu machen, bringt auch nichts Gutes. Es würde die Benutzer nur dazu treiben die Passworte dann zu verkürzen, weil die menschliche Merkfähigkeit beschränkt ist. Und da Passworte besser geschützt sind als Boxnamen, sollten eher diese lang gehalten werden.

Bei der 2FA muss aber der zweite Faktor nicht auswendig gelernt werden. Bereits einen der beiden Faktoren zu ermitteln, ist auch für einen Hacker schwer. Sollte er es dennoch schaffen, so ist für einen Lockout der richtige Zeitpunkt gegeben, denn nun wird es ernst.

Der Box-Eigentümer wird informiert, kann den kompromittierten Faktor austauschen, während der Angreifer in der Regel nicht einmal erfährt, dass er einen Faktor geknackt hatte. Er wird jetzt nicht nur durch den verbleibenden Faktor sondern auch durch den Lockout von der Box ferngehalten, ohne dass ihm ein Grund genannt wird.

So ist es zumindest bei key.matique. Der konkrete Grund für die Ablehnung der Anmeldung wird nicht in der Anmeldemaske genannt, sondern per E-Mail dem Box-Eigentümer mitgeteilt. Das ist zwar etwas umständlich, aber dadurch wird vermieden, dass Angreifer Details über die Box erfahren und ihre Angriffe optimieren können.

Aber bei Chipkarten und PCs geht es doch ohne 2FA, oder?

Nein, denn ohne den Besitz der Chipkarte oder des PCs (als ersten Faktor) geht es auch hier nicht. PIN oder Kennwort sind erst der zweite Faktor.

Wenn man sich aus dem offenen Internet heraus an einen Computer anmelden kann (also bei Server-Logins), und dabei kein zweiter Faktor geprüft wird, wäre ein Lockout bei Fehlversuchen ebenfalls fatal. Leicht könnten dann Angreifer DoS-Angriffe (DoS = Denial of Service) ausführen.

Warum sollte der Box-Besitzer erreichbar bleiben?

Weil sonst die Gefahr zu groß wird, dass der Box-Besitzer sich selbst durch Vertippen oder andere kleine Fehler aussperrt und dann nur noch über ein Ticket die Anmeldung entsperren kann.

Denn wir wollen einem potentiellen Angreifer keine Informationen geben, ob die Box durch 2FA geschützt ist oder nicht, ob die starke oder schwache Variante gewählt wurde, ob Lockouts aktiviert sind oder nicht. Solche direkten Informationen wären aber notwendig, wollten wir das Lockout-Verfahren auch anonymen Boxen (also solchen ohne E-Mail-Adresse) anbieten. Wir würden damit aber Boxen neuer Benutzer, die sich erst noch mit 2FA und Lockouts beschäftigen müssen, verstärkten Brute-Force-Angriffen aussetzen, da sich Hacker dann auf diese konzentrieren könnten.

Weniger ist hier also mehr. Es bleibt zwar das Risiko, dass der Angreifer die E-Mail mitschneiden kann, also dann doch erfährt, welcher Faktor ihn am Zugriff hindert. Aber dieses Risiko ist natürlich weitaus geringer, als wenn wir es ihm gleich offen sagen.

Immerhin erfährt der Box-Besitzer seinerseits, dass einer der beiden Faktoren kompromittiert ist und kann daher in aller Regel noch rechtzeitig Gegenmaßnahmen treffen.

Wie läuft das Ganze praktisch ab?

Wenn bei einer key.matique-Anmeldung mit 2FA ein Faktor richtig und der andere fünfmal hintereinander falsch ist, so wird der richtige Faktor für eine gewisse Zeitlang gesperrt. (Er wird verdächtigt, kompromittiert zu sein.) Werden danach beide Faktoren wieder richtig eingegeben, so wird die Lockout-Logik zurückgesetzt. (Der Verdacht wird wieder fallen gelassen). Kommt es dagegen zu weiteren fünf Fehlversuchen, so wird wieder, jetzt aber für eine längere Zeit, gesperrt. (Der Verdacht verdichtet sich.)

Die erste Sperrzeit beträgt zwei Minuten, danach sind es zehn Minuten, dann ist es eine Stunde, dann sind es vier Stunden, dann ein Tag und schließlich eine Woche.

Nach insgesamt 35 Fehlversuchen wird der richtig angegebene Faktor als kompromittiert betrachtet und dauerhaft gesperrt. (Versuche während der Sperrzeiten werden bei den 35 Fehlversuchen nicht mitgezählt.)

Warum so viele mögliche Fehlversuche? Warum werden die in den Sperrzeiten nicht mitgezählt?

Wir wollen möglichst verhindern, dass Box-Eigentümer sich selbst aussperren. Die Sperrzeiten geben dem regulären Eigentümer die Chance, Fehlerursachen zu erkennen. (Vielen Nutzer tendieren sonst dazu, übereilt unzählige Fehlversuche zu unternehmen.)

Für einen Hacker sind dagegen 35 Versuche nicht viel.

Während der Box-Besitzer um die Sperrzeiten weiß, erfährt der Hacker da­rü­ber in der Regel nichts, d. h. wenn er weiterhin unzählige Angriffe unternimmt, haben dennoch höchstens 35 davon den Hauch einer Chance.

Aber würde key.matique übereilig Faktoren permanent sperren, könnte es zu Kettenreaktionen führen, wie weiter unten besprochen, vermutlich mit dem Ergebnis, dass der ganze Lockout-Mechanismus von den Benutzern abgelehnt würde, was für die Sicherheit auch nicht gerade förderlich wäre.

Die Balance zwischen Sicherheit vor Angriffen und vor Selbstaussperrung finden

Vielleicht überrascht es Sie, zu erfahren, dass diese Balance zu finden, gar nicht so schwierig ist:

Bei Chipkarten mit einer PIN kann es drei Fehlversuche geben, bevor die Chipkarte gesperrt wird. Selbstaussperrungen sind dort eher selten. Bei key.matique sollten die bis zu 35 auf sieben Etappen verteilten Versuche vor der permanenten Sperrung eines Faktors reichen, um Selbstaussperrungen in aller Regel zu verhindern.

Aber wie steht es mit der Sicherheit vor Angriffen?

Die Chance, bei drei Versuchen, eine vierstellige PIN zu erraten, liegt bei einem drittel Promille. Ähnlich hoch liegt das Risiko, wenn Sie Ihr Kennwort blind aus einem Wörterbuch mit 100.000 Einträgen herauspicken, bei 35 Versuchen. Doch bereits die Kombination zweier solch einfacher Wörter würde dieses Risiko auf eins zu 300 Millionen absenken.

(Bitte nicht falsch verstehen: Ich halte keineswegs die dementsprechende Kennwortstärke von 33 Bit für ausreichend. Denn das Hauptkennwort soll nicht nur direkte Anmeldungen von Hackern verhindern, sondern wird ja auch für die sichere Verschlüsselung der Geheimnisse benötigt.)

Was ich mit diesem Vergleich aber zeigen möchte: Sie können mit key.matique sowohl bezüglich des Risikos von Angriffen als auch der Selbstaussperrung locker weit besser liegen als bei einer Chipkarte.

Wenn aber doch ein Box-Eigentümer ausgesperrt wird?

Dann kann er ein Ticket anlegen und die Entsperrung beantragen. Er wird dabei in der Regel auch ein neues Hauptkennwort setzen wollen. Denn entweder war dies der kompromittierte Faktor eines Hacker-Angriffs oder er selbst wusste nicht mehr sein Hauptkennwort und hat dann wegen vielfacher falscher Eingabe dessen die Sperrung seines Geräts oder Anmeldeschlüssels verursacht.

In jedem Fall macht es Sinn, das Hauptkennwort neu zu setzen und auch das Gerät des Eigentümers zu entsperren. Fällt dem Box-Besitzer das alte Hauptkennwort noch ein, wird er es dann in der Box nachtragen können, um seine Geheimnisse zu entschlüsseln. Ansonsten braucht er dafür natürlich eine Hinterlegung.

Könnte das Verfahren vielleicht umgangen werden?

Wenn ein Angreifer einen Faktor ermittelt hat und sich bei den Angriffen auf den zweiten Faktor Zeit lässt, könnte vielleicht das Lockout-Verfahren versagen: Der Box-Eigentümer wird sich immer mal wieder selbst anmelden, mit dem erratenen Faktor und einem gültigen zweiten Faktor. Damit würde das Lockout-Verfahren für den kompromittierten Faktor unterbrochen.

Damit der Box-Besitzer davon nichts erfährt, dürften aber keine fünf Fehlversuche hintereinander mit dem kompromittierten Faktor ausgeführt werden. D. h. die Angriffsfrequenz müsste schon reichlich gering sein.

Betrachten wir es genauer: Wenn der kompromittierte Faktor das Hauptkennwort ist und die Angriffsversuche gegen Geräteeinträge und Anmeldeschlüssel laufen, so ist bei einer geringen Angriffsfrequenz kein Erfolg zu erwarten. Geräteschlüssel und permanente Anmeldeschlüssel sind jeweils zufällig gewählt und haben 256 Bit Stärke. Temporäre Anmeldeschlüssel haben zwar weniger Bit, sind aber durch Schlüsselstreckung verstärkt, so dass auch hier während ihrer Lebenszeit mit Brute-Force-Methoden nichts auszurichten ist.

Nehmen wir einen anderen Fall: Der angegriffene Faktor ist das Hauptkennwort, der kompromittierte ein Gerät-Cookie (das der Hacker über irgendeinen Weg vom Rechner des Box-Besitzers kopiert hat).

Wenn der Box-Eigentümer das Gerät, auf dem das Original-Cookie gespeichert ist, noch besitzt und sich damit in der Box anmeldet, so wird dieses Cookie regelmäßig geändert und die alte Fassung würde also nicht mehr akzeptiert. Angesichts der geringen Angriffsfrequenz bleiben also nicht viele Möglichkeiten, das Kennwort zu erraten.

Hat der Box-Eigentümer das Gerät mit dem Original-Cookie verschrottet, so sollte er natürlich den entsprechenden Geräteeintrag aus der Geräteliste nehmen, womit der Hacker wiederum das Nachsehen hätte.

Letzter Fall: Der kompromittierte Faktor ist ein Anmeldeschlüssel, im schlimmsten Fall ein permanenter, der angegriffene Faktor wiederum das Hauptkennwort. Dieser permanente Anmeldeschlüssel wird aber vom Box-Besitzer in aller Regel selten verwendet. Damit ist aber die Wahrscheinlichkeit hoch, dass, wenn es überhaupt eine relevante Angriffsfrequenz gibt, der Hacker in Folge fünf Angriffe startet bevor der permanente Anmeldeschlüssel vom Eigentümer wieder verwendet wird. Und damit fliegt der Angriff auf und der Eigentümer hat die Chance den Schlüssel durch einen neuen zu ersetzen.

Die Schwächen des Verfahrens sind also durchaus begrenzt. Auf alle Fälle sind sie weit geringer, als die Risiken die ohne das Lockout-Verfahren noch bestehen würden.

Könnte es eine Kettenreaktion geben: Ein Faktor wird gesperrt und führt dann zur Sperrung des nächsten, ...?

Wenn ein Faktor definitiv kompromittiert ist, würde in der Tat seine seine weitere Benutzung mit einem anderen gültigen Faktor zusammen auch letzteren verdächtig erscheinen lassen, d. h. bei mehrfacher Wiederholung zu einer Sperrung führen.

Aber solange ein Faktor nur temporär gesperrt ist, ist der Verdacht nicht ansteckend. Alles andere wäre fatal: Natürlich wird ein Benutzer, der sich bei einem Faktor geirrt hat, versuchen, diesen durch einen gültigen zu ersetzen. Sollte der andere Faktor bereits gesperrt sein, und wäre bereits ein bloßer Verdacht ansteckend, so könnte es schnell zu Verdachtslawinen und vollständigen Aussperrungen von Benutzern kommen, ohne dass es wirkliche Hackerangriffe gab.

Zusammenfassung

Wir haben es bei dem Lockout-Mechanismus mit einem starken Sicherheitsverfahren zu tun, das das Risko des Eindringen von Hackern in eine Box über die normale Anmeldung gegenüber der 2FA ohne Lockouts nochmals drastisch verringert.

Allerdings ist das Verfahren nur praktikabel bei 2FA und Erreichbarkeit des Box-Besitzers über E-Mail.


>> Zurück zum Artikelverzeichnis >>