Felix Riesterer: Bilder werden manchmal nicht angezeigt

Beitrag lesen

Liebe(r) Simbyte,

$pg = $_GET["path"];
[...]
include("inc/$pg.inc");

Sicherheitsloch

Wie kann ich dieses Sicherheitsloch ausschalten?

erstelle Dir ein Array mit möglichen includierbaren Dateien (wenn Du willst auch dynamisch anhand der im Include-Verzeichnis vorhandenen Dateien). Includiere dann anhand des GET-Parameters die entsprechende Datei nur bei Vorhandensein des entsprechenden Array-Eintrags.

// man könnte auch dynamisch alle verfügbaren Dateien im Verzeichnis "inc" ermitteln...  
$include_dateien = array(  
    'start.inc',  
    'dat1.inc',  
    'dat2.inc',  
    'dat_spezial.inc',  
    'dat_egal.inc'  
);  
  
$pg = 'start.inc'; // Default-Wert  
  
if (in_array($_GET['path'], $include_dateien))  
    $pg = $_GET['path']; // nur deshalb hier erlaubt, da vorher eine Prüfung auf "vorhanden" stattgefunden hat!!!  
  
include "inc/$pg";

Liebe Grüße aus Ellwangen,

Felix Riesterer.

--
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)