Executive brief
PHP, a widely used web programming language, contains a vulnerability in how it processes certain types of data. An attacker can send specially crafted data to a web application to cause the server to crash, leading to a denial of service. This could disrupt business operations by making websites or web-based services unavailable to users.
Technical details
A buffer over-read vulnerability exists in PHP's `object_common1` function within `ext/standard/var_unserializer.c`. The flaw is triggered during the deserialization process when handling nested data via the `finish_nested_data` call. A remote, unauthenticated attacker can exploit this by providing maliciously crafted serialized strings to an application that uses PHP's `unserialize()` function. Successful exploitation results in an application crash (Denial of Service) due to an out-of-bounds memory read. The issue was addressed in PHP versions 5.6.30, 7.0.15, and 7.1.1.
Affected products
- PHP PHP before 5.6.30, 7.0.x before 7.0.15, 7.1.x before 7.1.1
Timeline
- 2017-01-19: patched: Fixed in PHP 5.6.30
- 2017-01-24: disclosed: CVE published to NVD