Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Attack is local via a malicious repo (AV:L) and needs the victim to run codex in it (UI:R); no attacker auth (PR:N); full host code execution yields C/I/A:H.
Primary rating from Vendor (mitre).
CVSS VectorVendor: mitre
Lifecycle Timeline
4Blast Radius
ecosystem impact- 1 npm packages depend on @openai/codex (1 direct, 0 indirect)
Ecosystem-wide dependent count for version 0.23.0.
DescriptionCVE.org
A vulnerability was identified in OpenAI Codex CLI v0.23.0 and before that enables code execution through malicious MCP (Model Context Protocol) configuration files. The attack is triggered when a user runs the codex command inside a malicious or compromised repository. Codex automatically loads project-local .env and .codex/config.toml files without requiring user confirmation, allowing attackers to embed arbitrary commands that execute immediately.
AnalysisAI
Arbitrary code execution in OpenAI Codex CLI v0.23.0 and earlier occurs because the tool automatically loads project-local .env and .codex/config.toml (MCP configuration) files without any user confirmation when a developer runs the codex command inside a repository. An attacker who controls or poisons a repository can embed commands that execute immediately on the victim's machine when Codex is invoked there. Publicly available exploit code exists (SSVC 'poc') and Check Point Research published a technical write-up, but the flaw is not on CISA KEV and EPSS is very low (0.02%), indicating no evidence of widespread active exploitation.
Technical ContextAI
The affected component is OpenAI's Codex CLI, an AI coding agent that integrates with the Model Context Protocol (MCP) to configure external tools and servers. Codex reads project-scoped configuration - a .env file and .codex/config.toml - from the current working directory at startup. The root cause is CWE-94 (Improper Control of Generation of Code / code injection): trusted-by-default parsing of attacker-influenceable configuration allows commands specified in those files (e.g., MCP server launch directives) to be executed without validation or an explicit user trust prompt. CPE data is not meaningfully populated (cpe:2.3:a:n/a:n/a), so the exact product identity relies on the CVE description rather than NVD CPE.
RemediationAI
Upgrade OpenAI Codex CLI to a release later than v0.23.0 that no longer auto-loads project-local .env and .codex/config.toml files without confirmation; an exact fixed version is not stated in the provided data, so released patched version is not independently confirmed - verify the current version against openai.com and the Check Point advisory before deploying. Until upgraded, do not run codex inside untrusted, cloned, or third-party repositories; treat repositories the same as untrusted code before execution. As specific compensating controls: inspect any .codex/config.toml and .env files for command/MCP-server directives before invoking Codex in an unfamiliar repo (trade-off: manual and easy to forget); run Codex only inside a sandboxed container or disposable VM with no host credentials mounted (trade-off: added workflow friction); and remove or relocate project-local Codex config so only a vetted user-level config is used (trade-off: loses legitimate per-project MCP configuration). Consult https://research.checkpoint.com/2025/openai-codex-cli-command-injection-vulnerability/ for technical detail.
LibreNMS before 24.10.0 allows a remote attacker to execute arbitrary code via OS command injection involving AboutContr
Reachable assertion in Open5GS up to version 2.7.6 allows remote unauthenticated attackers to crash the Diameter CER han
A Command Injection issue in the payload build page in BYOB (Build Your Own Botnet) 2.0 allows attackers to execute arbi
Denial of service in Open5GS 2.7.6 and earlier allows network-adjacent attackers with low-privilege Diameter Gx peer acc
Denial of service in Open5GS HSS (Home Subscriber Server) versions 2.7.0 through 2.7.6 is triggered remotely by manipula
Remote command injection in Control Web Panel allows unauthenticated attackers to execute arbitrary OS commands as root
LINQPad before 5.52.01 Pro edition is vulnerable to Unsafe Deserialization in LINQPad.AutoRefManager::PopulateFromCache(
Remote code execution in dash-uploader (Python package for Plotly Dash) versions 0.1.0 through 0.7.0a2 allows unauthenti
Command injection in LiteLLM 1.18.10 lets attackers who can configure MCP (Model Context Protocol) servers supply arbitr
SQL injection in AzuraCast's backup restore flow (versions up to and including 0.23.7) lets an attacker achieve privileg
Arbitrary file read in Yu AI Code Mother v4.3 lets anonymous, remote attackers retrieve files outside the intended previ
Remote code execution in APScheduler (all versions through 3.10.x and 4.0.0a5) is achievable when applications deseriali
Same weakness CWE-94 – Code Injection
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2025-209435
GHSA-xrxf-jgv3-qmrm