Besser ist es, eine Tabelle anzulegen, wo alle ungültigen Login-Versuche geloggt werden, komplett mit Username, Passwort und IP.
Nur so kannst du im Nachhinein zB feststellen, ob sich ein User nur vertippt hat (man sollte gar nicht glauben, wie viele ein Passwort mit irgendeinem Monatsnamen haben - und da gibt es ja an die 12), oder ob es ein gezielter Angriff eines Bots ist.
Bei unserem CMS ist es glaub ich so, dass nach X Fehlschlägen innerhalb von Y Minuten das Script mit
PHP:1
| die('Bute-force attack detected; script stopped.'); |
beinhart beendet wird.
Etwas freundlicher wäre es, ab diesem Zeitpunkt nicht komplett auszusteigen, sondern zB eine Captcha anzuzeigen. So haben wir es hier bei den Downloads gemacht, da das sehr schnell auf den Traffic geht. Wird eine Datei von einer IP innerhalb von X Minuten Y mal aufgerufen, wird ein Captcha dazwischen geschalten.
LG, bmk.