← Vulnerability feed

Vulnerability record · CVE-2014-8142 · published 20 December 2014

CVE-2014-8142: PHP unserialize use-after-free via duplicate object keys

Php · Php

PHP's process_nested_data function in ext/standard/var_unserializer.re mishandles duplicate keys within serialized object properties, causing a use-after-free. This affects PHP before 5.4.36, 5.5.x before 5.5.20, and 5.6.x before 5.6.4, and a crafted unserialize call can lead to arbitrary code execution.

7.5 CVSS 2.0 High EPSS 53% · top 1.1%
7.5CVSS 2.0 base score
53%EPSS exploitation probability, 30 days
NoNot in CISA KEV
1Affected product versions listed by NVD
34References, 2 tagged exploit
17 Jun 2026Last modified by NVD

Description

Use-after-free vulnerability in the process_nested_data function in ext/standard/var_unserializer.re in PHP before 5.4.36, 5.5.x before 5.5.20, and 5.6.x before 5.6.4 allows remote attackers to execute arbitrary code via a crafted unserialize call that leverages improper handling of duplicate keys within the serialized properties of an object, a different vulnerability than CVE-2004-1019.

AV:N/AC:L/Au:N/C:P/I:P/A:P

Automated analysis

Generated by VULONE's analysis model from the NVD record, CISA KEV and EPSS data on 20 September 2026. Confidence: high.

high priorityRemote unauthenticated code execution with public exploit material and very high EPSS, though not in KEV.

What it is

PHP's process_nested_data function in ext/standard/var_unserializer.re mishandles duplicate keys within serialized object properties, causing a use-after-free. This affects PHP before 5.4.36, 5.5.x before 5.5.20, and 5.6.x before 5.6.4, and a crafted unserialize call can lead to arbitrary code execution.

Impact

An attacker can corrupt memory and potentially execute arbitrary code in the context of the PHP process. This can lead to full compromise of the web application or server depending on privileges.

Attack surface

Reachable remotely over the network with no authentication required (AV:N/Au:N) wherever untrusted input is passed to unserialize(). No user interaction is indicated by the vector.

Exploitation

Not listed in CISA KEV, but EPSS is high (0.53166, 98.9th percentile) and a reference is tagged Exploit, indicating public exploit material exists.

What to do

  • Upgrade PHP to 5.4.36, 5.5.20, 5.6.4 or later, or apply the vendor commit fix.
  • Apply distribution security updates (Debian DSA-3117, Red Hat RHSA-2015-1053/1066/1135, openSUSE, Gentoo GLSA 201503-03).
  • Avoid passing untrusted input to unserialize(); use json_decode or other safe formats instead.
  • If unserialize must be used, restrict it with allowed_classes and validate/sanitize input before deserialization.

Detection

  • Search application and web logs for requests containing serialized object payloads with duplicate property keys.
  • Monitor for PHP process crashes or abnormal memory errors correlated with unserialize calls.
  • Use WAF or runtime rules to flag or block untrusted serialized data reaching unserialize().

This assessment is produced automatically and is not human-reviewed. Verify against the vendor advisory before acting on it.

Affected products

1 vulnerable configurations from NVD's CPE data, grouped by vendor and product.

References

LinkTags
http://git.php.net/?p=php-src.git%3Ba=commit%3Bh=630f9c33c23639de85c3fd306b209b538b73b4c9
http://lists.opensuse.org/opensuse-security-announce/2015-02/msg00029.html
http://lists.opensuse.org/opensuse-updates/2015-02/msg00079.html
http://marc.info/?l=bugtraq&m=143403519711434&w=2
http://marc.info/?l=bugtraq&m=143748090628601&w=2
http://marc.info/?l=bugtraq&m=144050155601375&w=2
http://php.net/ChangeLog-5.php Vendor Advisory
http://rhn.redhat.com/errata/RHSA-2015-1053.html
http://rhn.redhat.com/errata/RHSA-2015-1066.html
http://rhn.redhat.com/errata/RHSA-2015-1135.html
http://www.debian.org/security/2014/dsa-3117
http://www.oracle.com/technetwork/topics/security/bulletinjan2015-2370101.html
http://www.oracle.com/technetwork/topics/security/linuxbulletinjan2016-2867209.html
http://www.securityfocus.com/bid/71791
https://bugs.php.net/bug.php?id=68594 ExploitVendor Advisory
https://bugzilla.redhat.com/show_bug.cgi?id=1175718
https://security.gentoo.org/glsa/201503-03
http://git.php.net/?p=php-src.git%3Ba=commit%3Bh=630f9c33c23639de85c3fd306b209b538b73b4c9
http://lists.opensuse.org/opensuse-security-announce/2015-02/msg00029.html
http://lists.opensuse.org/opensuse-updates/2015-02/msg00079.html
http://marc.info/?l=bugtraq&m=143403519711434&w=2
http://marc.info/?l=bugtraq&m=143748090628601&w=2
http://marc.info/?l=bugtraq&m=144050155601375&w=2
http://php.net/ChangeLog-5.php Vendor Advisory
http://rhn.redhat.com/errata/RHSA-2015-1053.html
http://rhn.redhat.com/errata/RHSA-2015-1066.html
http://rhn.redhat.com/errata/RHSA-2015-1135.html
http://www.debian.org/security/2014/dsa-3117
http://www.oracle.com/technetwork/topics/security/bulletinjan2015-2370101.html
http://www.oracle.com/technetwork/topics/security/linuxbulletinjan2016-2867209.html
http://www.securityfocus.com/bid/71791
https://bugs.php.net/bug.php?id=68594 ExploitVendor Advisory
https://bugzilla.redhat.com/show_bug.cgi?id=1175718
https://security.gentoo.org/glsa/201503-03

Track CVE-2014-8142 inside VULONE

Watch it alongside the ransomware crews, C2 infrastructure and forum chatter that reference it, query it through the API and pull it into your SIEM over TAXII.

Start free Open in platform

Related vulnerabilities

Same products first, then exploited flaws of the same weakness class.

9.8CVE-2024-4577PHP-CGI on Windows argument injection leads to remote code executionPHP-CGI on Windows can misinterpret characters in the command line passed to Win32 API functions when certain code pages are configured, due to Windo…KEVEPSS 100%analysed9.8CVE-2019-11043PHP-FPM buffer overflow enables remote code executionPHP-FPM in certain configurations writes past allocated buffers into FCGI protocol data space, an out-of-bounds write (CWE-787, CWE-120). It affects …KEVEPSS 100%analysed9.8CVE-2012-1823PHP-CGI query string option injection enables remote code executionPHP versions before 5.3.12 and 5.4.x before 5.4.2, when run as a CGI script (php-cgi), mishandle query strings that lack an equals sign, allowing com…KEVEPSS 100%analysed10.0CVE-2015-0235glibc gethostbyname heap buffer overflow (GHOST)CVE-2015-0235 is a heap-based buffer overflow in the __nss_hostname_digits_dots function in glibc 2.2 and other 2.x versions before 2.18. It is reach…EPSS 95%analysed10.0CVE-2012-2688Php vulnerabilityUnspecified vulnerability in the _php_stream_scandir function in the stream implementation in PHP before 5.3.15 and 5.4.x before 5.4.5 has unknown im…EPSS 10%10.0CVE-2012-2376Php memory buffer overflow vulnerabilityBuffer overflow in the com_print_typeinfo function in PHP 5.4.3 and earlier on Windows allows remote attackers to execute arbitrary code via crafted …EPSS 20%10.0CVE-2011-3268Php memory buffer overflow vulnerabilityBuffer overflow in the crypt function in PHP before 5.3.7 allows context-dependent attackers to have an unspecified impact via a long salt argument, …EPSS 5.7%10.0CVE-2009-4143Php vulnerabilityPHP before 5.2.12 does not properly handle session data, which has unspecified impact and attack vectors related to (1) interrupt corruption of the S…EPSS 2.9%

Source: NIST National Vulnerability Database (record CVE-2014-8142), CISA KEV, FIRST EPSS (scores of 2026-09-26). This page is refreshed as NVD updates the record.