Archiv verlassen und diese Seite im Standarddesign anzeigen : GET übergabe in URL funzt net?!? O_O
Lucleonhart
07.03.2005, 19:49
Olla!
Ich hab grad mal nen Problem, das mich in totale unkenntnis stürzt.. *g*
Folgendes:
http://www.lucleonhart.de/test.php?variable=hallo <- Mein HP Server, alles so wie es soll, in der PHP datei steht lediglich
Variable: <?php
echo("$variable");
?>
http://www.nightbeam.de/test.php?variable=hallo <- Webspace vom Kollegen. Gleiche Datei. Aber die variablen in den URLs werden nicht übergeben, oder was weiß ich. Was iss da loos? ^^
liegt vielleicht an der Serverkonfiguration, ist bei mir auch so. Schreib halt $_GET['variable']
Lucleonhart
07.03.2005, 19:53
*lol* Warum müssen manche lösungen nur soooo einfach sein! *grmpf* Da bin ich mal nicht drauf gekommen...
Ist auch der erste von 50 verschiedenen Webspace anbietern die ich schon so durch hab, wo DAS nicht geht.. *ts* Nun denn... thx!
Für alle meckerfritzen: Ja, es geht jetzt bei beiden, habs ja auch geändert.. ;)
Jesus_666
08.03.2005, 02:53
In Zukunft wirst du das immer häufiger sehen, daß der Inhalt von $_GET nicht in einzelne Variablen gepackt wird; das kann nämlich u.U. zu Sicherheitsproblemen führen und ist deshalb bei neueren PHP-Releases von Haus aus abgestellt. Man kann's natürlich immer noch wieder einschalten, es iat aber besser, wenn man die Skripte einfach so schreibt, daß man's nicht braucht.
dead_orc
08.03.2005, 13:20
IMO ist register_globals mehr hinderlich als nützlich! Mir ist es mal passiert, dass online immer wieder eine cookie-Variable überschrieben wurde, weil register_globals an war und ich aus versehen den selben namen nochmal verwendet habe -.- (wer den Thread gelesen hat, weiß ja, wovon ich spreche).
Gibt es eigentlich auch ein Array, in dem alle übergebenen Variablen unabhängig von der Übergabemethode drinstehen? Ich benutze bisher immer einen Workaround (ich gucke, welche Methode verwendet wurde, und erzeuge daraus einen Code-String, den ich mit eval() ausführe, der die Variablen in ein Array schreibt).
Man kann's natürlich immer noch wieder einschalten, es iat aber besser, wenn man die Skripte einfach so schreibt, daß man's nicht braucht.
Bei manchen Sachen (z.B. Forum) ist eine Variablen-Übergabe durch die URL fast notwendig. Man kann natürlich auch alles in versteckte Formularfelder schreiben und so übergeben. Das ist allerdings recht unschön. Und solange man den Inhalt einer mit $_GET erhaltenen Variable nicht einfach ausgibt, geht's eigentlich. Durch leichtfertiges Ausgeben entstehen ja eigentlich erst die XSS-Schwachstellen.
Als Beispiel, dieser Cross-Site-Skripting-Link zu Lucleonhart, der die Var-Ausgabe mittels JS ausnutzt: http://www.lucleonhart.de/test.php?variable=%3CSCRIPT%3Ealert(document.domain);%3C/SCRIPT%3E
freundliche Grüße, Rolus
dead_orc
08.03.2005, 15:21
@masterquest: $_REQUEST (http://de2.php.net/manual/de/reserved.variables.php#reserved.variables.request) dürfte das sein, was du suchst...
Lucleonhart
08.03.2005, 22:51
Als Beispiel, dieser Cross-Site-Skripting-Link zu Lucleonhart, der die Var-Ausgabe mittels JS ausnutzt: http://www.lucleonhart.de/test.php?variable=%3CSCRIPT%3Ealert(document.domain);%3C/SCRIPT%3E*g* Nice... man stelle sich vor, was man jetzt alles ausführen könnte... :eek: ^^
Ich sollte die datei löschen... :rolleyes: :D
Mh, @Rolus: Ich glaube nicht, dass Jeez meinte, dass man das komplette GET nicht benutzen sollte. Ich verstehe ihn so, dass man $_GET["var"] anstatt $var benutzen sollte.
Jesus_666
09.03.2005, 14:08
Mh, @Rolus: Ich glaube nicht, dass Jeez meinte, dass man das komplette GET nicht benutzen sollte. Ich verstehe ihn so, dass man $_GET["var"] anstatt $var benutzen sollte.
So war es auch gemeint.
Powered by vBulletin® Version 4.2.3 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.