PHP 5.6.x < 5.6.11 Multiple Vulnerabilities (BACKRONYM)

critical Web App Scanning Plugin ID 98803

Synopsis

PHP 5.6.x < 5.6.11 Multiple Vulnerabilities (BACKRONYM)

Description

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

- A security feature bypass vulnerability, known as 'BACKRONYM', exists due to a failure to properly enforce the requirement of an SSL/TLS connection when the --ssl client option is used. A man-in-the-middle attacker can exploit this flaw to coerce the client to downgrade to an unencrypted connection, allowing the attacker to disclose data from the database or manipulate database queries. (CVE-2015-3152)

- A flaw exists in the PHP Connector/C component due to a failure to properly enforce the requirement of an SSL/TLS connection when the --ssl client option is used. A man-in-the-middle attacker can exploit this to downgrade the connection to plain HTTP when HTTPS is expected. (CVE-2015-8838) - A use-after-free error exists in the spl_recursive_it_move_forward_ex() function. An attacker can exploit this to dereference already freed memory, potentially allowing the execution of arbitrary code.

- A use-after-free error exists in the sqlite3SafetyCheckSickOrOk() function. An attacker can exploit this to dereference already freed memory, potentially allowing the execution of arbitrary code.

- The '!' character is not treated as a special character when delayed variable substitution is enabled. The functions escapeshellcmd() and escapeshellarg() are unable to properly sanitize arguments containing '!'. An attacker can exploit this to execute arbitrary commands.

- A double-free flaw exists in zend_vm_execute.h due to improper handling of certain code. An attacker can exploit this flaw to crash a PHP application, resulting in a denial of service condition.

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 5.6.11 or later.

See Also

http://backronym.fail/

http://php.net/ChangeLog-5.php#5.6.11

Plugin Details

Severity: Critical

ID: 98803

Type: remote

Published: 1/9/2019

Updated: 3/14/2023

Scan Template: api, basic, full, pci, scan

Risk Information

VPR

Risk Factor: Medium

Score: 5.9

CVSS v2

Risk Factor: Critical

Base Score: 10

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

CVSS Score Source: CVE-2015-5589

CVSS v3

Risk Factor: Critical

Base Score: 9.8

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

CVSS Score Source: CVE-2015-5589

Vulnerability Information

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

Exploit Available: true

Exploit Ease: Exploits are available

Patch Publication Date: 5/16/2016

Vulnerability Publication Date: 5/16/2016

Reference Information

CVE: CVE-2015-3152, CVE-2015-5589, CVE-2015-5590, CVE-2015-8838

BID: 75974, 75970, 74398, 88763

CWE: 119, 20, 284, 295

OWASP: 2010-A4, 2010-A7, 2010-A8, 2013-A4, 2013-A6, 2013-A7, 2013-A9, 2017-A3, 2017-A5, 2017-A9, 2021-A1, 2021-A3, 2021-A6, 2021-A7

WASC: Buffer Overflow, Improper Input Handling, Insufficient Authorization

CAPEC: 10, 100, 101, 104, 108, 109, 110, 120, 123, 13, 135, 136, 14, 153, 182, 19, 209, 22, 23, 230, 231, 24, 250, 261, 267, 28, 3, 31, 42, 43, 44, 441, 45, 459, 46, 47, 473, 475, 478, 479, 502, 503, 52, 53, 536, 546, 550, 551, 552, 556, 558, 562, 563, 564, 578, 588, 63, 64, 67, 7, 71, 72, 73, 78, 79, 8, 80, 81, 83, 85, 88, 9

DISA STIG: APSC-DV-000460, APSC-DV-001810, APSC-DV-002560, APSC-DV-002590, APSC-DV-002630

HIPAA: 164.306(a)(1), 164.306(a)(2), 164.312(a)(1), 164.312(a)(2)(i)

ISO: 27001-A.10.1.2, 27001-A.12.6.1, 27001-A.13.1.1, 27001-A.14.1.2, 27001-A.14.1.3, 27001-A.14.2.5, 27001-A.18.1.3, 27001-A.6.2.2, 27001-A.9.1.2, 27001-A.9.4.1, 27001-A.9.4.4, 27001-A.9.4.5

NIST: sp800_53-AC-3, sp800_53-CM-6b, sp800_53-SC-12, sp800_53-SI-10, sp800_53-SI-16

OWASP API: 2019-API7, 2023-API8

OWASP ASVS: 4.0.2-1.4.2, 4.0.2-14.2.1, 4.0.2-5.1.3, 4.0.2-9.2.1

PCI-DSS: 3.2-6.2, 3.2-6.5, 3.2-6.5.10, 3.2-6.5.2, 3.2-6.5.8