CVE-2026-104853
MediumCVSS 5.8Summary
Nx is a monorepo solution for TypeScript and polyglot codebases. From 13.10.0 until 22.7.10 and 23.2.1, Nx migration planning reads the nx-migrations.migrations value from a target package manifest without validating that it is a contained relative path. A hostile dependency can supply .. segments or an absolute path, causing the migration archive to write attacker-controlled bytes outside the temporary directory or truncate an existing writable file.
Risk Assessment
An attacker may write data outside the temporary directory or damage existing files, potentially leading to system integrity compromise or arbitrary code execution.
Recommendation
Update Nx to version 22.7.10 or 23.2.1, which contain the fix, and avoid using malicious dependencies.
Other vulnerabilities in Nx
See all- CVE-2026-104854High
Nx from 14.6.0 until 22.7.9 and 23.1.2 creates Unix domain sockets for its daemon and isolated plugin workers in shared temporary locations without owner-only permissions. Another unprivileged local account can connect to a running socket because the transport performs no authentication. The daemon's PROCESS_IN_BACKGROUND request can execute code as the account running Nx. Fixed in versions 22.7.9 and 23.1.2.
- CVE-2026-71476High
Vulnerability in Nx (versions 20.8.0 to 22.7.7 and 23.0.2) in the self-hosted HTTP remote cache. A malicious cache server can return a crafted tar archive that writes files outside the cache directory, potentially leading to remote code execution.
Original NVD description (English source)
Nx is a monorepo solution for TypeScript and polyglot codebases. From 13.10.0 until 22.7.10 and 23.2.1, Nx migration planning reads the nx-migrations.migrations value from a target package manifest without validating that it is a contained relative path. A hostile direct dependency or a package introduced through a trusted package's packageGroup can supply .. segments or an absolute path, causing nx migrate to join an escaping destination onto its temporary directory. The migration archive can then write attacker-controlled bytes outside the temporary directory, while opening the destination stream can truncate an existing writable file even when no archive entry matches. This occurs during migration planning before review of the migration list or use of --run-migrations; the vulnerable installed Nx copy is reached when the normal nx@latest handoff is bypassed with NX_USE_LOCAL, NX_MIGRATE_USE_LOCAL, NX_MIGRATE_CLI_VERSION, --run-id, or fallback after a temporary-install failure. This issue is fixed in versions 22.7.10 and 23.2.1.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

