moin,
habe folgendes zu lösen:
ich schreibe gerade ein tool, mit dem man u.a. beliebige files hochladen kann.
jetzt habe ich vor, diese files zu schützen. es kann ja sein, dass jemand ein php file hochlädt und es wäre ja net so gut, wenn man das 1:1 kopiert mit dateiendung .php.
zunächst habe ich halt einfach .dummy angehangen. würde auch reichen, jedoch habe ich da noch ein skript, mit dem man files includen kann. diese files müssen zwar auf dem server liegen, da es aber nun diese upload funktion gibt, könnte man das upgeloadete file damit einbinden und code ausführen.
meine idee war jetzt, statt .dummy an jedes uploadfile .php dranzuhängen und in dem phpfile dann eine variable einzubauen an die der content des uploadfiles übergeben wird.
was aber bei binär dateien wohl nicht ohne weiteres geht.
hier der code zu der methode:
beim speichern:
beim auslesen:
das klappt bei plain/text files wunderbar, jedoch nicht bei binärdateien.
danach habe ich das probiert, was zwar funktioniert, aber megalahm ist:
beim speichern:
beim auslesen:
das ist natürrlich voll lahm und deshalb die frage, ob einer von euch nicht ne coolere methode kennt?
vielen dank!
gruss,
beebob
habe folgendes zu lösen:
ich schreibe gerade ein tool, mit dem man u.a. beliebige files hochladen kann.
jetzt habe ich vor, diese files zu schützen. es kann ja sein, dass jemand ein php file hochlädt und es wäre ja net so gut, wenn man das 1:1 kopiert mit dateiendung .php.
zunächst habe ich halt einfach .dummy angehangen. würde auch reichen, jedoch habe ich da noch ein skript, mit dem man files includen kann. diese files müssen zwar auf dem server liegen, da es aber nun diese upload funktion gibt, könnte man das upgeloadete file damit einbinden und code ausführen.
meine idee war jetzt, statt .dummy an jedes uploadfile .php dranzuhängen und in dem phpfile dann eine variable einzubauen an die der content des uploadfiles übergeben wird.
was aber bei binär dateien wohl nicht ohne weiteres geht.
hier der code zu der methode:
beim speichern:
PHP-Code:
$contents = "<?php\\n\\$contents='" . addslashes( $data ) . "';\n?>"; // da sollten noch ein paar backslashes drin sein, aber die ziehen hier alle raus! code is ok!
PHP-Code:
include_once( "admin/SiteBlaster/i/" . $name . ".php" );
echo stripslashes( $contents );
danach habe ich das probiert, was zwar funktioniert, aber megalahm ist:
beim speichern:
PHP-Code:
$contents = "<?php\\n\\$contents='" . bin2hex( $data ) . "';\n?>";
PHP-Code:
include_once( "admin/SiteBlaster/i/" . $name . ".php" );
echo _hex2bin( $contents );
vielen dank!
gruss,
beebob
Kommentar