Passwort vergessen - sicher programmieren vor Hackern

Hi,

ich überlege grad was der beste Schutz vor Hackern ist.

Ein Script zu schreiben das verschiedene Passwörter testet ist einfach, aber wir sperrt man die die 100 Passwörter testen?

IP Sperre? Macht kein Sinn bei großen Unternehmen, wo viele PCs dahinter stecken

Session Sperre? Hier muss nur der Browser geschlossen werden

Cookie Sperre? Hier muss man nur die Cookies löschen…

Kennt ihr hier einen guten Weg?

CAPTCHA…?

Es ist immer die Frage, wovor genau du dich schützen willst (gezielter Angriff? Scriptkiddies? Bots? Rachsüchtiger Ex-User? Rachsüchtichtiger Ex-Mitarbeiter? Kennt der Angreifer Benutzername und rät nur das Kennwort? Oder rät er beides? Welche Ressourcen hat er?), wie wahrscheinlich das Eintreten ist und was der Impact der Sicherheitsmaßnahmen für die anderen Nutzer ist.

Am Ende wird es sowieso eine Kombination verschiedener Möglichkeiten; was zum Arsenal IMHO noch gehört:

  • Account Flaggen

  • Stillen Alarm auslösen

  • Account zeitweise oder dauerhaft sperren

  • Anwendung komplett sperren

  • Teergrube

Aber wie gesagt: Was du wann wie einsetzt richtet sich nach dem Angriffsszenario (wer, wie, usw.).

Interessante Ansätze, jedoch nicht so einfach umzusetzen.

Beispiel: Ein Bot befindet sich hinter eine Uni IP. Nun benutzen 2000 Studenten die Seite. Wenn ich den Bot nun ausschließe für sagen wir mal 10 Stunden, dann können die anderen Studenten sich kein PW zurückschicken lassen

Was genau meinst du mit Teergrube?

Ich glaube er meint die "echte" Teergrube.

Accounts flaggen / temp block halte ich für sinnvoll. Sprich mehr als 5 falsche Logins auf einer UserID -> Accountblock für 15 Minuten. Zusätzlich halt Cookie / Session lock bei mehr als 5 falschen Logins, unabhängig von der ID. Hält zumindest die wannabes vom Hals. Bei übermäßigem LoginTraffic von einer IP muss halt in den Captcha Apfel gebissen werden.

Das ist für den Login, aber dein Titel lässt vermuten, dass du die Passwort vergessen funktion sicher schreiben willst. Da sollte ein (gutes) Captcha + account als pw requested flaggen reichen.

VG

rho

Danke rhomb,

habe nun folgendes noch eingebaut

  • Wenn für eine Email mehr als 5 falsche PWs eingegeben worden sind, dann wird die Email für 5 Minuten geblockt

  • Wenn eine SESSION mehr als 3 Emails versucht hat, dann wird die SESSION geblockt

  • Wenn eine IP zu oft Passwörter falsch eingegeben hat, dann wird ein Captcha eingebunden

Das sollte die meisten Bots abhalten ;)

Und dann nimmst noch die Teergrube (aka Honeypot) dazu.

Bei der Teergrube handelt es sich um einen trick um Bots zu detecten. Bots sind in der Regel so angelegt, dass Sie alle Felder ausfüllen (auch die Unsichtbaren e.G. hidden fields). Genau da platziert man die Teergrube oder den Honeypot. Du legst ein inputfeld an und setzt das html attribut auf hidden, dann checkst du im validator ob dieses Feld ausgefüllt wurde, falls ja handelt es sich wahrscheinlich um einen Bot.

Was du dann machst ist dir überlassen ;)

Grüße,

Seb