PHP Gets Security Updates

The widely deployed PHP language has been updated with two important patches fixing both security issues and stability bugs

This past week, two important updates were issued for PHP, providing both security and bug fixes. Like many things in the open source world (and technology in general), there isn’t just one version of PHP that is currently in use – in fact, there are now at least three main stable releases, including PHP 5.5, 5.4 and 5.3. The new security updates are for the 5.5 and 5.4 branches.

The open-source PHP language is one of the most widely deployed technologies on the web today, powering millions of websites.

Memory heap corruption

PHP 5.4.18 fixes 30 bugs, including two that are specifically identified as security vulnerabilities. One of the security flaws is CVE-2013-4113, which is a memory heap corruption issue in PHP’s XML parser. In a heap corruption flaw, there is the potential for an attacker to abuse memory in order to get unauthorised code to run.

Program code on a monitor © alexskopje - FotoliaThe CVE-2013-4113 flaw was first reported in early July and fixed in PHP 5.5.1 and PHP 5.3.27. The National Institute of Standards and Technology’s (NIST’s) National Vulnerability Database rates the flaw as only having a medium base CVSS score of 6.8 out of 10. CVSS – the Common Vulnerability Scoring System – provides a baseline for vulnerability impact and analysis.

Both PHP 5.4.18 and PHP 5.5.2 are receiving a security update for an OpenSSL flaw identified as CVE-2013-4248. The OpenSSL module in PHP enables encrypted Secure Sockets Layer (SSL) transport over the web. The CVE-2013-4248 flaw could potentially enable a man-in-the-middle (MITM) attack against SSL. In an MITM attack, the attacker sits in the middle of the transport chain, intercepting and then impersonating the legitimate traffic.

Strict Sessions

PHP 5.5.2 is now also set to benefit from a new capability that will limit the risk of a security weakness known as “Session Fixation”. Session Fixation is defined by the Common Weakness Enumeration database as “authenticating a user, or otherwise establishing a new user session, without invalidating any existing session identifier which gives an attacker the opportunity to steal authenticated sessions”.

The implementation of something known as “Strict Sessions” in PHP 5.5.2 is an attempt to limit the risk of Session Fixation attacks. The proposal to include Strict Sessions in PHP was first made in 2011, so this is an effort that is years in the making.

PHP 5.5 itself was first released in June of this year and isn’t yet widely deployed. It’ll be interesting to see if the Strict Sessions capability is backported to PHP 5.4 and 5.3 in the coming weeks.

Are you a security pro? Try our quiz!

Originally published on eWeek.