CVE-2020-7065: mb_strtolower (UTF-32LE): stack-buffer-overflow at php_unicode_tolower_full

Published Mar 17, 2020
·
Updated

A vulnerability was found in PHP versions 7.3.x below 7.3.16 and 7.4.x below 7.4.34, while using mbstrtolower() function with UTF-32LE encoding, certain invalid strings could cause PHP to overwrite stack-allocated buffer. This could lead to memory corruption, crashes and potentially code execution.

Other sources

A vulnerability was found in PHP while using the mbstrtolower() function with UTF-32LE encoding, where certain invalid strings cause PHP to overwrite the stack-allocated buffer. This flaw leads to memory corruption, crashes, and potential code execution.

Fixed bug (mbstrtolower (UTF-32LE): stack-buffer-overflow at phpunicodetolowerfull). (CVE-2020-7065)

PHP

In PHP versions 7.3.x below 7.3.16 and 7.4.x below 7.4.4, while using mbstrtolower() function with UTF-32LE encoding, certain invalid strings could cause PHP to overwrite stack-allocated buffer. This could lead to memory corruption, crashes and potentially code execution.

Affected Software

15 affected componentsFixes available
redhat/rh-php73-php<0:7.3.20-1.el7
0:7.3.20-1.el7
redhat/php<7.3.16
7.3.16
redhat/php<7.4.4
7.4.4
PHP PHP<7.3.16
7.3.16
PHP PHP>=7.3.0<7.3.16
PHP PHP>=7.4.0<7.4.4
Debian Debian Linux=10.0
Canonical Ubuntu Linux=12.04
Canonical Ubuntu Linux=14.04
Canonical Ubuntu Linux=16.04
Canonical Ubuntu Linux=18.04
Canonical Ubuntu Linux=19.10
Canonical Ubuntu Linux=20.04
Tenable Tenable.Sc<5.19.0
debian/php7.4
7.4.33-1+deb11u57.4.33-1+deb11u11

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade redhat/rh-php73-php to a version that resolves this vulnerability.

    Fixed in 0:7.3.20-1.el7
  2. Upgrade

    Upgrade redhat/php to a version that resolves this vulnerability.

    Fixed in 7.3.16
  3. Upgrade

    Upgrade redhat/php to a version that resolves this vulnerability.

    Fixed in 7.4.4
  4. Upgrade

    Upgrade PHP to a version that resolves this vulnerability.

    Fixed in 7.3.16
  5. Upgrade

    Upgrade debian/php7.4 to a version that resolves this vulnerability.

    Fixed in 7.4.33-1+deb11u5Fixed in 7.4.33-1+deb11u11
  6. Upgrade

    Upgrade PHP to a version that resolves this vulnerability.

    Fixed in 7.4.4

Event History

Mar 19, 2020
CVE Published
via PHP·12:00 AM
Apr 1, 2020
CVE Published
via MITRE·03:35 AM
Data Sourced
via MITRE·03:35 AM
DescriptionSeverityWeakness
Data Sourced
via NVD·04:15 AM
RemedyDescriptionSeverityWeaknessAffected Software
Jan 11, 2024
Data Sourced
via Launchpad·11:52 PM
Description
Feb 24, 2026
Data Sourced
via Ubuntu·12:24 AM
RemedyDescriptionSeverityAffected Software
Jul 7, 2026
Data Sourced
via Debian·03:59 AM
DescriptionAffected Software

Parent advisories

This vulnerability appears in the following advisories.

Frequently Asked Questions

1

What is CVE-2020-7065?

CVE-2020-7065 is a vulnerability in PHP versions 7.3.x below 7.3.16 and 7.4.x below 7.4.4 that could lead to memory corruption, crashes, and potentially code execution.

2

What causes CVE-2020-7065?

CVE-2020-7065 is caused by using the mb_strtolower() function with UTF-32LE encoding and certain invalid strings.

3

How can CVE-2020-7065 be exploited?

CVE-2020-7065 can be exploited by crafting specially crafted strings to trigger the vulnerability in PHP.

4

Which versions of PHP are affected by CVE-2020-7065?

PHP versions 7.3.x below 7.3.16 and 7.4.x below 7.4.4 are affected by CVE-2020-7065.

5

How can CVE-2020-7065 be remediated?

To remediate CVE-2020-7065, update PHP to version 7.3.16 or 7.4.4 or later.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203