This Release is Outdated
The latest release of PHP 8.2 is PHP
8.2.31
.
It is recommended to upgrade to the latest release.
PHP 8.2.20 Release Announcement
The PHP development team announces the immediate availability of PHP 8.2.20. This is a security release.
All PHP 8.2 users are encouraged to upgrade to this version.
For source downloads of PHP 8.2.20 please visit our downloads page,
Windows source and binaries can be found on windows.php.net/download/.
The list of changes is recorded in the ChangeLog.
Source Code
Change Log
-
cgi
- Fixed buffer limit on Windows, replacing read call usage by _read.
- Fixed bug GHSA-3qgc-jrrr-25jv (Bypass of CVE-2012-1823, Argument Injection in PHP-CGI). (CVE-2024-4577)
-
cli
- Fixed bug GH-14189 (PHP Interactive shell input state incorrectly handles quoted heredoc literals.).
-
core
- Fixed bug GH-13970 (Incorrect validation of #[Attribute] flags type for non-compile-time expressions).
- Fixed bug GH-14140 (Floating point bug in range operation on Apple Silicon hardware).
-
dom
- Fix crashes when entity declaration is removed while still having entity references.
- Fix references not handled correctly in C14N.
- Fix crash when calling childNodes next() when iterator is exhausted.
- Fix crash in ParentNode::append() when dealing with a fragment containing text nodes.
-
ffi
- Fixed bug GH-14215 (Cannot use FFI::load on CRLF header file with apache2handler).
-
filter
- Fixed bug GHSA-w8qr-v226-r27w (Filter bypass in filter_var FILTER_VALIDATE_URL). (CVE-2024-5458)
-
fpm
- Fix bug GH-14175 (Show decimal number instead of scientific notation in systemd status).
-
hash
- ext/hash: Swap the checking order of `__has_builtin` and `__GNUC__`
-
intl
- Fixed build regression on systems without C++17 compilers.
-
ini
- Fixed bug GH-14100 (Corrected spelling mistake in php.ini files).
-
mysqlnd
- Fix bug GH-14255 (mysqli_fetch_assoc reports error from nested query).
-
opcache
- Fixed bug GH-14109 (Fix accidental persisting of internal class constant in shm).
-
openssl
- The openssl_private_decrypt function in PHP, when using PKCS1 padding (OPENSSL_PKCS1_PADDING, which is the default), is vulnerable to the Marvin Attack unless it is used with an OpenSSL version that includes the changes from this pull request: https://github.com/openssl/openssl/pull/13817 (rsa_pkcs1_implicit_rejection). These changes are part of OpenSSL 3.2 and have also been backported to stable versions of various Linux distributions, as well as to the PHP builds provided for Windows since the previous release. All distributors and builders should ensure that this version is used to prevent PHP from being vulnerable.
-
standard
- Fixed bug GHSA-9fcc-425m-g385 (Bypass of CVE-2024-1874). (CVE-2024-5585)
-
xml
- Fixed bug GH-14124 (Segmentation fault with XML extension under certain memory limit).
-
xmlreader
- Fixed bug GH-14183 (XMLReader::open() can't be overridden).