Login Script funktioniert nicht richtig

  • Hallo zusammen,


    Ich habe Probleme mit einem Login Script.
    Das Script sollte überprüft, ob man eingeloggt ist und ruft dann die benötigten user-daten ab.
    Jedoch Funktioniert das einloggen nicht richtig bzw gar nicht.
    Könnte sich jemand von euch das Script unter die Lupe nehmen und mir bitte helfen?
    Vielen Dank!


    Hier die Paste...
    <!-- m --><a class="postlink" href="http://paste.newroots.de/index.php/view/9ebf311a">http://paste.newroots.de/index.php/view/9ebf311a</a><!-- m -->


    Hier der Code...


  • Hach.. ok.. ich schaue es mir später mal genauer an.. <.< *Grüße übrigens :D *


    Was mir aber schon beim überfliegen aufgefallen ist:

    PHP
    1. <span class="syntaxdefault"></span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$_COOKIE</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">md5</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'fb_cid'</span><span class="syntaxkeyword">)]); </span><span class="syntaxdefault"></span>


    ..würdest du den Wert in dem Cookie mit md5 verschlüsseln wollen, würde ich das ja noch verstehen^^
    Aber wieso den Namen des Cookies? O.o' Da bekommt er ja dann theoretisch keine Datein, wenn er anstelle von $_COOKIE['fb_cid'] da $_COOKIE['aa4f3ee986a296497dfb2cd853a482b0'] steht. (Das ist der md5-Wert von fb_cid)
    Oder ist das beabsichtigt?^^

  • Was kommt denn für eine Fehlermeldung??
    Bzw. an Welcher stelle des Codes liegt der fehler.
    Ich hab da echt keine Lust mir den ganzen Script durchzuarbeiten.

  • &quot;Sarkkan&quot; schrieb:

    Hach.. ok.. ich schaue es mir später mal genauer an.. <.< *Grüße übrigens :D *


    Was mir aber schon beim überfliegen aufgefallen ist:

    PHP
    1. <span class="syntaxdefault"></span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$_COOKIE</span><span class="syntaxkeyword">[</span><span class="syntaxdefault">md5</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'fb_cid'</span><span class="syntaxkeyword">)]);</span><span class="syntaxdefault"> </span>


    ..würdest du den Wert in dem Cookie mit md5 verschlüsseln wollen, würde ich das ja noch verstehen^^
    Aber wieso den Namen des Cookies? O.o' Da bekommt er ja dann theoretisch keine Datein, wenn er anstelle von $_COOKIE['fb_cid'] da $_COOKIE['aa4f3ee986a296497dfb2cd853a482b0'] steht. (Das ist der md5-Wert von fb_cid)
    Oder ist das beabsichtigt?^^


    das is beabsichtigt
    ein wenig paranoid damit man nich (falls jmd die cookies ausliest)
    weiß welcher wofür is xD


    &quot;maulepan&quot; schrieb:

    Was kommt denn für eine Fehlermeldung??
    Bzw. an Welcher stelle des Codes liegt der fehler.
    Ich hab da echt keine Lust mir den ganzen Script durchzuarbeiten.


    wenn es funktionieren würde dann würde sich die Ausgabe ändern, was aber nicht passiert?

  • fehler gefunden



    Code
    1. $recht = mysql_fetch_assoc(mysql_query("SELECT * FROM __recht WHERE id='".$user['rid']."'"));


    rid durch id ersetzen, damit der Adminbereich funktioniert.


    funktioniert aber immer noch nicht
    hab jetzt mal durch zahlen usw geschaut wo der fehler wahrscheinlich ist


    Code
    1. $log = mysql_query("SELECT id, name, pw, _safe FROM __user WHERE name = '".$name."' AND pw = '".$pw."' LIMIT 1") or die(mysql_error());
    2. $user = mysql_fetch_assoc($log);


    der fetch funktioniert nicht, da hat er abgebrochen, dabei hat der query keinen fehler ausgegeben.
    ???


    Aktueller SQL-Dump:
    <!-- m --><a class="postlink" href="http://pastie.org/1164833">http://pastie.org/1164833</a><!-- m -->


    Aktueller Skript-Source:
    <!-- m --><a class="postlink" href="http://pastie.org/1164834">http://pastie.org/1164834</a><!-- m -->

  • Hi, bei mir bricht hier nichts ab ? Bekommst du eine Fehlermeldung


    (werden Error reporting & mysql_error genutzt ?)


    Du musst, da du als SALT den Benutzernamen nutzt auf die Groß- und Kleinschreibung beim Login achten.
    Da sonnst ein anderer Hash herauskommt.


    Mir sind noch ein paar andere Ungereimtheiten aufgefallen, falls gewünscht kann ich dazu heute Abend noch was schreiben, muss nun aber arbeiten.


    Greetz TimTim

  • Also die unsicherheit du du eingehst das du deine db dump öffentlich postetst ist wirklich krass mir fehlen die worte dafür...
    Zumindest das in der dump die datensätze noch enthalten sind...


    Zitat


    INSERT INTO `__user` (`id`, `name`, `pw`, `email`, `regdate`, `modified`, `time`, `_safe`) VALUES
    (1, 'root', '****zur sicherheit entfernt wobeis ja eig nix bringt :(', 'email', 6757, 5455, 1284728455, ''),
    (2, 'blackberry', '****zur sicherheit entfernt wobeis ja eig nix bringt :(', 'email', 654654, 8768, 1284727871, '');


    Solltest das schnell ändern und auch darauf achten das du das demnächst entfernst...
    Sonst entschlüsselt noch jmd dein passwort. Und dein admin bereich wird zu einem offenen buch.


    Ich schau mir das script mal durch...


    Bis gleich
    LG.
    R4Zz0R

  • ich muss zugeben ...
    Ich finde keinen fehler...
    Entweder enthällst du uns etwas vor oder hast irgentwas vergessen ...


    Der code wird scheinbar sauber abgearbeitet und auch der zugriff auf die datenbank erfolgt problemlos ....


    Jmd. eine idee ? :?

  • Warum ?


    Er enthält keine direkten Fehler.


    N paar Notices, aber die kann man im Nachhinein noch ausbessern.


    Wie gesagt, ich wette es liegt an der schreib weise des Benutzernamens, da diesen als Salt nutzt, was man eigentlich nicht machen sollte. Sondern einen Festen Wert.
    Es stehen allerdings ein paar unnötige Sachen drin, die man aus Verständnis und leserlichkeit entfernen könnte/sollte.


    Zudem, wo da jetzt das Sicherheitsrisiko besteht ist fraglich..
    solange er die Daten nicht nutzt wenn es fertig ist.. und die hashs zu entschlüsseln, was nur über große Rainbow Tabellen möglich wäre ist so fast
    unmöglich... dafür nutzt man ja das Salz beim hash..



    Greetz

  • Ja das salt beim hash erschwert es aber rainbow table´s finden sich genug im netz.


    Und ich sage ja auch nur das er es beim nächsten mal entfernen soll nur wer diesmal seine domain kennt und die absicht hat auch schaden anzurichten hätte so leichtes spiel.


    Neu schreiben halte ich für eine gute idee.


    LG
    R4Zz0R