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 MITRE CVE dictionary describes this issue as:
Find out more about CVE-2016-10712 from the MITRE CVE dictionary dictionary and NIST NVD.
NOTE: The following CVSS v3 metrics and score provided are preliminary and subject to review.
CVSS3 Base Score | 3.7 |
---|---|
CVSS3 Base Metrics | CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N |
Attack Vector | Network |
Attack Complexity | High |
Privileges Required | None |
User Interaction | None |
Scope | Unchanged |
Confidentiality | None |
Integrity Impact | Low |
Availability Impact | None |
Platform | Package | State |
---|---|---|
Red Hat Software Collections for Red Hat Enterprise Linux | php55-php | Will not fix |
Red Hat Software Collections for Red Hat Enterprise Linux | rh-php56-php | Will not fix |
Red Hat Software Collections for Red Hat Enterprise Linux | php54-php | Will not fix |
Red Hat Enterprise Linux 7 | php | Will not fix |
Red Hat Enterprise Linux 6 | php | Will not fix |
Red Hat Enterprise Linux 5 | php53 | Will not fix |
Red Hat Enterprise Linux 5 | php | Will not fix |