Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

vertauschte session id?

also ich habe ein problem, das sieht folgendermaßen aus:

ich habe ein funktionierendes login/logout system, die sessionid wird über die url an die anderen seiten weitergegeben, meine session variable ist $_SESSION["username"].

jetzt logge ich mich ein, und gehe auf irgendeine seite meiner hp.
ich klicke im browser auf aktualisieren ,meistens wird dann sowieso angezeigt, dass die seite dann ungültig ist usw., aber manchmal halt nicht; und bin plötztlich als ein völlig anderer user eingeloggt (es haben sich mehrere freunde von mir als testpersonen registriert).

ich vermute, dass dies immer dann der fall ist, wenn einer meiner freunde gerade auch eingeloggt ist...
aber es ist eben nur eine vermutung.

ich hab ehrlich gesagt überhaup keine ahnung was die ursache für diese "sicherheitslücke" sein könnte, aber es wäre echt sch *** wenn plötztlich ein user als admin eingeloggt ist o.ä.

für tipps/ hilfe wäre ich sehr dankbar

mfg vortax

Hier gehts zum Orginal Eintrag "vertauschte session id?" im Forum

Antworten

omg ich habe gerade gemerkt, es muss noch nicht mal ein klick auf "aktualisieren" sein...
es reicht schon, wenn ich einfach ein paar links auf meiner seite klicke.. und schon bin ich plötztlich als anderer user eingeloggt ^^^^ wasn los??

und ich habe gerade gemerkt, dass keiner auf meiner seite eingeloggt ist, während der username gewechselt ist... also ist meine vermutung auch falsch...
ich blick nicht durch...


2.

Zitat:
ich habe ein funktionierendes login/logout system
scheint ja nicht ganz zu stimmen :-)

so ganz ohne code kann man da wenig zu sagen... was hast du denn alles mit deinen sessions gemacht?


3.

das login formular (wird in die index.php included)
Code:                   In Zwischenablage kopieren (nur IE)
1">

erster
ausschnitt aus der index.php:
Code:                   In Zwischenablage kopieren (nur IE)
2">

...
dann der body teil:
Code:                   In Zwischenablage kopieren (nur IE)
3">




4.

jetzt versteh ich garnix mehr...
ich merke gerade, dass die session id überhaupt nicht angezeigt werden kann (also aufm lokalen server schon, aber im web nicht)
in der url steht nix, und selbst wenn ich sie irgendwie ausgebe, dann wird nix ausgegeben...

omg wäre echt dankbar für hilfe


5.

statt
Zitat:
session_name("sid");
session_start();
solltest du vielleicht mal das versuchen:
Zitat:
session_start();
session_name("sid");



6.

ach ja, das hier ist vollkommener blödsinn und dazu auch noch falsche syntax.
Code:                   In Zwischenablage kopieren (nur IE)
4">

wenn du damit erreichen möchtest, dass deine session-id in der url angezeigt wird, solltest du session.use_trans_sid = 1 setzen. mehr dazu in der doku unter session-funktionen.


7.

Zitat:
statt
Zitat:
session_name("sid");
session_start();

solltest du vielleicht mal das versuchen:

Zitat:
session_start();
session_name("sid");

so wie ich es hatte ist es schon richtig, anders funzt es nicht.
und wegen des session.use_trans_sid=1 kann ich leider nur sagen dass ich vorübergehend einen billig webspace von lycos habe und ich nix an der php.ini verändern kann...
gibt es nicht irgendeine andere methode, die session id an die url anzuhängen? .. so wie ich es hatte war es ja wohl falsch.. ich werd mich da aber nochmal genauer informieren...

naja aber das alles löst mein eigentliches problem nicht... trotzdem danke erstmal :)

edit:
also ich habs jetzt immer so:
href="index.php?s=seite&sid=<?php echo session_id() ?>"
is das richtig?

naja aber mein problem ist immer noch da :(


8.

Code:                   In Zwischenablage kopieren (nur IE)
5">

damit versuchst du doch eine session umzubenennen, die noch nicht gestartet wurde. bist du sicher, dass das so funktioniert? lass dir mal mit
Code:                   In Zwischenablage kopieren (nur IE)
6">

den tatsächlichen namen der session anzeigen.

Zitat:
also ich habs jetzt immer so:
href="index.php?s=seite&sid=<?php echo session_id() ?>"
is das richtig?
nein! du hast das semikolon vergessen.
Zitat:
kann ich leider nur sagen dass ich vorübergehend einen billig webspace von lycos habe und ich nix an der php.ini verändern kann
auch nicht mit ini_set() ?


9.

mit session_name() habe ich mich geirrt. du hast natürlich recht! :-)


10.

MANN BIN ICH DUMM!!!
war alles ein scheiss programmierfehler...
meine session variable heisst ja $_SESSION["username"]

und die habe ich, ohne dass ich es bemerkt habe, in einer bestimmten seite umgeschrieben:

Code:                   In Zwischenablage kopieren (nur IE)
7">

in der zeile $username=$dsatz["username"];

ich habs jetzt in $usernameH umbenannt...
omg sag ich nur :)

du meintest ich hab ein semikolon vergessen... wo soll das denn hin?
so: ...&sid=<?php echo session_id(); ?> also das komma nach session_id(); <--- ?

wenn ich dass weiss, dann wäre das thema abgehakt! danke für die restlichen tips!


11.

Zitat:
wo soll das denn hin?
so: ...&sid=<?php echo session_id(); ?> also das komma nach session_id(); <--- ?
ja! geht doch :-)


Hier gehts zum Orginal Eintrag "vertauschte session id?" im Forum
 
phpforum.de | Impressum