Description
Orval generates type-safe JavaScript clients in TypeScript from OpenAPI v3 and Swagger v2 specifications. Prior to 8.21.0, a double quote in a query parameter name is emitted into the generated request-validation zod.object({...}) schema without safe encoding. This permits attacker-controlled JavaScript to be evaluated when the generated zod schema module is imported, resulting in code execution in the developer, CI, test, or application environment. The affected code is packages/zod/src/index.ts and query request-validation generation. This issue is fixed in version 8.21.0.
Published: 2026-08-19
Score: 9.3 Critical
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

A double quote in a query parameter name can be emitted into the generated zod.object schema without proper encoding. When the generated schema module is imported, this causes attacker-controlled JavaScript to be evaluated, leading to code execution in environments such as a developer’s machine, CI pipelines, test harnesses, or the application runtime. The vulnerability is a form of improper encoding and code injection, corresponding to CWE‑116, CWE‑94, and CWE‑95.

Affected Systems

The product affected is orval-labs' orval, which generates type‑safe JavaScript clients from OpenAPI or Swagger specifications. All releases prior to 8.21.0 are vulnerable, as the bug exists in the query request‑validation generation code in packages/zod/src/index.ts. Users of older orval versions that import the generated zod schemas are at risk.

Risk and Exploitability

The CVSS score of 9.3 indicates high severity, while the EPSS score is not available and the vulnerability is not listed in the CISA KEV catalog. The likely attack vector is import‑time exploitation: an attacker who can supply or modify an OpenAPI specification that contains a query parameter name with an embedded double quote can trigger arbitrary code execution when developers or CI systems import the generated zod validation module. Exploitation requires the attacker to influence the specification or the generation process; once the vulnerable module is loaded, the attacker gains full code execution in that environment.

Generated by OpenCVE AI on August 20, 2026 at 13:12 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade orval to version 8.21.0 or later, which applies the fix that safely encodes query parameter names.
  • Regenerate any existing client code that was produced with an earlier orval release, ensuring it incorporates the updated, safe zod schema generation.
  • Validate OpenAPI specifications before processing to remove or escape double quotes in query parameter names, and consider implementing a preprocessing step or custom plugin to sanitize parameter names before code generation.

Generated by OpenCVE AI on August 20, 2026 at 13:12 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-653q-5476-x79g Orval: Import-time RCE via query parameter name -> computed-property-key injection in the zod cli
History

Fri, 21 Aug 2026 22:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Wed, 19 Aug 2026 18:45:00 +0000

Type Values Removed Values Added
First Time appeared Orval-labs
Orval-labs orval
Vendors & Products Orval-labs
Orval-labs orval

Wed, 19 Aug 2026 17:45:00 +0000

Type Values Removed Values Added
Description Orval generates type-safe JavaScript clients in TypeScript from OpenAPI v3 and Swagger v2 specifications. Prior to 8.21.0, a double quote in a query parameter name is emitted into the generated request-validation zod.object({...}) schema without safe encoding. This permits attacker-controlled JavaScript to be evaluated when the generated zod schema module is imported, resulting in code execution in the developer, CI, test, or application environment. The affected code is packages/zod/src/index.ts and query request-validation generation. This issue is fixed in version 8.21.0.
Title Orval: Import-time RCE via query parameter name -> computed-property-key injection in the zod cli
Weaknesses CWE-116
CWE-94
CWE-95
References
Metrics cvssV4_0

{'score': 9.3, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

Orval-labs Orval
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-21T21:49:30.476Z

Reserved: 2026-08-07T18:26:53.524Z

Link: CVE-2026-71865

cve-icon Vulnrichment

Updated: 2026-08-21T21:10:46.649Z

cve-icon NVD

Status : Received

Published: 2026-08-19T18:17:23.450

Modified: 2026-08-21T22:16:44.100

Link: CVE-2026-71865

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-20T13:15:03Z

Weaknesses
  • CWE-116

    Improper Encoding or Escaping of Output

  • CWE-94

    Improper Control of Generation of Code ('Code Injection')

  • CWE-95

    Improper Neutralization of Directives in Dynamically Evaluated Code ('Eval Injection')