Sven Rautenberg: Basic-Auth gegen Brute-Force schützen

Beitrag lesen

Moin!

Die Sache ist nur die, wenn jemand ganz unbehelligt Passwörter ausprobieren kann, der Server schafft sicher einige 100 Versuche in der Sekunde, und wenn man nichts dagagan tut steigt mit jedem Versuch die Wahrscheinlichkeit vielleicht doch mal einen Glückstreffer zu landen.

Aber was willst du dagegen tun? Klar, du kannst Username und Passwort auswechseln. Mit Glück führt der Angreifer Buch und probiert Kombinationen, die schon mal dranwaren, nicht nochmal aus. Und du weißt vielleicht, welche Kombinationen schon probiert wurden, und könntest so das Passwort "passend" ändern.

Aber welches Risiko gehst du tatsächlich ein. Rechne dir doch mal aus, wie lange man ausprobieren müßte, um ein Passwort der Länge X per Probieren herauszufinden. Wenn dir die Sicherheit durch ein so langes Passwort nicht genügt: Mach es doppelt so lang. Niemand hindert dich daran, ein 32 Zeichen langes Passwort zu nehmen. Zusammen mit MD5-Codierung dieses Passwortes in der .htpasswd-Datei dürfte es unmöglich sein, per Zufall einzubrechen. Die normale crypt-Codierung erlaubt nur maximal 8 Zeichen, das wäre wahrscheinlich schlecht.

Und wenn du wirklich einen Hochsicherheitsbereich brauchst, dann gib keinen Zugriff über HTTP (das ist unverschlüsselt und abhörbar), sondern nur über SSH, mit IP-Sperre für den Rest des Internets (erfordert aber eine feste IP deinerseits) und doppelter Passwortsperre, bis man root werden kann (also erstmal einloggen auf einem normalen Useraccount, und dann "su -", um root zu werden).

Du hast gegen BruteForce keine Chancen - außer der, dass man den möglichen Einbruch durch entsprechende Gegenmaßnahmen, die aber schon im Vorfeld getroffen werden müssen, lange abwehren kann. Und zentraler Punkt einer solchen Abwehrmaßnahme ist eben ein langes Passwort.

Das mit der statistischen Wahrscheinlichkeit ist zwar alles schön und gut, man kann aber auch beim 1. Versuch Glück haben, oder beim 1000000. Wenn jemand in den ersten 3 Versuchen Glück hat ist das halt extremes Pech für mich.

Niemand wird bei einem 32-Zeichen-Passwort in den ersten 3, 3000 oder 3 Milliarden Versuchen Glück haben. Er wird entweder scheitern, oder beim ersten Mal reinkommen, weil er das Passwort kennt.

Aber ich habe eine neue Idee. Wie wäre es mit einer Authentifizierung per SSL? Das habe ich zwar schonmal versucht und nicht geschafft, aber vielleicht ja diesmal ;-)

Das würde auch helfen. Ist von der Wirkungsweise allerdings auch nichts anderes, als ein sehr sehr langes Passwort.

- Sven Rautenberg

--
"Beim Stuff für's Web gibts kein Material, was sonst das Zeugs ist, aus dem die Sachen sind."
(fastix®, 13. Oktober 2003, 02:26 Uhr -> </archiv/2003/10/60137/#m338340>)