Junglewise Threat Intelligence

CVE-2016-10162: PHP WDDX NULL pointer dereference in php_wddx_pop_element

CVE-2016-10162 · Severity: high · CVSS 7.5 · Published 2017-01-24

Technologies: PHP Group PHP. Vendors: PHP Group.

Executive brief

PHP is a widely used programming language for web development. A vulnerability in its WDDX data exchange component allows an attacker to crash a web application by sending a specially crafted XML document. This results in a denial of service, potentially taking websites or web services offline.

Technical details

A NULL pointer dereference exists in the php_wddx_pop_element function within ext/wddx/wddx.c. The vulnerability is triggered during the deserialization of a WDDX packet when an inapplicable class name (such as an interface or abstract class) is provided. The object_init_ex function fails to instantiate these types and returns a NULL object pointer, which is subsequently mishandled by the wddx_deserialize call. A remote, unauthenticated attacker can exploit this by submitting a malicious XML document to a PHP script that processes WDDX data, leading to an immediate process crash. This issue was resolved in PHP versions 7.0.15 and 7.1.1.

Affected products

  • PHP Group PHP 7.0.x before 7.0.15, 7.1.x before 7.1.1

Timeline

  • 2016-12-29: disclosed: Bug reported to PHP bug tracker
  • 2017-01-24: advisory: NVD published the CVE record
  • 2017-01-19: patched: PHP 7.0.15 and 7.1.1 released

References

Related threats