Description
In PHP versions 8.2.* before 8.2.31, 8.3.* before 8.3.31, 8.4.* before 8.4.21, and 8.5.* before 8.5.6, the metaphone() function in ext/standard/metaphone.c uses a signed int variable to track the current position within the input string. If a string longer than 2,147,483,647 bytes is passed, a signed integer overflow occurs, resulting in undefined behavior. This can lead to an out-of-bounds read, causing a segmentation fault or access to unrelated memory, and may affect the availability of the PHP process.
References (1)
Core 1
Scores
CVSS v3
7.5
EPSS
0.0006
EPSS Percentile
17.3%
Attack Vector
NETWORK
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CISA SSVC
Vulnrichment
Exploitation
none
Automatable
no
Technical Impact
partial
Details
CWE
CWE-125
CWE-190
Status
published
Products (5)
php/php
8.2.0 - 8.2.31
PHP Group/PHP
8.2.* - 8.2.31
PHP Group/PHP
8.3.* - 8.3.31
PHP Group/PHP
8.4.* - 8.4.21
PHP Group/PHP
8.5.* - 8.5.6
Published
May 10, 2026
Tracked Since
May 10, 2026