* Download manager security patch *
Hallo iedereen...
Voor QCMS (het content management systeem die ik op dit moment aan het ontwerpen ben) had ik een download manager gemaakt welke ik graag met jullie wil delen....
Het script bestaat uit twee onderdelen en ik heb het iewat aangepast, maar de basis en de werking blijft hetzelfde ;-)
edit :
Een nieuwe security patch en nog bedankt voor jullie feedback!!!!
edit :
* security update!
Het oorspronkelijke script bevatte een security hole, deze heb ik met de functie ereg in files.php verholpen:
-- toegevoegd :
# het download path moet terugkomen in
# new_url, indien niet dan probeert gebruiker verder te
# kijken, hetgeen we natuurlijk niet willen...
# Dit lossen we op met de functie ereg.
$patt = $path;
if(ereg($patt,$new_url)) :
--- tevens toegevoegd :
else:
// Gebruiker wil in een directory kijken waar hij/zij niets te
// zoeken heeft ..
echo "<br><hr>U krijgt geen toestemming om hier te komen...<br>";
endif;
edit :
* extra routines toegevoegd om het script 'waterdicht' te krijgen.
-- toegevoegd :
# voorkom dat de gebruiker via een omweg inbreekt,
# dit doen we met str_replace
$new_url=str_replace("../", "", $new_url);
$new_url=str_replace("./", "", $new_url);
$new_url=str_replace("/..", "", $new_url);
$new_url=str_replace("/../", "", $new_url);
$new_url=str_replace(".", "", $new_url);
$new_url=str_replace(chr(92), "", $new_url);
$new_url=str_replace("?", "", $new_url);
-- tevens toegevoegd :
$test = "/" . $path;
if (ereg($test, $new_url)):
$new_url=str_replace($test, $path, $new_url);
endif;
-- en als laatse de routine :
// test of de directory bestaat
if (is_dir($new_url)):
als deze niet bestaat dan krijgt men te zien :
else:
// $new_url heeft een ongeldige waarde opgeleverd ( zie regel nr 101 )
echo "<br><hr>U krijgt geen toestemming om hier te komen...<br>";
endif;
De wijzigingen heb ik inmiddels in files.php toegepast en je nu weet ik voor bijna 100% dat het waterdicht is en dat je het met een gerust hart kunt gebruiken ;-)
Voorbeeld: http://qcms.heathernova.us/download.php
Gesponsorde koppelingen
PHP script bestanden
Er zijn 18 reacties op ' download manager security patch '
Om te reageren heb je een account nodig en je moet ingelogd zijn.
PHP hulp
0 seconden vanaf nu