mbr: links aus includierten seiten zerschiessen das layout

Beitrag lesen

Hallo Lutz,

Das weiß ich nicht, aber ich habe das so gemacht, dass bei mir steht:

$file = 'source/cat/'.$_GET['cat'].'.php';

if (file_exists($file))  {
  include $file;
} else {
  include 'source/base/html/404.php';
}

Ich sehe da keine "Sicherheitslücke", es können ja wohl unabhängig vom Wert in 'cat' nur Dateien aus dem einen Verzeichnis included werden oder?

also, ohne jetzt hier klugsch***en zu wollen: probier mal folgendes:
http://deineDomain/index.php?cat=../../index

oder auch
http://deineDomain/index.php?cat=%E%E%F%E%E%Findex

Habe das ganze lokal getestet ;-) Bei mir kam es dann noch drauf an, welcher Browser. IE bricht anscheinend nach einiger Zeit ab und sagt: Seite nicht gefunden. Firefox lädt und lädt und lädt - und der Quellcode der Datei sieht dann lustig aus.

Als Test hab ich dann noch eine dummydatei namens test.php ins selbe Verzeichnis wie die index.php geschrieben.
Dann funktioniert auch das:
http://deineDomain/index.php?cat=%E%E%F%E%E%Ftest

Na gut, wirklich ne Sicherheitslücke ist es nicht, aber es können (mit etwas Fantasie) durchaus auch Dateien aus einem anderen Verzeichnis includiert werden.

liebe Grüße mbr