CVE-2026-103918 @orpc/zod: Prototype injection in smart coercion

Medium 6.5 Published Updated

Remote attackers can inject prototype properties via crafted inputs in oRPC Zod plugins, potentially leading to code execution or denial of service.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-103918?

CVE-2026-103918 is a medium-severity unsafe deserialization vulnerability in middleapi orpc, published on 2 Oct 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

oRPC is a tool that helps build APIs that are end-to-end type-safe and adhere to OpenAPI standards. Prior to 1.14.10, the @orpc/zod ZodSmartCoercionPlugin and experimental_ZodSmartCoercionPlugin collect object and record properties in plain objects and resolve shape keys through the prototype chain. A remote client that can reach a procedure with an object or record input can supply __proto__ to replace the prototype of the returned request object, allowing attacker-controlled inherited values to reach application lookups. For object schemas, keys such as constructor, toString, and __proto__ can instead resolve inherited members as Zod schemas and cause an unhandled TypeError before validation. The global Object.prototype, unrelated objects, other requests, and other users are not modified, and the availability effect is limited to crafted requests rather than persistent process-wide state. This issue is fixed in version 1.14.10.

Weakness: CWE-915, CWE-1321

Which versions are affected by CVE-2026-103918?

2 open source packages ship an affected version, including @orpc/zod.

PackageAffectedFixed in
@orpc/zod npmAll versions1.14.10
@orpc/zod npmAll versions1.14.10

How do I fix CVE-2026-103918?

Upgrade @orpc/zod to 1.14.10 or later.

Upgrade, and only deserialise data from trusted sources or with an allow-list of types. More about Unsafe deserialization.

Is CVE-2026-103918 being exploited?

There is no known exploitation of CVE-2026-103918 in the wild and no public exploit code.

Sources

Also known as GHSA-gcgf-fh7c-8gf2.

Is CVE-2026-103918 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free