Skip to content
CVE Tracker
  • 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-1874

Command injection via array-ish $command parameter of proc_open()

Critical9.4EPSS 32.8%
Published
Updated
Reserved
Assigned by
php

Description

In PHP versions 8.1.* before 8.1.28, 8.2.* before 8.2.18, 8.3.* before 8.3.5, when using proc_open() command with array syntax, due to insufficient escaping, if the arguments of the executed command are controlled by a malicious user, the user can supply arguments that would execute arbitrary commands in Windows shell.

Scores

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

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

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: Using proc_open() string syntax avoids the problem.

References (10)

Sources

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

Badge for a README or a ticket

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

Record last updated .