Einzelnen Beitrag anzeigen

Benutzerbild von cware
cware

Registriert seit: 15. Feb 2007
Ort: Mannheim
38 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Benutzerdaten einer Website - weg von MD5

  Alt 7. Feb 2008, 13:44
genau aus dem grund schreibt man sich für den datenbank-zugriff IMMER ein zusätzliches modul, dass die ganzen sicherheits-vorkehrungen automatisch trifft... sobald so'n ding da ist, kann man es mit code-injection bombardieren, bis einem schlecht wird...
die aussage, dass es keine sicherheitslücke in phpBB ist schlichtweg gelogen...
dass ist so, als ob ich einen FTP-server schreibe, einen debug-zugang ohne passwort fest einkompiliere und dann sage, dass derjenige sich ja nicht eingehackt hat... stimmt... er hat den leichten weg genommen...

zu dem bruteforcing:
wenn man das bruteforcing erschweren will, sollte man versuchen, die Anzahl der Elemente des Definitionsbereichs zu erhöhen...
oder anders ausgedrückt: man sollte versuchen, vor dem hashen statt einem ascii-text einen binärtext zu erhalten...
auch der salt sollte möglichst binär sein...
das erste, was man versucht, ist, den Definitionsbereich zu verringern... die verkleinung des Definitionsbereich verringert nämlich die Komplexität in abhängigkeit von der länge des ausgangstextes...

*ehem*
angenommen, wir sind im unären Zahlensystem (wobei 1 zur Basis 1 = 0 zur Basis 10, oder einfach ausgedrückt 0 = 1, 1 = 11, 2 = 111, etc.)...
dann müssen wir für jede stelle genau ein Element prüfen... die Komplexität liegt also bei n...
(um ein Wort der maximal-Länge n zu bruteforcen, müssen wir genau n worte testen [naja, eigentlich n-1, aber wen stört's])...
im binären Zahlensystem müssten wir bei n Stellen bereits 2^n Zustände prüfen, im ternären system 3^n etc. pp.

um es mal an zahlen auszumachen...
angenommen, wir lassen nur passwörter mit mind. 8 zeichen zu...
wenn wir unsere passwörter in binärform hashen (8bit definitionsbereich), haben wir 18446744073709551616 mögliche wörter...
wenn wir nur passwörter mit groß- und klein-buchstaben, zahlen und ein paar sonderzeichen zulassen, kommen wir auf einen definitionsbereich mit etwa. 72 elementen (bei vielen systemen sind es weniger) und somit auf 722204136308736...
die anzahl der zu testenden passwörter ver-25.000-facht sich...

mit einem binären salt vergrößert sich diese zahl natürlich noch...


cheers...

P.S.: was man natürlich beachten muss, sind evtl. vorhandene kolisionen... diese sind allerdings nicht vermeidbar, da hashing ja immer eine surjektive abbildung ist...
> Why is 6 afraid of 7?
< Because 7 8 9!
  Mit Zitat antworten Zitat