frage zum loginscript

Morph

Erfahrenes Mitglied
Hi :)
Ich wollt mal wissen, wie ihr mein login ( :rolleyes: ) findet
is - wie soll ich sagen - kurz *g*
ich mach erst seit gestern php und das ist mein erste versuch nen login hinzubekommen ;)
Nu würde ich gern wissen, was ihr daran anders machen würdet oder obs total schrott ist oder ... :)

PHP:
<?php
$pw_dat = fopen("pw.dat", "r");
	$pass = fread($pw_dat, 13);
fclose($pw_dat);

if($pw == $pass)
	{
	include("ok.php");
	}
else
	{
	header ("Location: false.php?name=$name");
	exit;
	}
?>

Nun macht mich nieder :)

[EDIT] Der inhalt der variable $pw kommt aus einem formular vorher ;) - nur falls fragen kommen sollten
Grüße, Morph
 
Zuletzt bearbeitet:
Also dafür, dass du erst gestern mit PHP angefangen hast, siehts schon recht gut aus. Allerdings ist dein Script nicht besonders sicher. Sofern nämlich beim Provider nichts anderes angegeben wird, wird dir der Inhalt als Text angezeigt. (Berichtigt mich mal einer falls ich was falsches sage!)

Wenn jetzt also z.B. jemand direkt http://www.deinedomain.de/pw.dat eingibt sieht er das Passwort als reinen Text.

Schau dir doch einfach mal im Forum Programming-Tutorials die Beispiele für Login-Scripts an. Es gibt dort ein einfaches mit IF-Anweisung und eins welches mit Sessions und Datenbank arbeitet (das zweite ist von mir).

Also noch viel Erfolg weiterhin.
 
Hm könnte man dann die passwort datei nicht etwa in z.b. .xyz umbennen, eben so, dass jmd der die datei kennt sie nicht einfach aufrufen kann ?
hab' außerdem grad probiert die pw.dat über den browser aufzurufen - mein provider öffnet trotzdem einfach die index.php also nix mit anschaun :D

Das mit MySQL ging mir auch schon durch den kopf, allerding geht das nicht bei dem prov. :( ok aber dafür das er kostenlos ist und php unterstützt ... ist es ok :)
Achja und das mit den if anweisungen finde ich zwar nicht schlecht, wollte aber nicht nurso stur tuts kopieren, sondern durch selber coden lernen :)

btw: Danke für deine Antwort :)

Grüße, Morph
 
also für die ersten paar tage is dein code schonmal ziemlich gut :)

totzdem hat dein code n paar "sicherheitslücken" :)

die erste wurd schon genannt, aber die zweite is in der include anweisung. weil irgendjemand könnte auf die schlaue idee kommen die ok.php direkt zu öffnen, un die is halt ungesichert.

hmm war des verständlich? wenn net frag nochmal :)
 
Hihi ne ist schon klar :)

Ich hatte eigentlich vor die variable $pw zu übergeben und in jeder site per include oder function (glaub das ging auch ;)) das immer schnell zu vergleichen - also wenn jmd die ok.php einfach so aufruft dann hat er ja nicht die $pw zum vergleichen - ergo er komt net rein ;)

Ist evtl ein wenig umständlich aber dazu bin ich ja hier - um von euch profis :) zu erfahren, wie ihr es besser machen würdet

Grüße, Morph
 
ich un profi... *hüstel*

aber anscheinend hab ich mich doch nich klar ausgedrückt.
also die sache sieht folgendermaßen aus: du frägst das passwort ab und wenn es stimmt kriegt man zugriff auf die ok.php, hier gelöst mit include. jetzt is des problem das die ok.php von sich aus ja keinen eigenen schutz hat. also des könnt auch ne normale html datei mit n paar tabellen oder was weiss denn ich drin sein. aber dein kleines script schüzt die datei eben nur, wenn es selber aufgerufen wird. wird die ok.php selbst aufgerufen hat dein script ja garnix zu melden, weils ja eben net angesprochen wird.

hmm wie soll ichs sagen. das is wien hotdog: du kannst zwar den teig ausenrum essen, musst aber nich. du kannst die wurst auch so rausholen. das macht den teig dann eben unnötig (anm.: man bin ich besoffen oder was? :))

also ich hoff du hasts jetzt geblickt, ansonsten bin ich noch n bissl hier :)
 
Verstanden habe ichs schon
Ich meinte nur, man könnte ja in die ok.php nen check einbauern der prüft, ob die variable leer (=0) ist oder ob da nen pw drin ist
Wenn was drin ist, dann kann der user rein, sonst net
Verstehst ? ohne die vorherge überlieferung der $pw ist dort nix drin ergo der user bekommt keinen zugriff

Grüße, Morph
 
also die idee is gut (soweit ich noch denken kann, ich glaub ich geh jetzt ehct lieber saufen :)), aber irgendwie machts doch dann den login überflüssig oder? weil des is ja dann ne doppelte abfrage. und ausserdem wenn du nur prüfst ob in der variable was drin is (ich denk des hast du net gemeint, ich wills aber trotzdem nochma erwähnen) kann man die sperre per url ziemlich einfach umgehn (man muss halt n bissl rumraten :)).

naja ich glaub langsam wer dich echt zu wirr im kopg (ausserdem benutz ich zuviele klammern ^^)

cya, stiff
 
Könnte man nicht einfach die pw.dat per CHMOD 770 für "unbefugte" sperren ? sollte doch eigentlich auch gehen, oder ?

Grüße, Morph
 
Zuletzt bearbeitet:
wenn du dich da mal nicht täuschst, Morph:

verwende einfach folgenden aufruf:
ok.php?pw=lala

und schon HAT die variable nen Wert
du müsstest wirklich nochmal innerhalb von ok.php die variable auf Richtigkeit überprüfen, also mit dem Dateiinhalt vergleichen.
Und das macht die login.php Datei wirklich überflüssig.

Die txt-Datei an sich kannst du mit ner .htaccess datei schützen.

PS: Dabei fällt mir ein, dass in meinem eigenen script auch ne sicherheitslücke ist...*schnellverschwind*
 

Neue Beiträge

Zurück