Shadowcrow: Remote File Include Vulnerability

Beitrag lesen

hi $name,

nach allem was ich sehen kann ist das das erste auftreten (initalisierung) der language_file, hier wird der wert zugewiesen.

Allerdings mit einem ungeprüften Wert, deshalb der Hinweis auf dirname oder basename.

nicht wirklich, der pfad ist fest vorgegeben in der config.php. da wird das array $config mit werten gefüttert. d.h. der inhalt von

$path = $_SERVER['DOCUMENT_ROOT'] . $config['talkback_path'] . 'language/';

steht fest. und bei allen aufrufen wurde es so notiert:

$language_file = setupLanguage();
include $language_file;

daran hatte NoGe ja wohl nichts auszusetzen, nur in der jubjub.php (aarggl, sory für die namen, aber ich hatte gestern morgen einen anfall von jabberwoky) stand nur folgendes:

include $language_file;

und das wurde moniert, da der variablen dann jeder wert zugewiesen werden konnte. aber ich stimme dir zu (und fühle mich auch wohler dabei) das an der stelle nochmals abzusichern.

switch ($language) (

case 'de':
        return 'language/german.php';
    case 'en':                                      //das kann aber auch weg, oder?
    default:
        return 'language/english.php';
}


>   
> Damit werden auch keine Eingabewerte mehr (direkt) in Pfadangaben verwendet, d.h. ein Codeschmuggel ist unmöglich.  

yep, dein switch ist eleganter :-)  
  
lieben dank  
  
gruss  
shadow

-- 
If there's anything more important than my ego around, I want it caught and shot, now.