PHP up to 5.5.36/5.6.22 SPL Extension spl_array.c use after free
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 9.3 | $0-$5k | 0.00 |
Summary
A vulnerability, which was classified as critical, has been found in PHP up to 5.5.36/5.6.22. This affects an unknown function of the file spl_array.c of the component SPL Extension. This manipulation causes use after free. This vulnerability is tracked as CVE-2016-5771. The attack is possible to be carried out remotely. Moreover, an exploit is present. It is advisable to upgrade the affected component.
Details
A vulnerability was found in PHP up to 5.5.36/5.6.22 (Programming Language Software). It has been declared as critical. Affected by this vulnerability is an unknown functionality of the file spl_array.c of the component SPL Extension. The manipulation with an unknown input leads to a use after free vulnerability. The CWE definition for the vulnerability is CWE-416. Referencing memory after it has been freed can cause a program to crash, use unexpected values, or execute code. As an impact it is known to affect confidentiality, integrity, and availability. The summary by CVE is:
spl_array.c in the SPL extension in PHP before 5.5.37 and 5.6.x before 5.6.23 improperly interacts with the unserialize implementation and garbage collection, which allows remote attackers to execute arbitrary code or cause a denial of service (use-after-free and application crash) via crafted serialized data.
The weakness was disclosed 08/07/2016 (Website). The advisory is shared at lists.apple.com. This vulnerability is known as CVE-2016-5771 since 06/23/2016. The attack can be launched remotely. The exploitation doesn't need any form of authentication. Technical details and also a public exploit are known.
It is possible to download the exploit at exploit-db.com. It is declared as proof-of-concept. We expect the 0-day to have been worth approximately $25k-$100k. The vulnerability scanner Nessus provides a plugin with the ID 91839 (FreeBSD : php -- multiple vulnerabilities (66d77c58-3b1d-11e6-8e82-002590263bf5)), which helps to determine the existence of the flaw in a target environment. It is assigned to the family FreeBSD Local Security Checks and running in the context l. The commercial vulnerability scanner Qualys is able to test this issue with plugin 175784 (Debian Security Update for php5 (DSA 3618-1)).
Upgrading to version 5.5.37 or 5.6.23 eliminates this vulnerability. A possible mitigation has been published even before and not after the disclosure of the vulnerability.
The vulnerability is also documented in the databases at Exploit-DB (40414), Tenable (91839) and SecurityFocus (BID 91401†). The entries VDB-67631, VDB-68572, VDB-68959 and VDB-77708 are pretty similar. If you want to get the best quality for vulnerability data then you always have to consider VulDB.
Product
Type
Name
Version
- 5.5.0
- 5.5.1
- 5.5.2
- 5.5.3
- 5.5.4
- 5.5.5
- 5.5.6
- 5.5.7
- 5.5.8
- 5.5.9
- 5.5.10
- 5.5.11
- 5.5.12
- 5.5.13
- 5.5.14
- 5.5.15
- 5.5.16
- 5.5.17
- 5.5.18
- 5.5.19
- 5.5.20
- 5.5.21
- 5.5.22
- 5.5.23
- 5.5.24
- 5.5.25
- 5.5.26
- 5.5.27
- 5.5.28
- 5.5.29
- 5.5.30
- 5.5.31
- 5.5.32
- 5.5.33
- 5.5.34
- 5.5.35
- 5.5.36
- 5.6.0
- 5.6.1
- 5.6.2
- 5.6.3
- 5.6.4
- 5.6.5
- 5.6.6
- 5.6.7
- 5.6.8
- 5.6.9
- 5.6.10
- 5.6.11
- 5.6.12
- 5.6.13
- 5.6.14
- 5.6.15
- 5.6.16
- 5.6.17
- 5.6.18
- 5.6.19
- 5.6.20
- 5.6.21
- 5.6.22
License
Website
- Product: https://www.php.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 9.8VulDB Meta Temp Score: 9.3
VulDB Base Score: 9.8
VulDB Temp Score: 8.8
VulDB Vector: 🔍
VulDB Reliability: 🔍
NVD Base Score: 9.8
NVD Vector: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
NVD Base Score: 🔍
Exploiting
Class: Use after freeCWE: CWE-416 / CWE-119
CAPEC: 🔍
ATT&CK: 🔍
Physical: No
Local: No
Remote: Yes
Availability: 🔍
Access: Public
Status: Proof-of-Concept
Download: 🔍
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 91839
Nessus Name: FreeBSD : php -- multiple vulnerabilities (66d77c58-3b1d-11e6-8e82-002590263bf5)
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍
Nessus Context: 🔍
OpenVAS ID: 14611
OpenVAS Name: Amazon Linux Local Check: alas-2016-728
OpenVAS File: 🔍
OpenVAS Family: 🔍
Qualys ID: 🔍
Qualys Name: 🔍
Exploit-DB: 🔍
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔍
Upgrade: PHP 5.5.37/5.6.23
Patch: github.com
Timeline
06/23/2016 🔍06/23/2016 🔍
06/25/2016 🔍
06/27/2016 🔍
08/07/2016 🔍
08/07/2016 🔍
08/08/2016 🔍
09/13/2022 🔍
Sources
Product: php.orgAdvisory: 72433
Status: Not defined
Confirmation: 🔍
CVE: CVE-2016-5771 (🔍)
GCVE (CVE): GCVE-0-2016-5771
GCVE (VulDB): GCVE-100-90637
OVAL: 🔍
SecurityFocus: 91401 - PHP 'ext/spl/spl_array.c' Use After Free Remote Code Execution Vulnerability
scip Labs: https://www.scip.ch/en/?labs.20161013
See also: 🔍
Entry
Created: 08/08/2016 15:23Updated: 09/13/2022 09:33
Changes: 08/08/2016 15:23 (57), 03/22/2019 08:51 (26), 09/13/2022 09:30 (4), 09/13/2022 09:33 (1)
Complete: 🔍
Cache ID: 216::103
If you want to get the best quality for vulnerability data then you always have to consider VulDB.
No comments yet. Languages: en.
Please log in to comment.