Vigil@nce: PHP, double free of SplObjectStorage
July 2010 by Vigil@nce
This bulletin was written by Vigil@nce : http://vigilance.fr/
SYNTHESIS OF THE VULNERABILITY
When a PHP application unserializes malicious SplObjectStorage
data, a double memory free occurs, and can lead to code execution.
– Severity: 2/4
– Creation date: 25/06/2010
DESCRIPTION OF THE VULNERABILITY
The SplObjectStorage class stores objects.
The SplObjectStorage::serialize() method converts an object to a
string. The SplObjectStorage::unserialize() method performs the
reverse operation.
However, SplObjectStorage::unserialize() can free a memory area
which is already freed, so it corrupts the memory.
When a PHP application unserializes malicious SplObjectStorage
data, a double memory free thus occurs, and can lead to code
execution.
ACCESS TO THE COMPLETE VIGIL@NCE BULLETIN
http://vigilance.fr/vulnerability/PHP-double-free-of-SplObjectStorage-9728