CVE-2026-71869
Received Received - Intake

Orval Template Literal Injection in Generated Zod Schemas

Vulnerability report for CVE-2026-71869, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-19

Last updated on: 2026-08-19

Assigner: GitHub, Inc.

Description

Orval generates type-safe JavaScript clients in TypeScript from OpenAPI v3 and Swagger v2 specifications. Prior to 8.21.0, a ${...} expression or backtick in an array item default is emitted into a module-level template literal emitted by zod schema generation 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 function formatDefaultValue. This issue is fixed in version 8.21.0.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-19
Last Modified
2026-08-19
Generated
2026-08-19
AI Q&A
2026-08-19
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 4 associated CPEs
Vendor Product Version / Range
orval orval 8.21.0
orval-labs orval to 8.21.0 (exc)
orval-labs orval 8.21.0
orval-labs orval From 8.19.0 (inc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-94 The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the syntax or behavior of the intended code segment.
CWE-116 The product prepares a structured message for communication with another component, but encoding or escaping of the data is either missing or done incorrectly. As a result, the intended structure of the message is not preserved.
CWE-1336 The product uses a template engine to insert or process externally-influenced input, but it does not neutralize or incorrectly neutralizes special elements or syntax that can be interpreted as template expressions or other code directives when processed by the engine.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability in Orval (versions 8.19.0 and below) allows Remote Code Execution (RCE) when importing generated zod schema modules. It occurs because array-item default values containing ${...} or backticks are emitted as module-level template literals without proper escaping. Attackers can inject malicious JavaScript that executes immediately upon module import.

Detection Guidance

Check if your Orval version is below 8.21.0 by running: npm list orval. If vulnerable, inspect generated zod schema files for template literals containing ${...} or backticks in array item defaults.

Impact Analysis

This vulnerability can lead to full system compromise, including unauthorized access to sensitive data, code execution in developer environments, CI pipelines, or production applications. It requires no additional interaction beyond importing a malicious OpenAPI-generated schema.

Compliance Impact

This vulnerability could violate compliance requirements by enabling unauthorized data access or modification. GDPR may be impacted due to potential data breaches, while HIPAA could be affected if protected health information is compromised. Organizations must address this to maintain regulatory compliance.

Mitigation Strategies

Upgrade Orval to version 8.21.0 or higher immediately using: npm install orval@latest. Review and regenerate all OpenAPI-derived zod schema files to ensure defaults are properly escaped.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-71869. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart