Multiple Vulnerabilities Discovered in PHP

Multiple Vulnerabilities Discovered in PHP

A cybersecurity alert was issued Friday, Oct. 25, 2019, regarding multiple vulnerabilities in PHP. The vulnerabilities could allow an attacker to execute arbitrary code, which could potentially lead to a breach.

What It Is:
Multiple vulnerabilities have been discovered in PHP, the most severe of which could allow for arbitrary code execution. PHP is a programming language originally designed for use in web-based applications with HTML content. PHP supports a wide variety of platforms and is used by numerous web-based software applications.

Successfully exploiting the most severe of these vulnerabilities could allow for arbitrary code execution in the context of the affected application. Depending on the privileges associated with the application, an attacker could install programs; view, change, or delete data; or create new accounts with full user rights. Failed exploitation could result in a denial-of-service condition.

Read the original PHP 7 ChangeLogs below for more information:

Version 7.1.33
Version 7.2.24
Version 7.3.11

Threat Intelligence:
This vulnerability is being exploited in the wild with confirmed Proof of Concepts on PHP versions 7.1 to 7.3.

Systems Affected:

• PHP 7.1 Prior to Version 7.1.33
• PHP 7.2 Prior to Version 7.2.24
• PHP 7.3 Prior to Version 7.3.11

Risk:
Government:
• Large and medium government entities: High
• Small government entities: High
Businesses:
• Large and medium business entities: High
• Small business entities: High
Home users: Low

What It Means:
If you and/or your business utilize the PHP versions mentioned above, you will need to upgrade to the latest version of PHP immediately following proper testing.

Technical Summary:
Multiple vulnerabilities have been discovered in PHP, the most severe of which could allow for arbitrary code execution. Details of these vulnerabilities are as below:

Version 7.1.33
• Bug #78599 (env_path_info underflow in fpm_main.c can lead to RCE)
Version 7.2.24
• Bug #78535 (auto_detect_line_endings value not parsed as bool)
• Bug #78620 (Out of memory error)
• Bug #78442 ('Illegal component' on exif_read_data since PHP7)
• Bug #78599 (env_path_info underflow in fpm_main.c can lead to RCE)
• Bug #78579 (mb_decode_numericentity: args number inconsistency)
• Bug #78609 (mb_check_encoding())
• Bug #76809 (SSL settings aren't respected when persistent connections are used)
• Bug #78623 (Regression caused by "SP call yields additional empty result set")
• Bug #78624 (session_gc return value for user defined session handlers)
• Bug #76342 (file_get_contents waits twice specified timeout)
• Bug #78612 (strtr leaks memory when integer keys are used and the subject string shorter)
• Bug #76859 (stream_get_line skips data if used with data-generating filter)
• Bug #78641 (addGlob can modify given remove_path value)
Version 7.3.11
• Bug #78535 (auto_detect_line_endings value not parsed as bool)
• Bug #78620 (Out of memory error)
• Bug #78442 ('Illegal component' on exif_read_data since PHP7)
• Bug #78599 (env_path_info underflow in fpm_main.c can lead to RCE)
• Bug #78413 (request_terminate_timeout does not take effect after fastcgi_finish_request)
• Bug #78633 (Heap buffer overflow (read))
• Bug #78579 (mb_decode_numericentity: args number inconsistency)
• Bug #78609 (mb_check_encoding())
• Bug #76809 (SSL settings aren't respected when persistent connections are used)
• Bug #78525 (Memory leak in pdo when reusing native prepared statements)
• Bug #78272 (calling preg_match())
• Bug #78623 (Regression caused by "SP call yields additional empty result set")
• Bug #78624 (session_gc return value for user defined session handlers)
• Bug #76342 (file_get_contents waits twice specified timeout)
• Bug #78612 (strtr leaks memory when integer keys are used and the subject string shorter)
• Bug #76859 (stream_get_line skips data if used with data-generating filter)
• Bug #78641 (addGlob can modify given remove_path value)

What To Do:
We recommend the following actions be taken:

• Upgrade to the latest version of PHP immediately, after appropriate testing.
• Verify no unauthorized system modifications have occurred on system before applying patch.
• Apply the Principle of Least Privilege to all systems and services.
• Remind users not to visit websites or follow links provided by unknown or untrusted sources.

Negative Consequences of Lost or Stolen Data:
The loss or theft of proprietary data can have severe impacts, particularly if the compromise becomes public and sensitive information is exposed. Possible impacts include:

• Temporary or permanent loss of sensitive or proprietary information.
• Disruption to regular operations.
• Financial losses incurred to restore systems and files.
• Potential harm to an organization’s reputation.

Should your agency or business need assistance with issues arising from vulnerabilities in PHP including updates and/or patches, Dox can help. Please contact Dox if there is anything we can do to assist in securing your agency, business, or organization.

Thank you for your time and stay safe online.