CVE-2026-92842GHSA-88hq-2827-7pg6
PHP: OOB read / info leak in convert.* stream filters when line-break-chars contains NUL
CVSS
5.9MediumExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)0.36%Chance of exploitation activity in the next 30 days, higher than 28% of CVEs. Scored 23 Oct 2026FIRST EPSS
What fixes it
- 8.2.34PHPCVE List
- 8.3.35PHPCVE List
- 8.4.26PHPCVE List
- 8.5.11PHPCVE List
- 8.2.34ext-standard, phpGitHub
- 8.3.35ext-standard, phpGitHub
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
The convert.base64-encode, convert.quoted-printable-encode and convert.quoted-printable-decode stream filters accept a line-break-chars option whose length is tracked separately from the string itself. The filter constructors duplicate the value with pestrdup(), which stops at the first NUL byte, while keeping the original length. When the filter later emits a line break it copies the recorded length out of the truncated allocation, reading past its end and placing adjacent heap bytes into the filter output.
Text from CVE List
Affected versions 8
- PHPaffected: 8.2.* before 8.2.34CVE List
- PHPaffected: 8.3.* before 8.3.35CVE List
- PHPaffected: 8.4.* before 8.4.26CVE List
- PHPaffected: 8.5.* before 8.5.11CVE List
- ext-standard, php<8.2.34GitHub
- ext-standard, php<8.3.35GitHub
- ext-standard, php<8.4.26GitHub
- ext-standard, php<8.5.11GitHub