Multiple Vulnerabilities in PHP Could Allow for Arbitrary Code Execution

Bug #1798625 reported by Steven Hazlett
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
php7.2 (Ubuntu)
Expired
Undecided
Unassigned
Bionic
Expired
Undecided
Unassigned

Bug Description

It appears that the php7.2 package(s) for Ubuntu 18.04 (LTS) is/are stuck at 7.2.10. US-CERT sent out a warning about the vulnerabilities in this version:

https://www.us-cert.gov/ncas/current-activity/2018/10/12/MS-ISAC-Releases-Advisory-PHP-Vulnerabilities

and here is what us-cert points you to:

https://www.cisecurity.org/advisory/multiple-vulnerabilities-in-php-could-allow-for-arbitrary-code-execution_2018-113/

It seems pretty serious. Here is an excerpt:

***
TECHNICAL SUMMARY:
Multiple vulnerabilities have been discovered in PHP, the most severe of which could allow an attacker to execute arbitrary code. Details of these vulnerabilities are as below:

Version 7.2.11

Bug #76796 (Compile-time evaluation of disabled function in opcache causes segfault).
Bug #76800 (foreach inconsistent if array modified during loop).
Version 7.2.11 & Version 7.1.23

Bug #66828 (iconv_mime_encode Q-encoding longer than it should be).
Bug #73457 (Wrong error message when fopen FTP wrapped fails to open data connection).
Bug #74454 (Wrong exception being thrown when using ReflectionMethod).
Bug #74764 (Bindto IPv6 works with file_get_contents but fails with stream_socket_client).
Bug #75273 (php_zlib_inflate_filter() may not update bytes_consumed).
Bug #75533 (array_reduce is slow when $carry is large array).
Bug #75696 (posix_getgrnam fails to print details of group).
Bug #76480 (Use curl_multi_wait() so that timeouts are respected).
Bug #76832 (ZendOPcache.MemoryBase periodically deleted by the OS).
Bug #76846 (Segfault in shutdown function after memory limit error).
Bug #76901 (method_exists on SPL iterator passthrough method corrupts memory).
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.
***

lsb_release -rd:

Description: Ubuntu 18.04.1 LTS
Release: 18.04

apt-cache policy php7.2:

php7.2:
  Installed: 7.2.10-0ubuntu0.18.04.1
  Candidate: 7.2.10-0ubuntu0.18.04.1
  Version table:
 *** 7.2.10-0ubuntu0.18.04.1 500
        500 http://us-central1.gce.archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu bionic-security/main amd64 Packages
        100 /var/lib/dpkg/status
     7.2.3-1ubuntu1 500
        500 http://us-central1.gce.archive.ubuntu.com/ubuntu bionic/main amd64 Packages

information type: Private Security → Public
Revision history for this message
Steven Hazlett (shazlett) wrote :

I set this to public since clearly this vulnerability is publicly and widely known based on the links provided.

Revision history for this message
Nish Aravamudan (nacc) wrote :

Yeah, I mean, it would be good if there was an actual CVE attached to the exploit, as just saying "the most severe of which could allow an attacker to execute arbitrary code" without specifying which of the bugfixes they are referring to is sort of neither here nor there. Looking cursorily at the changes in 7.2.11, none are obviously security fixes (segfault prevention is good, of course) in the vein of arbitrary code execution, but I'm also not a security expert!

We will normally do MRE (microrelease updates) of PHP (esp. in the LTS series) at a regular cadence. AFAICT, this update only came out a week ago and wasn't embargoed, etc. (so I'm really not sure it's a pressing security issue, the ISAC notwithstanding).

I will try and work with the security team, but I expect this to just roll out via normal -updates otherwise.

Revision history for this message
Marc Deslauriers (mdeslaur) wrote :

Upstream hasn't identified any security fixes in the 7.2.11 release. They say "This is a bugfix release." rather than their usual "This is a security release." when there is a security impact.

Once again I believe US-CERT is just sending out their usual PHP placeholder text without actually checking.

Unless someone requests a CVE for one of those fixes, this version will not get released by the security team.

Revision history for this message
Nish Aravamudan (nacc) wrote :

Thanks for confirming, Marc!

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

Setting to incomplete as per comment #3

Changed in php7.2 (Ubuntu):
status: New → Incomplete
Changed in php7.2 (Ubuntu Bionic):
status: New → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for php7.2 (Ubuntu) because there has been no activity for 60 days.]

Changed in php7.2 (Ubuntu):
status: Incomplete → Expired
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for php7.2 (Ubuntu Bionic) because there has been no activity for 60 days.]

Changed in php7.2 (Ubuntu Bionic):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.