Holladiewaldfee,
// start session
if (!isset($HTTP_COOKIE_VARS[$sessionName])) {
$isLoggedIn = 0;
mt_srand((double) microtime() * 1000000);
$setId = md5(str_replace(".","",$REMOTE_ADDR) + mt_rand(100000, 999999));
setcookie($sessionName, $setId);
Warum so kompliziert und nicht einfach session_id(); ?
if ($HTTP_POST_VARS["user"] == "joachim" && $HTTP_POST_VARS["pass"] == "11111") $isLoggedIn = 1;
Das hier ist die eigentliche Schwachstelle: Das Passwort steht im Klartext da, d.h. wenn jemand von außen Zugriff auf das Script hat - und das haben mehr Leute, als man normalerweise denkt - ist das Passwort bekannt und damit alle Sicherheit dahin.
Deswegen lieber if($_POST["user"]=="joachim" && md5($_POST["pass"])=="komischermd5hash")
Funktionieren tuts - aber kann diese Variable "isLoggedIn" nicht irgendwie geknackt/manipuliert werden?
Wenn jemand als root am Server rumhüpft, seine Session-Datei sucht und die Variable ändert, ja. Sonst: nur schwierig. Es bleibt natürlich zu bedenken, ob nicht ein PHP-Script am selben Server die Möglichkeit hat, den entsprechenden Eintrag in der Session-Datei zu manipulieren. Ergo: Wenn jemand PHP-Scripte unter der ID des Webservers ausführen kann oder als root am Server rumhüpft, dann wird die Sache unangenehm, sonst geht's schon.
Ciao,
Harry
Hä? Was? Signatur?! Kann man das essen?
Wirrwarr: sh:| fo:) ch:] rl:° br:& n4:° ie:% mo:) va:) de:[ zu:) fl:( ss:) ls:[ js:|