Spartan-117
Cadet 3rd Year
- Registriert
- Nov. 2010
- Beiträge
- 41
Hallo an alle und willkommen zu meinem ersten Thread, zu dem mir leider kein passenderer Name eingefallen ist. 
Ich habe eine PHP-Webseite, in der die verschiedenen Seiten in die Index.php includet und dort angezeigt werden.
Das Ganze läuft ganz einfach über eine Variable in der URL ab.
Nun habe ich mir mal Gedanken darüber gemacht, dass wenn man nun anstelle eines Namens(z. B. register) einen relativen Pfad zu einer bestimmten Datei angibt, dass diese Datei auch angezeigt wird.
Natürlich gibt es auf meiner Webseite keine obengenannte Datei, ich wollte nur das Ausmass demonstrieren/verherrlichen.
Nun meine Frage an euch:
Wie unterbinde ich dieses ordnerübergreiffende Includen?
Am besten nur ein Denkanstoss, wegen dem Lerneffekt.
(Fertiger Code ist aber auch erlaubt.
)
Ich habe es schon mit der Function realpath() versucht, jedoch hilft das auch nicht gegen diese "../"-Dinger.
Natürlich kann ich diese "../"-Dinger mit str_replace() entfernen, ob es jedoch nicht einen einfacheren Weg gibt? Wenn nicht, was für Zeichen wie ".." und "/" gibt es noch, mit dem man unerwünschte Dateien includen kann?
Ich bedanke mich schonmal für alle Beiträge.
Spartan-117
P.S. Ich entschuldige mich schonmal dafür, dass in meinen Sätzen an gewissen Stellen kein "ß" vorhanden ist, aber da ich Schweizer bin und nicht immer ALT-0223 drücken will, muss in meinen Beiträgen wohl darauf verzichtet werden.
Ich habe eine PHP-Webseite, in der die verschiedenen Seiten in die Index.php includet und dort angezeigt werden.
Das Ganze läuft ganz einfach über eine Variable in der URL ab.
PHP:
index.php?s=irgendeineseite
Nun habe ich mir mal Gedanken darüber gemacht, dass wenn man nun anstelle eines Namens(z. B. register) einen relativen Pfad zu einer bestimmten Datei angibt, dass diese Datei auch angezeigt wird.
PHP:
index.php?s=../admin/passwords
Natürlich gibt es auf meiner Webseite keine obengenannte Datei, ich wollte nur das Ausmass demonstrieren/verherrlichen.
Nun meine Frage an euch:
Wie unterbinde ich dieses ordnerübergreiffende Includen?
Am besten nur ein Denkanstoss, wegen dem Lerneffekt.
Ich habe es schon mit der Function realpath() versucht, jedoch hilft das auch nicht gegen diese "../"-Dinger.
Natürlich kann ich diese "../"-Dinger mit str_replace() entfernen, ob es jedoch nicht einen einfacheren Weg gibt? Wenn nicht, was für Zeichen wie ".." und "/" gibt es noch, mit dem man unerwünschte Dateien includen kann?
Ich bedanke mich schonmal für alle Beiträge.
Spartan-117
P.S. Ich entschuldige mich schonmal dafür, dass in meinen Sätzen an gewissen Stellen kein "ß" vorhanden ist, aber da ich Schweizer bin und nicht immer ALT-0223 drücken will, muss in meinen Beiträgen wohl darauf verzichtet werden.
Zuletzt bearbeitet: