Quick answers
- Is CVE-2026-71868 exploited in the wild?
- No. Junglewise Threat Intelligence has no report of CVE-2026-71868 being exploited in the wild.
- How severe is CVE-2026-71868?
- Critical severity, with a CVSS score of 4, published 19 August 2026.
- Which products and versions are affected?
- orval (npm) < 8.21.0, SEMVER:introduced=0,fixed=8.21.0.
- Is there a fix for CVE-2026-71868?
- Yes. orval (npm): upgrade to 8.21.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
- How is CVE-2026-71868 attacked?
- It is attacked over the network, in a software library.
- Am I affected by CVE-2026-71868?
- Check whether you run orval (npm) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.
How to fix
- orval (npm): upgrade to 8.21.0 or later
npm install orval@8.21.0
Technical details
The vulnerability is a code injection flaw in Orval's zod code generator (CWE-94, CWE-1336). When processing OpenAPI specs with enum-typed properties that have default values, Orval emits these defaults directly into a module-level template literal (`export const …Default = `<unescaped-default>`;`) without HTML, JavaScript, or string escaping. Because JavaScript template literals evaluate `${...}` expressions, an attacker can supply a default value containing `${<arbitrary expression>}` (e.g., `v${globalThis.ORVPWN()}w`) which will be executed during module import before any application code runs. The attack requires either control over the OpenAPI spec or ability to intercept it; no authentication, privileges, or user interaction is needed. The root cause is the interpolation of spec values into template literals instead of using proper string encoding (JSON.stringify or escaping special characters). Patched in version 8.21.0.
Affected products
- orval-labs orval < 8.21.0
Identifiers
- CVE-2026-71868
- GHSA-3575-w9fc-c2j6
Timeline
- 2026-09-03: disclosed: Published to GitHub Advisory Database
- 2026-09-03: patched: Fix released in version 8.21.0 (commit 8ef1bfd)
- 2026-08-19: kev added: CVE-2026-71868 published to NVD