PHPSESSID mit Javascript aus Cookie lesen
Max Smily
- javascript
Hallo Forum,
ich versuche mit alert(document.cookie) die PHPSESSID meiner Webseite auszulesen. Meine Testdatei startet mit session_start() eine PHP-Session und führt dann im folgenden Javascript-Block alert(document.cookie) aus. Das Ergebnis ist ein leeres Alert-Fenster. Die Stringlänge des Cookies ist 0. In der Cookieliste meines Firefox 3.6.16 steht das Cookie aber drin.
Hab ich was falsch gemacht, wenn ja was, oder liegts an irgendeiner Einstellung des Browsers?
Hintergrund: Ich wurde darauf hingewiesen, dass meine Webseite für XSS-Angriffe anfällig ist. Einige Forumlareingaben wurden nicht korrekt geprüft. Wie das zu reparieren ist, ist klar, schon erledigt. Dennoch wollte ich bei der Gelegenheit mit Hilfe einiger Hackertutorials mal austesten, wie schwer oder leicht das Session-ID-Hijacken ist.
Ich bin wohl kein guter Hacker, wenn ich nichtmal die PHPSESSID meiner eigenen Seite mit alert() ausgeben kann...
Grüße
Max Smily
Hi,
Hab ich was falsch gemacht,
ja - denn sonst hätte es ja geklappt.
wenn ja was,
irgendwas.
Da Du nicht zeigst, was Du machst, kann keiner sagen, was Du falsch machst.
cu,
Andreas
nabend,
Da Du nicht zeigst, was Du machst, kann keiner sagen, was Du falsch machst.
Mh. ok, meine verbale Beschreibung war wohl nicht eindeutig genug. Also hier der Inhalt meiner Testdatei (test.php).
<?php
session_start();
?>
<script type="text/javascript">
alert(document.cookie)
</script>
Das Verhalten, bleibt wie oben beschrieben. Setze ich einen anderen Cookiewert, z.B. per Javascript mit document.cookie = "Wert=test"; dann wird das angezeigt. Wird PHPSESSID anders behandelt?
Grüße
Max Smily
Hallo,
Hab ich was falsch gemacht, wenn ja was
<ratemodus>
Irgendwas mit Domain und Pfad vielleicht?
</ratemodus>
Gruß, Don P
Moin,
Hallo Forum,
ich versuche mit alert(document.cookie) die PHPSESSID meiner Webseite auszulesen. Meine Testdatei startet mit session_start() eine PHP-Session und führt dann im folgenden Javascript-Block alert(document.cookie) aus. Das Ergebnis ist ein leeres Alert-Fenster. Die Stringlänge des Cookies ist 0. In der Cookieliste meines Firefox 3.6.16 steht das Cookie aber drin.
Möglicherweise sendet dein Webspace-Server standardmäßig ein "httponly" mit, dann ist der Cookie per JS nicht erreichbar.
Ich bin wohl kein guter Hacker, wenn ich nichtmal die PHPSESSID meiner eigenen Seite mit alert() ausgeben kann...
:D
Grüße
Max Smily
Gruß,
Take
Hallo Take,
HttpOnly war das richtige Stichwort! Hab gleich in mein Firebug geschaut und siehe da, das Session-Cookie ist entsprechend markiert.
Da kann ich ja lange probieren es mit Javascript auszulesen.
Wenn die ganzen XSS-Hacker ebenfalls Probleme damit haben, dann ist ja gut.
Viele Grüße
Max Smily