Skip to content
TrackCVE
  • Newest CVEsPage
  • Recently added to KEVPage
  • Rising exploitation (EPSS)Page
  • Weekly digestPage
  • StatisticsPage
  • WatchlistPage
  • API documentationPage
  • MCP serverPage
  • Data sourcesPage
  • ChangelogPage
  • AboutPage
  • How it's builtPage
Back

CVE-2024-3096

PHP function password_verify can erroneously return true when argument contains NUL

Medium6.5EPSS 1.5%
Published
Updated
Reserved
Assigned by
php

Description

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

Timeline

  1. ID reserved

    By php

  2. · 31 days later

    Published

  3. · 18 months later

    Record updated

Changes after publication (a new score, a public exploit, EPSS crossing 1, 10 or 50 %, leaving KEV) are kept since November 2026; earlier ones are not known.

Scores

CVSS scores of CVE-2024-3096, by who scored it
Scored byCVSSScoreVector
phpCNA (assigner)3.1Medium6.5CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
NVDNVD · Modified3.1Medium6.5CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
EPSS (exploitation in 30 days)
1.5% · top 26% of all CVEs (7 Nov 2026)
CISA SSVC
Exploitation: none · Automatable: no · Technical impact: total
Loading the EPSS history…

The list uses the assigner's score when there is one, then CISA's, then NVD's: Medium 6.5.

Weakness

Affected products

  • PHP Group · PHP

    • affected 8.1.* – < 8.1.28
    • affected 8.2.* – < 8.2.18
    • affected 8.3.* – < 8.3.5

What to do

Workaround: Pre-filter potential password strings to ensure they do not contain NUL bytes.

References (6)

Sources

The same CVE in the primary databases and aggregators, to check against.

Badge for a README or a ticket

CVE-2024-3096 badge
[![CVE-2024-3096](https://trackcve.app/badge/CVE-2024-3096.svg)](https://trackcve.app/cve/CVE-2024-3096)

Record last updated .