PHP 5.4.1 getimagesize() Denial of Service Memory leak

ID 1337DAY-ID-18161
Type zdt
Reporter Manuel Fernandez
Modified 2012-04-29T00:00:00


Exploit for php platform in category dos / poc

                                            PHP 5.4.1 getimagesize() Denial of Service Memory leak


Getimagesize function is used to determine the size of an image. It recives
one parameter as URI. Getimagesize() doesn't implement any function to
verify if the remote file that is been downloaded is an image nor if the
size is higher than desired, so it could be possible to force the PHP
engine to download (through Getimagesize()) a huge file, causing a DoS (in
RAM and CPU) in the webserver.

This exploit has been tested successfully in few enviorments as forums
PHPBB, which uses this function when you're going to set an avatar, due
that PHPBB tries to calculate the file size before changing the avatar.

Vulnerable Versions:

PHP 5.4.1 and previous.


The vendor was not notified of the issue.

Manuel Fernбndez, Security consultant at Informatica64 [ sourvivor () gmail com]

Francisco Oca, Security consultant at Informatica64 [ xyzthor () gmail com ]

Greetings to the friends group of every thursday in this 2x1 bar. We love
you guys.

# [2018-01-02]  #