CVE-2023-3823

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.
Configurations

Configuration 1 (hide)

OR cpe:2.3:a:php:php:*:*:*:*:*:*:*:*
cpe:2.3:a:php:php:*:*:*:*:*:*:*:*
cpe:2.3:a:php:php:*:*:*:*:*:*:*:*

Configuration 2 (hide)

cpe:2.3:o:fedoraproject:fedora:38:*:*:*:*:*:*:*

Configuration 3 (hide)

cpe:2.3:o:debian:debian_linux:10.0:*:*:*:*:*:*:*

History

13 Feb 2025, 17:16

Type Values Removed Values Added
Summary (en) 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.  (en) 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.

21 Nov 2024, 08:18

Type Values Removed Values Added
References () https://github.com/php/php-src/security/advisories/GHSA-3qrf-m4j2-pcrr - Exploit, Third Party Advisory () https://github.com/php/php-src/security/advisories/GHSA-3qrf-m4j2-pcrr - Exploit, Third Party Advisory
References () https://lists.debian.org/debian-lts-announce/2023/09/msg00002.html - Mailing List () https://lists.debian.org/debian-lts-announce/2023/09/msg00002.html - Mailing List
References () https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/7NBF77WN6DTVTY2RE73IGPYD6M4PIAWA/ - Mailing List () https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/7NBF77WN6DTVTY2RE73IGPYD6M4PIAWA/ - Mailing List
References () https://security.netapp.com/advisory/ntap-20230825-0001/ - Third Party Advisory () https://security.netapp.com/advisory/ntap-20230825-0001/ - Third Party Advisory
Summary
  • (es) En las versiones de PHP 8.0.* antes de la 8.0.30, 8.1.* antes de la 8.1.22, y 8.2.* antes de la 8.2.8 varias funciones XML se basan en el estado global de libxml para rastrear variables de configuración, como si las entidades externas están cargadas. Se asume que este estado no cambia a menos que el usuario lo cambie explícitamente llamando a la función apropiada. Sin embargo, dado que el estado es global del proceso, otros módulos - como ImageMagick - pueden también usar esta librería dentro del mismo proceso, y cambiar ese estado global para sus propósitos internos, y dejarlo en un estado en el que la carga de entidades externas esté habilitada. Esto puede llevar a la situación donde XML externo es analizado con entidades externas cargadas, lo que puede llevar a la divulgación de cualquier archivo local accesible a PHP. Este estado vulnerable puede persistir en el mismo proceso a través de muchas peticiones, hasta que el proceso sea cerrado.
CVSS v2 : unknown
v3 : 7.5
v2 : unknown
v3 : 8.6

22 Aug 2023, 20:07

Type Values Removed Values Added
CPE cpe:2.3:a:php:php:*:*:*:*:*:*:*:*
CWE CWE-611
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 7.5
References (MISC) https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/7NBF77WN6DTVTY2RE73IGPYD6M4PIAWA/ - (MISC) https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/7NBF77WN6DTVTY2RE73IGPYD6M4PIAWA/ - Third Party Advisory
References (MISC) https://github.com/php/php-src/security/advisories/GHSA-3qrf-m4j2-pcrr - (MISC) https://github.com/php/php-src/security/advisories/GHSA-3qrf-m4j2-pcrr - Exploit, Third Party Advisory

12 Aug 2023, 06:19

Type Values Removed Values Added
References
  • (MISC) https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/7NBF77WN6DTVTY2RE73IGPYD6M4PIAWA/ -

11 Aug 2023, 06:15

Type Values Removed Values Added
New CVE

Information

Published : 2023-08-11 06:15

Updated : 2025-02-13 17:16


NVD link : CVE-2023-3823

Mitre link : CVE-2023-3823

CVE.ORG link : CVE-2023-3823


JSON object : View

Products Affected

php

  • php

fedoraproject

  • fedora

debian

  • debian_linux
CWE
CWE-611

Improper Restriction of XML External Entity Reference