---
id: CVE-2026-104859
title: Nx is a monorepo solution for TypeScript and polyglot codebases
summary: >-
  Nx is a monorepo solution for TypeScript and polyglot codebases. From 21.4.0
  until 22.7.8 and from 23.0.0 until 23.1.1, the @nx/docker release pipeline
  builds docker tag, image lookup, and docker push invocations as shell command
  strings…
severity: high
cvss: 7.3
cvssVector: 'CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'
cwe:
  - CWE-78
vendor: nrwl
product: nx
affected:
  - 'nx >= 21.4.0, < 22.7.8'
  - 'nx >= 23.0.0, < 23.1.1'
published: '2026-10-02'
updated: '2026-10-05'
sourceUpdated: '2026-10-05T21:16:32.897'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-104859'
references:
  - url: 'https://github.com/nrwl/nx/commit/6d60eed061f050e0d5af509a1f5a07c707f09865'
    label: security-advisories@github.com
  - url: 'https://github.com/nrwl/nx/commit/b587441fd8da28c5db37edb0826554e0060dc81b'
    label: security-advisories@github.com
  - url: 'https://github.com/nrwl/nx/pull/36505'
    label: security-advisories@github.com
  - url: 'https://github.com/nrwl/nx/security/advisories/GHSA-6vc5-vf29-ffr2'
    label: security-advisories@github.com
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-104859'
  - url: 'https://github.com/advisories/GHSA-6vc5-vf29-ffr2'
tags:
  - nvd
  - cve.org
  - ghsa
  - npm
epss: 0.00148
epssPercentile: 0.04002
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: total
  timestamp: '2026-10-05T20:08:54.062605Z'
cvssSource: cna
ingestedAt: '2026-10-02T18:25:05.831Z'
aliases:
  - GHSA-6vc5-vf29-ffr2
ecosystem: npm
patched:
  - '@nx/docker 22.7.8'
  - '@nx/docker 23.1.1'
---

## Overview

Nx is a monorepo solution for TypeScript and polyglot codebases. From 21.4.0 until 22.7.8 and from 23.0.0 until 23.1.1, the @nx/docker release pipeline builds docker tag, image lookup, and docker push invocations as shell command strings. The release.docker.repositoryName and registryUrl configuration values are interpolated into those strings and passed to /bin/sh -c, allowing shell syntax in untrusted Nx configuration to execute during nx release version or nx release publish. A pull request or repository configuration change can therefore execute commands with the release job's privileges and expose registry credentials or cloud tokens, and dry-run publishing does not prevent the vulnerable pre-check command from executing. This issue is fixed in versions 22.7.8 and 23.1.1.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Package advisory (CVE-2026-104859)

Affected packages:

- `@nx/docker >= 21.4.0, < 22.7.8`
- `@nx/docker >= 23.0.0, < 23.1.1`

Patched in:

- `@nx/docker 22.7.8`
- `@nx/docker 23.1.1`

Source: https://github.com/advisories/GHSA-6vc5-vf29-ffr2
