CVE-2024-3096

NameCVE-2024-3096
DescriptionIn PHP  version 8.1.* before 8.1.28, 8.2.* before 8.2.18, 8.3.* before 8.3.5, if a password stored with password_hash() starts with a null byte (\x00), testing a blank string as the password via password_verify() will incorrectly return true.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
ReferencesDSA-5660-1, DSA-5661-1

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
php5 (PTS)jessie, jessie (lts)5.6.40+dfsg-0+deb8u18vulnerable
php7.0 (PTS)stretch (security)7.0.33-0+deb9u12vulnerable
stretch (lts), stretch7.0.33-0+deb9u16vulnerable
php7.3 (PTS)buster7.3.31-1~deb10u1vulnerable
buster (security)7.3.31-1~deb10u5vulnerable
php7.4 (PTS)bullseye7.4.33-1+deb11u4vulnerable
bullseye (security)7.4.33-1+deb11u5fixed
php8.2 (PTS)bookworm8.2.7-1~deb12u1vulnerable
bookworm (security)8.2.18-1~deb12u1fixed
trixie8.2.12-1vulnerable
sid8.2.18-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
php5source(unstable)(unfixed)
php7.0source(unstable)(unfixed)
php7.3source(unstable)(unfixed)
php7.4sourcebullseye7.4.33-1+deb11u5DSA-5660-1
php7.4source(unstable)(unfixed)
php8.2sourcebookworm8.2.18-1~deb12u1DSA-5661-1
php8.2source(unstable)8.2.18-1

Notes

Fixed in: 8.2.18, 8.1.28
https://github.com/php/php-src/security/advisories/GHSA-h746-cjrr-wfmr
https://github.com/php/php-src/commit/0ba5229a3f7572846e91c8f5382e87785f543826

Search for package or bug name: Reporting problems