Mailinglisten-Archive |
Yannik Hampe schrieb:
> Sebastian Mendel wrote:
>> schon gelesen?
>>
>> http://www.hardened-php.net/hphp/zend_hash_del_key_or_index_vulnerability.html
>>
>>
>> so auf die schnelle würde mir einfallen einfach alle Anfragen mit einer
>> Zahl als Namen abzulehnen, oder?
>>
> *les*
> Interessanter Bug...
> Also ja... Meines Erachtens müsste sowas schützen:
> if (preg_match('/[?&][-]{0,1}\d+=/',$_SERVER['REQUEST_URI']))
> exit('Irgendeine Fehlermeldung');
> (Code by Yannik Hampe, with 14-days-money-back guarantee... Use at your
> own risk...)
und was ist mit ; anstelle von ?
und mit POST und COOKIE?
script.php?var=1;123=fake
Wie es ja schon seit Jahren vom W3C empfohlen wird und auch verwendet wird.
ein is_numeric über die $_REQUEST keys wäre wohl am praktischsten ...
> Ansonsten kann man natürlich auch einfach bestimmten Code vermeiden. Zum
> Beispiel "deren" Beispielcode:
>
> [...]
Da gibt es auch wesentlich verbreiterten Code wo das zutrifft, der
gezeigte war wohl nur der kürzeste.
Besonders da man ja nicht garantieren kann das auf allen Systemen
register_globals=off ist.
--
Sebastian
php::bar PHP Wiki - Listenarchive