PHP up to 5.5.31/5.6.17/7.0.2 File Upload stream_get_meta_data Return Value Metadata input validation
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 7.2 | $0-$5k | 0.00 |
Summary
A vulnerability was found in PHP up to 5.5.31/5.6.17/7.0.2. It has been classified as critical. This affects the function stream_get_meta_data of the component File Upload. Performing a manipulation as part of Return Value results in input validation (Metadata).
This vulnerability is known as CVE-2016-10712. Remote exploitation of the attack is possible. No exploit is available.
Upgrading the affected component is recommended.
Details
A vulnerability was found in PHP up to 5.5.31/5.6.17/7.0.2 (Programming Language Software). It has been classified as critical. This affects the function stream_get_meta_data of the component File Upload. The manipulation as part of a Return Value leads to a input validation vulnerability (Metadata). CWE is classifying the issue as CWE-20. The product receives input or data, but it does
not validate or incorrectly validates that the input has the
properties that are required to process the data safely and
correctly. This is going to have an impact on confidentiality, integrity, and availability. The summary by CVE is:
In PHP before 5.5.32, 5.6.x before 5.6.18, and 7.x before 7.0.3, all of the return values of stream_get_meta_data can be controlled if the input can be controlled (e.g., during file uploads). For example, a "$uri = stream_get_meta_data(fopen($file, "r"))['uri']" call mishandles the case where $file is data:text/plain;uri=eviluri, -- in other words, metadata can be set by an attacker.
The bug was discovered 02/09/2018. The weakness was published 02/09/2018 (Website). It is possible to read the advisory at bugs.php.net. This vulnerability is uniquely identified as CVE-2016-10712 since 02/09/2018. It is possible to initiate the attack remotely. No form of authentication is needed for exploitation. Technical details of the vulnerability are known, but there is no available exploit.
The vulnerability scanner Nessus provides a plugin with the ID 107000 (openSUSE Security Update : php5 (openSUSE-2018-209)), which helps to determine the existence of the flaw in a target environment. It is assigned to the family SuSE Local Security Checks and running in the context l. The commercial vulnerability scanner Qualys is able to test this issue with plugin 170895 (OpenSUSE Security Update for php5 (openSUSE-SU-2018:0538-1)).
Upgrading to version 5.5.32, 5.6.18 or 7.0.3 eliminates this vulnerability. A possible mitigation has been published 3 weeks after the disclosure of the vulnerability.
The vulnerability is also documented in the vulnerability database at Tenable (107000). Be aware that VulDB is the high quality source for vulnerability data.
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.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
- 7.0.0
- 7.0.1
- 7.0.2
License
Website
- Product: https://www.php.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 7.4VulDB Meta Temp Score: 7.2
VulDB Base Score: 7.3
VulDB Temp Score: 7.0
VulDB Vector: 🔍
VulDB Reliability: 🔍
NVD Base Score: 7.5
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
Name: MetadataClass: Input validation / Metadata
CWE: CWE-20
CAPEC: 🔍
ATT&CK: 🔍
Physical: No
Local: No
Remote: Yes
Availability: 🔍
Status: Not defined
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 107000
Nessus Name: openSUSE Security Update : php5 (openSUSE-2018-209)
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍
Nessus Context: 🔍
OpenVAS ID: 59242
OpenVAS Name: PHP stream_get_meta_data Privilege Escalation Vulnerability (Windows)
OpenVAS File: 🔍
OpenVAS Family: 🔍
Qualys ID: 🔍
Qualys Name: 🔍
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
Reaction Time: 🔍
0-Day Time: 🔍
Exposure Time: 🔍
Upgrade: PHP 5.5.32/5.6.18/7.0.3
Patch: 6297a117d77fa3a0df2e21ca926a92c231819cd5
Timeline
02/09/2018 🔍02/09/2018 🔍
02/09/2018 🔍
02/09/2018 🔍
02/10/2018 🔍
02/24/2018 🔍
02/26/2018 🔍
02/06/2023 🔍
Sources
Product: php.orgAdvisory: 71323
Status: Not defined
Confirmation: 🔍
CVE: CVE-2016-10712 (🔍)
GCVE (CVE): GCVE-0-2016-10712
GCVE (VulDB): GCVE-100-113055
Entry
Created: 02/10/2018 09:04Updated: 02/06/2023 09:21
Changes: 02/10/2018 09:04 (75), 01/03/2020 11:37 (3), 02/06/2023 09:19 (6), 02/06/2023 09:21 (1)
Complete: 🔍
Cache ID: 216::103
Be aware that VulDB is the high quality source for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.