---
id: CVE-2026-111451
title: >-
  Wheels CLI 4.0.0 through 4.1.1 insufficiently validates or escapes
  caller-supplied values and package contents
summary: >-
  Wheels CLI 4.0.0 through 4.1.1 insufficiently validates or escapes
  caller-supplied values and package contents. Deploy release/version/rollback
  values can execute shell commands on deploy hosts as the SSH user and on the
  CI runner during…
severity: high
cvss: 7.8
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H'
cvssSource: cna
cwe:
  - CWE-78
vendor: Wheels
product: Wheels CLI
affected:
  - cli >= 4.0.0 < 4.1.2
published: '2026-10-16'
updated: '2026-10-16'
sourceUpdated: '2026-10-16T03:52:27.436Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-111451'
references:
  - url: >-
      https://github.com/wheels-dev/wheels/security/advisories/GHSA-cghp-86c6-6fjc
tags:
  - cve.org
ingestedAt: '2026-10-16T04:58:47.505Z'
---

## Overview

Wheels CLI 4.0.0 through 4.1.1 insufficiently validates or escapes caller-supplied values and package contents. Deploy release/version/rollback values can execute shell commands on deploy hosts as the SSH user and on the CI runner during builds. Package removal and destroy paths can delete unintended files; package extraction can overwrite other vendor files; generator names can write outside the project or inject executable CFML into generated code. Inputs may originate from CI variables, branch names, packages or an AI agent using the CLI's MCP tools. Also relevant are unencoded display properties in generated scaffold show views since 4.1.0 and in generated admin views, permitting stored XSS, and stale process-ID handling in RustCFML server commands that can terminate an unrelated process. This is fixed in 4.1.2; existing affected generated views also require the documented edit.

## Affected

- `cli >= 4.0.0 < 4.1.2`

## Remediation

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