PHP 7.0.x < 7.0.4 Multiple Vulnerabilities

High Web Application Scanning Plugin ID 98850

Synopsis

PHP 7.0.x < 7.0.4 Multiple Vulnerabilities

Description

According to its banner, the version of PHP running on the remote web server is 7.0.x prior to 7.0.4. It is, therefore, affected by multiple vulnerabilities :

- A type confusion error exists in file ext/soap/php_http.c in the make_http_soap_request() function when handling cookie data. An unauthenticated, remote attacker can exploit this to execute arbitrary code. (CVE-2016-3185)

- Multiple integer overflow conditions exist in file ext/xml/xml.c in the xml_utf8_encode functions due to improper validation of user-supplied input. An unauthenticated, remote attacker can exploit these to cause a heap-based buffer overflow, resulting in a denial of service or the execution of
arbitrary code. (CVE-2016-4344)

- An integer overflow condition exists in the php_filter_encode_url() function due to improper validation of user-supplied input. A remote attacker can exploit this to cause a heap-based buffer overflow, resulting in a denial of service or th execution of arbitrary code. (CVE-2016-4345)

- An overflow condition exists in the xml_utf8_encode functions due to improper validation of user-supplied input. A remote attacker can exploit this to cause a heap-based buffer overflow, resulting in a denial of service condition or the execution of arbitrary code. (CVE-2016-4346)

- A flaw exists when handling the third call while running function.forward-static-call.php. An unauthenticated, remote attacker can exploit this to cause a denial of service by crashing the interpreter.

- An integer overflow condition exists in file ext/standard/string.c in the php_implode() function due to improper validation of user-supplied input. An unauthenticated, remote attacker can exploit this to cause a heap-based buffer overflow, resulting in a denial of service or the execution of
arbitrary code.

- An integer overflow condition exists in file ext/standard/string.c in the zend_string_alloc() function due to improper validation of user-supplied input. An unauthenticated, remote attacker can exploit this to execute arbitrary code.

- A stack corruption issue exists when handling certain Magento2 commands that allows an unauthenticated, remote attacker to cause a denial of service.

- A flaw exists in file sapi/cli/php_cli_server.c due to the built-in HTTP server not properly restricting file requests. An unauthenticated, remote attacker can exploit this to access arbitrary files.

- A use-after-free error exists in Zend Opcache when updating cached directory names that have been cached in the current working directory. An unauthenticated, remote attacker can exploit this to deference already freed memory, resulting in the execution of arbitrary code.

- A NULL pointer dereference flaw exists in file ext/zip/php_zip.c in the Zip::ExtractTo() method that allows an unauthenticated, remote attacker to cause a denial of service.

Note that the scanner has not tested for these issues but has instead relied only on the application's self-reported version number.

Solution

Upgrade to PHP version 7.0.4 or later.

See Also

http://php.net/ChangeLog-7.php#7.0.4

Plugin Details

Severity: High

ID: 98850

Type: remote

Published: 2019/01/09

Updated: 2019/04/10

Risk Information

Risk Factor: High

CVSS v2.0

Base Score: 7.5

Vector: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P

CVSS v3.0

Base Score: 9.8

Vector: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Vulnerability Information

CPE: cpe:2.3:a:php:php:*:*:*:*:*:*:*:*

Exploit Available: false

Patch Publication Date: 2016/03/03

Vulnerability Publication Date: 2016/01/24

Reference Information

CVE: CVE-2016-3185, CVE-2016-4344, CVE-2016-4345, CVE-2016-4346

BID: 84307, 84351

CWE: 20, 189

WASC: Improper Input Handling

OWASP: 2010-A4, 2013-A4, 2013-A9, 2017-A5, 2017-A9