CVE-2015-6835: Use After Free
A use-after-free vulnerability was found in session deserializer. When session deserializer (php/phpbinary) is deserializing multiple data, it will call phpvarunserialize() multiple times. We can create ZVAL and free it via the phpvarunserialize() with a crafted serialized string. Then the next call phpvarunserialize() will still allow to use R: or r: to set references to that already freed memory. It is possible to use-after-free attack and execute arbitrary code remotely.
Upstream report:
https://bugs.php.net/bug.php?id=70219
Upstream patch:
http://git.php.net/?p=php-src.git;a=commitdiff;h=df4bf28f9f104ca3ef78ed94b497859f15b004e5
Other sources
The session deserializer in PHP before 5.4.45, 5.5.x before 5.5.29, and 5.6.x before 5.6.13 mishandles multiple phpvarunserialize calls, which allow remote attackers to execute arbitrary code or cause a denial of service (use-after-free) via crafted session content.
— MITRE
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
redhat/phpto a version that resolves this vulnerability.Fixed in 5.4.45 - Upgrade
Upgrade
redhat/phpto a version that resolves this vulnerability.Fixed in 5.5.29 - Upgrade
Upgrade
redhat/phpto a version that resolves this vulnerability.Fixed in 5.6.13 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 5.4.45 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 5.5.29 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 5.6.13
Event History
Frequently Asked Questions
What is the severity of CVE-2015-6835?
CVE-2015-6835 has a high severity as it allows remote attackers to execute arbitrary code or cause denial of service through crafted session content.
How do I fix CVE-2015-6835?
To fix CVE-2015-6835, upgrade your PHP installation to version 5.4.45, 5.5.29, or 5.6.13 or later.
What software versions are affected by CVE-2015-6835?
CVE-2015-6835 affects PHP versions prior to 5.4.45, 5.5.x before 5.5.29, and 5.6.x before 5.6.13.
What type of attacks can result from CVE-2015-6835?
CVE-2015-6835 can lead to remote code execution and denial of service attacks due to session deserialization vulnerabilities.
Is CVE-2015-6835 exploitable remotely?
Yes, CVE-2015-6835 is exploitable remotely, allowing attackers to execute code on vulnerable PHP servers.