Stefan Esser start Month of PHP Bugs
Zoals we al schreven bij de release van PHP 5.2.1 was Stefan Esser van plan om in maart een Month Of PHP Bugs (MOPB) te houden net zoals deze ook al eens gehouden werd voor Apple software (MOAP). Maart is inmiddels begonnen en Stefan Esser is dan ook meteen los gegaan en heeft al niet minder dan 5 advisories vrijgegeven:
- MOPB-01 - PHP 4 Userland ZVAL Reference Counter Overflow Vulnerability In PHP 4 userland code is able to overflow the internal 16bit zval reference counter by creating many references to a variable. This leads to an exploitable double dtor condition.
- MOPB-02 - PHP Executor Deep Recursion Stack Overflow A deep recursion of PHP userland code will exhaust all available stack which leads to a sometimes remotely triggerable crash.
- MOPB-03 - PHP Variable Destructor Deep Recursion Stack Overflow The destruction of deeply nested PHP arrays will exhaust all available stack which leads to remotely triggerable crashes.
- MOPB-04 - PHP 4 unserialize() ZVAL Reference Counter Overflow During unserialisation of user supplied data that contains a lot of references to a variable the internal 16bit zval reference counter can overflow. This leads to an exploitable double dtor condition.
- MOPB-05 - PHP unserialize() 64 bit Array Creation Denial of Service Vulnerability Deserialisation of malformed PHP arrays from within unserialize() might result in a tight endless loop exhausting CPU ressources on 64bit systems.
Deze problemen zijn wel serieus maar gelukkig niet allemaal unpatched. Sommige problemen zijn reeds opgelost in de meest recente versies van PHP, terwijl andere alleen in PHP4 een probleem zijn. In andere gevallen zijn de problemen te omzeilen door Stefan Esser's Suhosin extensie te gebruiken.
Met de eerste advisories een Proof-of-Concept exploits beschikbaar wordt het interessant om te zien hoe de PHP ontwikkelaars gaan reageren op de claims van Esser. Ondanks de wat moeizame relaties tussen Stefan Esser en de PHP group lijkt het mij dat de PHP group het zich niet kan veroorloven om niet te reageren op deze zaken. Zeker met de mogelijke exploits die bijv. door MOPB-04 worden beschreven.
In ander nieuws: PHP 4.4.6 is vrijgegeven met een oplossing voor een crash in 4.4.5 dat kon ontstaan wanneer je sessies en register_globals gebruikte.
Volg Scriptorama via RSS!
Reageer ook!
"Het lijkt mij dat de PHP group het zich niet kan veroorloven om te reageren op deze zaken."
neem aan dat je dat andersom bedoelt..
Door Ivo Jansch
op 03.03.07 @ 8:59 am | Permalink
Uiteraard. Updated.
Door Mathieu Kooiman
op 03.03.07 @ 6:44 pm | Permalink
Wat je er verder ook van mag vinden, slordigheden komen wel aan het licht. In PHP 4.4.3 t/m 4.4.6 kun je bijvoorbeeld (weer) vrolijk JavaScript injecteren met GET en POST parameters in phpinfo(): http://www.php-security.org/MOPB/MOPB-08-2007.html
Door Michel de Lange
op 03.05.07 @ 2:09 pm | Permalink