<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://db.gcve.eu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Thu, 01 Oct 2026 02:33:48 +0000</lastBuildDate>
    <item>
      <title>fkie_cve-2026-71866</title>
      <link>https://db.gcve.eu/vuln/fkie_cve-2026-71866</link>
      <description>&lt;p&gt;Orval generates type-safe JavaScript clients in TypeScript from OpenAPI v3 and Swagger v2 specifications. From version 8.19.0 until 8.21.0, a double quote in a schema property name is emitted into the generated 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 zod object-key generation. This issue is fixed in version 8.21.0.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;Orval generates type-safe JavaScript clients in TypeScript from OpenAPI v3 and Swagger v2 specifications. From version 8.19.0 until 8.21.0, a double quote in a schema property name is emitted into the generated 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 zod object-key generation. This issue is fixed in version 8.21.0.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/fkie_cve-2026-71866</guid>
    </item>
    <item>
      <title>GHSA-6mr6-jvcr-2f25 — Orval: Import-time RCE via schema property name -&gt; computed-property-key injection in the zod client</title>
      <link>https://db.gcve.eu/vuln/ghsa-6mr6-jvcr-2f25</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: orval&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;orval&amp;#39;s zod client emits each schema property name as a double-quoted key in the generated zod.object({...})
WITHOUT escaping the double quote. A &amp;#34; in a property name closes the key and lands in object-literal
context, where an injected computed property key [expr] is evaluated when zod.object({...}) runs -- which
is at MODULE IMPORT (the `export const X = zod.object({...})` executes on load) -&amp;gt; import-time RCE. The
property name is a pure data field. Verified on orval 8.19.0 / Node. CWE-94 / CWE-95 / CWE-116.&lt;/p&gt;
&lt;p&gt;### Details&lt;/p&gt;
&lt;p&gt;```ts
export const OpBody = zod.object({ &amp;#34;a&amp;#34;:zod.string(),[require(&amp;#34;fs&amp;#34;).writeFileSync(&amp;#34;PWNED&amp;#34;,&amp;#34;&amp;#34;)]:zod.string(),&amp;#34;b&amp;#34;: zod.string().optional() })
```&lt;/p&gt;
&lt;p&gt;Sibling: the MSW mock uses a single-quoted key (&amp;#39; breakout, call-time) -- separate report. The TS interface
key is a type (DoS only). Distinct from orval&amp;#39;s $ref / route-path / server-url / zod-default findings.&lt;/p&gt;
&lt;p&gt;### PoC&lt;/p&gt;
&lt;p&gt;reproduce.sh (+ make_spec.py) attached: a property name a&amp;#34;:zod.string(),[require(&amp;#34;fs&amp;#34;).writeFileSync(&amp;#34;&amp;lt;marker&amp;gt;&amp;#34;,&amp;#34;&amp;#34;)]:zod.string(),&amp;#34;b
-&amp;gt; zod.object; evaluating it (= importing the module) writes the marker. Verified on 8.19.0.&lt;/p&gt;
&lt;p&gt;### Impact&lt;/p&gt;
&lt;p&gt;JavaScript / OS command execution (via child_process) at import time for anyone who generates an orval zod
client from an attacker-controlled spec and imports it. Estimated Critical, e.g.
`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`.&lt;/p&gt;
&lt;p&gt;### Suggested fix&lt;/p&gt;
&lt;p&gt;Escape the property name for the JS string key (JSON.stringify) in the…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: orval&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;orval&amp;#39;s zod client emits each schema property name as a double-quoted key in the generated zod.object({...})
WITHOUT escaping the double quote. A &amp;#34; in a property name closes the key and lands in object-literal
context, where an injected computed property key [expr] is evaluated when zod.object({...}) runs -- which
is at MODULE IMPORT (the `export const X = zod.object({...})` executes on load) -&amp;gt; import-time RCE. The
property name is a pure data field. Verified on orval 8.19.0 / Node. CWE-94 / CWE-95 / CWE-116.&lt;/p&gt;
&lt;p&gt;### Details&lt;/p&gt;
&lt;p&gt;```ts
export const OpBody = zod.object({ &amp;#34;a&amp;#34;:zod.string(),[require(&amp;#34;fs&amp;#34;).writeFileSync(&amp;#34;PWNED&amp;#34;,&amp;#34;&amp;#34;)]:zod.string(),&amp;#34;b&amp;#34;: zod.string().optional() })
```&lt;/p&gt;
&lt;p&gt;Sibling: the MSW mock uses a single-quoted key (&amp;#39; breakout, call-time) -- separate report. The TS interface
key is a type (DoS only). Distinct from orval&amp;#39;s $ref / route-path / server-url / zod-default findings.&lt;/p&gt;
&lt;p&gt;### PoC&lt;/p&gt;
&lt;p&gt;reproduce.sh (+ make_spec.py) attached: a property name a&amp;#34;:zod.string(),[require(&amp;#34;fs&amp;#34;).writeFileSync(&amp;#34;&amp;lt;marker&amp;gt;&amp;#34;,&amp;#34;&amp;#34;)]:zod.string(),&amp;#34;b
-&amp;gt; zod.object; evaluating it (= importing the module) writes the marker. Verified on 8.19.0.&lt;/p&gt;
&lt;p&gt;### Impact&lt;/p&gt;
&lt;p&gt;JavaScript / OS command execution (via child_process) at import time for anyone who generates an orval zod
client from an attacker-controlled spec and imports it. Estimated Critical, e.g.
`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`.&lt;/p&gt;
&lt;p&gt;### Suggested fix&lt;/p&gt;
&lt;p&gt;Escape the property name for the JS string key (JSON.stringify) in the…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/ghsa-6mr6-jvcr-2f25</guid>
    </item>
  </channel>
</rss>
