| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 3.4 | $0-$5k | 0.00 |
Summary
A vulnerability has been found in PHP up to 5.5.13 and classified as problematic. This impacts the function php_print_info. This manipulation causes information disclosure (Memory).
This vulnerability is handled as CVE-2014-4721. Additionally, an exploit exists.
The affected component should be upgraded.
Details
A vulnerability was found in PHP up to 5.5.13 (Programming Language Software). It has been declared as problematic. Affected by this vulnerability is the function php_print_info. The manipulation with an unknown input leads to a information disclosure vulnerability (Memory). The CWE definition for the vulnerability is CWE-200. The product exposes sensitive information to an actor that is not explicitly authorized to have access to that information. As an impact it is known to affect confidentiality.
The weakness was released 07/04/2014 by Stefan Esser (i0n1c) with SektionEins GmbH as phpinfo() Type Confusion Infoleak Vulnerability and SSL Private Keys as confirmed blog post (Website). The advisory is shared at sektioneins.de. The public release happened without involvement of the project team. This vulnerability is known as CVE-2014-4721 since 07/06/2014. The exploitation appears to be difficult. The attack can be launched remotely. The exploitation doesn't need any form of authentication. Technical details and also a public exploit are known. MITRE ATT&CK project uses the attack technique T1592 for this issue. Responsible for the vulnerability is the following code:
php_info_print_table_start();
php_info_print_table_header(2, "Variable", "Value");
if (zend_hash_find(&EG(symbol_table), "PHP_SELF", sizeof("PHP_SELF"), (void **) &data) != FAILURE) {
php_info_print_table_row(2, "PHP_SELF", Z_STRVAL_PP(data));
}
if (zend_hash_find(&EG(symbol_table), "PHP_AUTH_TYPE", sizeof("PHP_AUTH_TYPE"), (void **) &data) != FAILURE) {
php_info_print_table_row(2, "PHP_AUTH_TYPE", Z_STRVAL_PP(data));
}
if (zend_hash_find(&EG(symbol_table), "PHP_AUTH_USER", sizeof("PHP_AUTH_USER"), (void **) &data) != FAILURE) {
php_info_print_table_row(2, "PHP_AUTH_USER", Z_STRVAL_PP(data));
}
if (zend_hash_find(&EG(symbol_table), "PHP_AUTH_PW", sizeof("PHP_AUTH_PW"), (void **) &data) != FAILURE) {
php_info_print_table_row(2, "PHP_AUTH_PW", Z_STRVAL_PP(data));
} The advisory points out:The code above looks up the variables in question in the symbol table and then passes their value to the php_info_print_table_row() function. However it does this without checking first if the variable retrieved is actually a string variable.
A public exploit has been developed by Stefan Esser in PHP and been published immediately after the advisory. It is possible to download the exploit at sektioneins.de. It is declared as proof-of-concept. The vulnerability scanner Nessus provides a plugin with the ID 77032 (CentOS 5 / 6 : php / php53 (CESA-2014:1012)), which helps to determine the existence of the flaw in a target environment. It is assigned to the family CentOS Local Security Checks. The commercial vulnerability scanner Qualys is able to test this issue with plugin 169006 (SUSE Enterprise Linux Security Update for php53 (SUSE-SU-2016:1638-1)). The code used by the exploit is:
$PHP_SELF = 0x55555555; phpinfo(INFO_VARIABLES);
Upgrading eliminates this vulnerability.
The vulnerability is also documented in the databases at X-Force (94287), Tenable (77032), Secunia (SA59794†) and Vulnerability Center (SBV-45272†). Additional details are provided at bugzilla.redhat.com. Entries connected to this vulnerability are available at VDB-1062, VDB-3695, VDB-4322 and VDB-5786. If you want to get the best quality for vulnerability data then you always have to consider VulDB.
Product
Type
Name
Version
License
Website
- Product: https://www.php.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 3.7VulDB Meta Temp Score: 3.4
VulDB Base Score: 3.7
VulDB Temp Score: 3.4
VulDB Vector: 🔍
VulDB Reliability: 🔍
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: MemoryClass: Information disclosure / Memory
CWE: CWE-200 / CWE-284 / CWE-266
CAPEC: 🔍
ATT&CK: 🔍
Physical: No
Local: No
Remote: Yes
Availability: 🔍
Access: Public
Status: Proof-of-Concept
Author: Stefan Esser
Programming Language: 🔍
Download: 🔍
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 77032
Nessus Name: CentOS 5 / 6 : php / php53 (CESA-2014:1012)
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍
OpenVAS ID: 702974
OpenVAS Name: Debian Security Advisory DSA 2974-1 (php5 - security update)
OpenVAS File: 🔍
OpenVAS Family: 🔍
Qualys ID: 🔍
Qualys Name: 🔍
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔍
Exploit Delay Time: 🔍
Timeline
07/04/2014 🔍07/04/2014 🔍
07/06/2014 🔍
07/06/2014 🔍
07/06/2014 🔍
07/08/2014 🔍
07/09/2014 🔍
07/14/2014 🔍
02/08/2022 🔍
Sources
Product: php.orgAdvisory: phpinfo() Type Confusion Infoleak Vulnerability and SSL Private Keys
Researcher: Stefan Esser (i0n1c)
Organization: SektionEins GmbH
Status: Confirmed
Confirmation: 🔍
CVE: CVE-2014-4721 (🔍)
GCVE (CVE): GCVE-0-2014-4721
GCVE (VulDB): GCVE-100-67021
OVAL: 🔍
X-Force: 94287 - PHP php_print_info() information disclosure, Medium Risk
SecurityFocus: 52225
Secunia: 59794 - Debian update for php5, Moderately Critical
Vulnerability Center: 45272 - PHP <5.4.30 and 5.5 before 5.5.14 Remote Information Disclosure via Integer Data Type with Crafted Values, Low
scip Labs: https://www.scip.ch/en/?labs.20161013
Misc.: 🔍
See also: 🔍
Entry
Created: 07/09/2014 18:16Updated: 02/08/2022 16:04
Changes: 07/09/2014 18:16 (91), 06/01/2017 08:11 (2), 02/08/2022 15:58 (3), 02/08/2022 16:04 (2)
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.