CVE-2023-3823 json
Security issue with external entity loading in XML without enabling it
published 2023-08-05 3 y ago modified 2026-09-08 2 mo ago also BIT-libphp-2023-3823 , BIT-php-2023-3823 , BIT-php-min-2023-3823 , EUVD-2023-44451 , GHSA-3qrf-m4j2-pcrr
- cvss
- 8.6
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.6%
- EPSS 1.6% chance of exploitation in 30 days, percentile 76%
- public exploits
- 0
- none known
Summary
In PHP versions 8.0.* before 8.0.30, 8.1.* before 8.1.22, and 8.2.* before 8.2.8 various XML functions rely on libxml global state to track configuration variables, like whether external entities are loaded. This state is assumed to be unchanged unless the user explicitly changes it by calling appropriate function. However, since the state is process-global, other modules - such as ImageMagick - may also use this library within the same process, and change that global state for their internal purposes, and leave it in a state where external entities loading is enabled. This can lead to the situation where external XML is parsed with external entities loaded, which can lead to disclosure of any local files accessible to PHP. This vulnerable state may persist in the same process across many requests, until the process is shut down.
Patch / fix
- bitnami libphp 8.0.30, 8.1.22, 8.2.9
- bitnami php 8.0.30, 8.1.22, 8.2.9
- bitnami php-min 8.0.30, 8.1.22, 8.2.9
- PHP Group PHP 8.0.30, 8.1.22, 8.2.8
- php8.2 Debian 12 8.2.18-1~deb12u1
debian advisories DEBIAN-CVE-2023-3823
- php7.4 Ubuntu 20.04 LTS 7.4.3-4ubuntu2.20
- php8.1 Ubuntu 22.04 LTS 8.1.2-1ubuntu2.14
- php7.0 Ubuntu Pro 16.04 LTS 7.0.33-0ubuntu0.16.04.16+esm10
- php7.2 Ubuntu Pro 18.04 LTS 7.2.24-0ubuntu0.18.04.17+esm4
ubuntu advisories UBUNTU-CVE-2023-3823
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- php RHEL 8 7.4.33-2.module+el8.10.0+22485+a3539972
- libzip RHEL 8 1.6.1-1.module+el8.10.0+22485+a3539972
- php-gd RHEL 8 7.4.33-2.module+el8.10.0+22485+a3539972
- php-cli RHEL 8 7.4.33-2.module+el8.10.0+22485+a3539972
- php-dba RHEL 8 7.4.33-2.module+el8.10.0+22485+a3539972
- php-dbg RHEL 8 7.4.33-2.module+el8.10.0+22485+a3539972
- php-ffi RHEL 8 7.4.33-2.module+el8.10.0+22485+a3539972
- php-fpm RHEL 8 7.4.33-2.module+el8.10.0+22485+a3539972
red hat advisories RHSA-2024:10952RHSA-2024:0387RHSA-2023:5927RHSA-2023:5926
- php7 SLE Module for Legacy 15 SP5, SLE Module for Legacy 15 SP4, openSUSE Leap 15.5 +1 more 7.4.33-150400.4.28.1
- php7-fpm SLE Module for Legacy 15 SP5, SLE Module for Legacy 15 SP4, openSUSE Leap 15.5 +1 more 7.4.33-150400.4.28.1
- php7-test openSUSE Leap 15.5, openSUSE Leap 15.4 7.4.33-150400.4.28.1
- php7-embed SLE Module for Package Hub 15 SP5, SLE Module for Package Hub 15 SP4, openSUSE Leap 15.5 +1 more 7.4.33-150400.4.28.1
- php7-fastcgi SLE Module for Legacy 15 SP5, SLE Module for Legacy 15 SP4, openSUSE Leap 15.5 +1 more 7.4.33-150400.4.28.1
- apache2-mod_php7 SLE Module for Legacy 15 SP5, SLE Module for Legacy 15 SP4, openSUSE Leap 15.5 +1 more 7.4.33-150400.4.28.1
- php8 SLE Module for Web and Scripting 15 SP5, SLE Module for Web and Scripting 15 SP4, openSUSE Leap 15.5 +1 more 8.0.30-150400.4.37.1
- php8-fpm SLE Module for Web and Scripting 15 SP5, SLE Module for Web and Scripting 15 SP4, openSUSE Leap 15.5 +1 more 8.0.30-150400.4.37.1
suse advisories SUSE-SU-2023:3541-1SUSE-SU-2023:3528-1SUSE-SU-2023:3498-1SUSE-SU-2023:3445-1
- php AlmaLinux 8 7.4.33-2.module_el8.10.0+3935+28808425
- libzip AlmaLinux 8 1.6.1-1.module_el8.6.0+3239+bedf0508
- libzip AlmaLinux 8 1.6.1-1.module_el8.6.0+2750+78feabcb
- libzip AlmaLinux 8 1.6.1-1.module_el8.10.0+3935+28808425
- php-gd AlmaLinux 8 7.4.33-2.module_el8.10.0+3935+28808425
- php-cli AlmaLinux 8 7.4.33-2.module_el8.10.0+3935+28808425
- php-dba AlmaLinux 8 7.4.33-2.module_el8.10.0+3935+28808425
- php-dbg AlmaLinux 8 7.4.33-2.module_el8.10.0+3935+28808425
almalinux advisories ALSA-2024:10952ALSA-2024:0387ALSA-2023:5926ALSA-2023:5927
- php Rocky Linux 8 7.4.33-2.module+el8.10.0+1912+72767185
- libzip Rocky Linux 8 1.6.1-1.module+el8.10.0+1604+6558efc7
- php-pear Rocky Linux 8 1:1.10.13-1.module+el8.10.0+1604+6558efc7
- php-pecl-rrd Rocky Linux 8 2.0.1-1.module+el8.10.0+1604+6558efc7
- php-pecl-zip Rocky Linux 8 1.18.2-1.module+el8.10.0+1604+6558efc7
- php-pecl-apcu Rocky Linux 8 5.1.18-1.module+el8.10.0+1604+6558efc7
- php-pecl-xdebug Rocky Linux 8 2.9.5-1.module+el8.10.0+1604+6558efc7
- php-pecl-rrd Rocky Linux 9 2.0.3-4.module+el9.6.0+32040+1f1dedb8
rocky linux advisories RLSA-2024:10952RLSA-2024:0387RLSA-2023:5926RLSA-2023:5927
- php8 Alpine 3.16 8.0.30-r0
- php81 Alpine 3.17, Alpine 3.16 8.1.22-r0
alpine advisories ALPINE-CVE-2023-3823
Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- php CBL-Mariner 2.0 8.1.22-1
- php Azure Linux 3.0 8.2.8-1
azure linux advisories AZL-27962AZL-63085
Azure Linux vulnerability data, Copyright (c) Microsoft Corporation, from https://github.com/microsoft/AzureLinuxVulnerabilityData via OSV, under the MIT licence; changed: normalised to fixed package versions per release. MIT
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2023-3823 updated cvss 7.5
php: XML loading external entity without being enabled
-
Red Hat Software Collections rh-php73-php, rh-php73-php-gd, rh-php73-php-cli, rh-php73-php-dba, rh-php73-php-dbg, rh-php73-php-fpm, +22 moreaffected: workaround, no fix planned “Will not fix”
-
Red Hat Enterprise Linux AppStream (v. 8) php 8.0.30-1.module+el8.8.0+20302+42d2b711, php 7.4.33-2.module+el8.10.0+22485+a3539972, libzip 1.7.3-1.module+el8.6.0+13671+84712317, libzip 1.6.1-1.module+el8.10.0+22485+a3539972, php-gd 8.0.30-1.module+el8.8.0+20302+42d2b711, php-cli 8.0.30-1.module+el8.8.0+20302+42d2b711, +60 morefixed: vendor fix RHSA-2024:10952
-
Red Hat Enterprise Linux AppStream (v. 9) php 8.0.30-1.el9_2, php-gd 8.0.30-1.el9_2, php-cli 8.0.30-1.el9_2, php-dba 8.0.30-1.el9_2, php-dbg 8.0.30-1.el9_2, php-ffi 8.0.30-1.el9_2, +47 morefixed: vendor fix RHSA-2023:5926
-
Red Hat Enterprise Linux 6 php, php-gd, php-cli, php-dba, php-fpm, php-pdo, +20 more Red Hat Enterprise Linux 7 php, php-gd, php-cli, php-dba, php-fpm, php-pdo, +18 more Red Hat OpenShift Dev Spaces phpnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Exploit prediction
1.64% chance of exploitation in the next 30 days, higher than 76% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/php/php-src/security/advisories/GHSA-3qrf-m4j2-pcrr referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 8.6 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L |
| NVD | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| OSV | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| bitnami | libphp | >=8.0.0, <8.0.30 >=8.1.0, <8.1.22 >=8.2.0, <8.2.9 |
8.0.30 8.1.22 8.2.9 |
| bitnami | php | >=8.0.0, <8.0.30 >=8.1.0, <8.1.22 >=8.2.0, <8.2.9 |
8.0.30 8.1.22 8.2.9 |
| bitnami | php-min | >=8.0.0, <8.0.30 >=8.1.0, <8.1.22 >=8.2.0, <8.2.9 |
8.0.30 8.1.22 8.2.9 |
Affected products
- PHP Group PHP
Classification
- Weakness
-
- CWE-611 Improper Restriction of XML External Entity Reference
- Technology feeds
References
-
github.com
/php/php-src/security/advisories/GHSA-3qrf-m4j2-pcrr
exploit, third-party-advisory, advisory
-
lists.fedoraproject.org
/archives/list/package-announce@lists.fedoraproject.org/message/7NBF77WN6DTVTY2RE73IGPYD6M4PIAWA/
mailing-list, discussion
-
security.netapp.com
/advisory/ntap-20230825-0001/
third-party-advisory, advisory
-
lists.debian.org
/debian-lts-announce/2023/09/msg00002.html
mailing-list, discussion
-
nvd.nist.gov
/vuln/detail/CVE-2023-3823
web
Sources
- CVE List CVE-2023-3823
- NVD CVE-2023-3823
- OSV BIT-libphp-2023-3823
- OSV BIT-php-2023-3823
- OSV BIT-php-min-2023-3823
- Maintainer advisory GHSA-3qrf-m4j2-pcrr
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
The maintainers of php/php-src published their own advisory on GitHub. Reviewed sources take precedence over it.