Passwort sicherheit

  • Hab mir da ein kleine Passwortabfrge gebastelt und wollte fragen wie sicher das ganze ist.
    (Mir geht es nicht um das Passwort sondern um die Art selber)


  • würds per abfrage an eine datenbank lösen...meine meinung dazu ;)

    "There's no such thing as Computer Science-it's witchcraft", math department of MIT, 1961

    You are all children of a worthless god!

  • Zitat von Rob64

    Hab mir da ein kleine Passwortabfrge gebastelt und wollte fragen wie sicher das ganze ist.

    Spätestens jetzt überhaupt nicht mehr sicher, da du das Passwort im Informatikforum gepostet hast.

  • Spätestens jetzt überhaupt nicht mehr sicher, da du das Passwort im Informatikforum gepostet hast.

    *SCNR*

    "There's no such thing as Computer Science-it's witchcraft", math department of MIT, 1961

    You are all children of a worthless god!

  • *lol*

    Das Passwort ist ja nur ein beispiel :shinner:

    An eine lösung mit MYsql hab ich auch schon gedacht aber macht es das wirklich sicherer ?


  • naja es ist auf jeden fall einfacher erweiterbar, stell dir vor nicht nur du sollst dich einloggen, sondern mehrere, allesamt verschiedene uid's und dazugehörige passwörter...also ich würds so machen, hätte ich auch mehr vertrauen darin...

    "There's no such thing as Computer Science-it's witchcraft", math department of MIT, 1961

    You are all children of a worthless god!

  • kommt darauf an was du eigentlich vor hast. ich verwende wenns geht gerne htaccess und wenn es schon php sein soll, dann wuerde ich den string durch md5 schicken:

    Code
    if (md5($str) === '1f3870be274f6c49b3e31a0c6728957f')
    {
       blabla;
    }

    so kannst du den code sogar jedem zugaenglich machen ohne dir sorgen machen zu mueszen.

    Willfähriges Mitglied des Fefe-Zeitbinder-Botnets und der Open Source Tea Party.

  • Also man sollte aus 2 Gründen mit register_globals off arbeiten.
    1) Unterstützen viele Webserver diese Einstellung nicht
    2) Entsteht dadurch ein generelles Sicherheitsloch im Code. Denn wenn man an die URL einfach eine GET-Variable hängt, kann man einfach Variablen im PHP-Code überschreiben. Wenn z.B. die Rechte in einer Session-Variable gespeichert werden, dann könnte man damit unter Umständen einfach überschreiben und sich als Admin ausgeben ...

    Lg,
    Reinhard

  • ich speichere auch die pwds prinzipiell als md5 hashes und vergleiche beim login via ssl die hashes miteinander... ist sauberer. zumal fängt niemand was mit den daten an wenn er deine db klaut (was durch einen hack auch passieren könnte)

    register globals off? is aber bitte schon sowas von standard dass es nicht mehr erwähnt werden muss afaik.

    Saying that Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders!
    http://www.chuckbronson.net/

  • ich speichere auch die pwds prinzipiell als md5 hashes und vergleiche beim login via ssl die hashes miteinander... ist sauberer. zumal fängt niemand was mit den daten an wenn er deine db klaut (was durch einen hack auch passieren könnte)

    register globals off? is aber bitte schon sowas von standard dass es nicht mehr erwähnt werden muss afaik.


    mittlerweile durch rainbowtables nicht mehr wirklich sicher!

    register globals off=> eigentlich schon, gibt trotzdem noch hoster & projekte die das nicht "wissen"/es ignorieren weil sie zu faul sind oder kA was

    mir persönlich gefällt die methode vom vb sehr gut

    md5(md5(pw).usersalt)
    usersalt=> ein 4 stelliger wert der bei der registrierung angelegt wird und mitgespeichert wird
    was dann bedeutet=> selbst wenn man einen gültigen Wert mittels rainbowtables vom 1. pw kriegt da der angreifer db zugang hat, hat er nochimmer kein gültiges pw

    zudem wird es auf der clientseite mittels js(falls aktiv) auch verschlüsselt

  • mir persönlich gefällt die methode vom vb sehr gut

    md5(md5(pw).usersalt)
    usersalt=> ein 4 stelliger wert der bei der registrierung angelegt wird und mitgespeichert wird
    was dann bedeutet=> selbst wenn man einen gültigen Wert mittels rainbowtables vom 1. pw kriegt da der angreifer db zugang hat, hat er nochimmer kein gültiges pw


    wo wird der salt gespeichert? in der db?

    Otto: Apes don't read philosophy. - Wanda: Yes they do, Otto, they just don't understand
    Beleidigungen sind Argumente jener, die über keine Argumente verfügen.
    «Signanz braucht keine Worte.» | «Signanz gibts nur im Traum.» 

    Das neue MTB-Projekt (PO, Wiki, Mitschriften, Ausarbeitungen, Folien, ...) ist online
    http://mtb-projekt.at

  • Ja in der DB.
    Guck in die Userdb ;) bist ja co-admin, was man so an deinem Untertitel sieht^^

    Oder war das eher eine "hahaha" Frage, weil du hinaus willst, das wenn der Angreifer DB-Zugang hat auch den Auslesen kann?
    Das stimmt schon, nur bringt es nicht wirklich was

  • HM
    ok da steht das es dann "popo" ist wenn der Salt in der DB steht:D

    Ich hab gedacht, das es dann um einiges schwerer/unmöglich ist dann was brauchbares zu finden.
    Danke für den Link

  • Ich hab gedacht, das es dann um einiges schwerer/unmöglich ist dann was brauchbares zu finden.


    nur, wenn man den salt nicht kennt. :)

    Otto: Apes don't read philosophy. - Wanda: Yes they do, Otto, they just don't understand
    Beleidigungen sind Argumente jener, die über keine Argumente verfügen.
    «Signanz braucht keine Worte.» | «Signanz gibts nur im Traum.» 

    Das neue MTB-Projekt (PO, Wiki, Mitschriften, Ausarbeitungen, Folien, ...) ist online
    http://mtb-projekt.at

  • Ok. Ich denk ich weiß nun was ich das Wochnende mal durchprobieren werde:D

    Hab mich nie wirklich damit beschäftigt, da ich gedacht habe: md5(md5(pw+nochirgedws) (so ist es und nicht md5(pw)salt) wär halt "unmöglich zu kriegen und ich beschäftig mich lieber mit was Sinnvollem:D

  • Zitat

    md5(md5(pw).usersalt)
    usersalt=> ein 4 stelliger wert der bei der registrierung angelegt wird und mitgespeichert wird
    was dann bedeutet=> selbst wenn man einen gültigen Wert mittels rainbowtables vom 1. pw kriegt da der angreifer db zugang hat, hat er nochimmer kein gültiges pw

    Etwas unsauber - denn wie ich das verstehe kriegt man zwar das passwort nicht aber einloggen kann man sich ja dann trotzdem?! (halt umständlich)

    Foglendes seh ich als ein relativ sicheres (simples) "nicht-SSL" passwort system.

    PHP
    //zufalls ticket wird erstellt
    $_SESSION['ticket'] = md5(rand(0,999999)); 
    
    
    //das passwort wird an das ticket gehängt und dann gehasht (js)
    <input type="hidden" value="md5(passwort+$_SESSION['ticket'])" name="hash"/>

    Dann kann auf der serverseite abgefragt werden ob

    PHP
    if(md5(referenz-passwort + $_SESSION['ticket']) == $_GET['hash'])

    true ergibt.

    Das hat den vorteil das man auch nicht an die md5 des passwortes kommt, da ja ein ticket beim login nur dieses eine mal gültig ist und beim nächsten log in ein anders ticket ist. Man kann also ruhig das form abhören, man bekommt aber nur nutzlose nicht mehr gültige passwörter hashes.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!