Type confusion in PHP - CVE-2015-4147

 

Type confusion in PHP - CVE-2015-4147

Published: December 21, 2016 / Updated: November 27, 2018


Vulnerability identifier: #VU2556
CSH Severity: High
CVSS v4: 9.3 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N]
CVE-ID: CVE-2015-4147
CWE-ID: CWE-843
Exploitation vector: Remote access
Exploit availability: No public exploit available

Vulnerability details

The vulnerability allows a remote attacker to execute arbitrary code on the target system.

The weakness exists due to type confusion in the SoapClient::__call method in ext/soap/soap.c in PHP before 5.4.39, 5.5.x before 5.5.23, and 5.6.x before 5.6.7 does not verify that __default_headers is an array. A remote attacker can trigger memory corruption and execute arbitrary code by providing crafted serialized data with an unexpected data type.

Successful exploitation of the vulnerability may result in system compromise.

Affected software

PHP
php5 (Ubuntu package)

How to mitigate CVE-2015-4147

Install update from vendor's website.

PHP - addressed in versions 5.4.39, 5.5.23, 5.6.7
php5 (Ubuntu package) - addressed in versions 5.3.10-1ubuntu3.19, 5.5.9+dfsg-1ubuntu4.11, 5.5.12+dfsg-2ubuntu4.6, 5.6.4+dfsg-4ubuntu6.2

External References

Related Security Bulletins