PHP is a general-purpose scripting language widely used to develop web-based applications. It can run inside a web server using the mod_php module or the CGI version of PHP, or can run stand-alone in a CLI.
An integer overflow and an unbound recursion were discovered in the processing of Image File Directory tags in PHP's EXIF module (CAN-2005-1042, CAN-2005-1043). Furthermore, two infinite loops have been discovered in the getimagesize() function when processing IFF or JPEG images (CAN-2005-0524, CAN-2005-0525).
A remote attacker could craft an image file with a malicious EXIF IFD tag, a large IFD nesting level or invalid size parameters and send it to a web application that would process this user-provided image using one of the affected functions. This could result in denying service on the attacked server and potentially executing arbitrary code with the rights of the web server.
There is no known workaround at this time.
All PHP users should upgrade to the latest version:
# emerge --sync
# emerge --ask --oneshot --verbose ">=dev-php/php-4.3.11"
All mod_php users should upgrade to the latest version:
# emerge --sync
# emerge --ask --oneshot --verbose ">=dev-php/mod_php-4.3.11"
All php-cgi users should upgrade to the latest version:
# emerge --sync
# emerge --ask --oneshot --verbose ">=dev-php/php-cgi-4.3.11"