Description
The SplObjectStorage unserialize implementation in ext/spl/spl_observer.c in PHP before 7.0.12 does not verify that a key is an object, which allows remote attackers to execute arbitrary code or cause a denial of service (uninitialized memory access) via crafted serialized data.
References (8)
Core 8
Core References
Exploit, Technical Description, Third Party Advisory x_refsource_misc
http://blog.checkpoint.com/wp-content/uploads/2016/12/PHP_Technical_Report.pdf
Broken Link, Third Party Advisory x_refsource_misc
https://www.youtube.com/watch?v=LDcaPstAuPk
Issue Tracking, Patch, Vendor Advisory x_refsource_misc
https://bugs.php.net/bug.php?id=73257
Release Notes, Vendor Advisory x_refsource_misc
http://php.net/ChangeLog-7.php
Third Party Advisory, VDB Entry vdb-entry
x_refsource_bid
http://www.securityfocus.com/bid/95152
Patch, Third Party Advisory x_refsource_misc
https://github.com/php/php-src/commit/61cdd1255d5b9c8453be71aacbbf682796ac77d4
Third Party Advisory x_refsource_confirm
https://security.netapp.com/advisory/ntap-20180112-0001/
Third Party Advisory, VDB Entry x_refsource_misc
http://blog.checkpoint.com/2016/12/27/check-point-discovers-three-zero-day-vulnerabilities-web-programming-language-php-7
Scores
CVSS v3
9.8
EPSS
0.0361
EPSS Percentile
87.8%
Attack Vector
NETWORK
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Details
CWE
CWE-119
Status
published
Products (3)
n/a/PHP before 7.0.12
PHP before 7.0.12
netapp/clustered_data_ontap
php/php
7.0.0 - 7.0.11
Published
Jan 11, 2017
Tracked Since
Feb 18, 2026