Improperly Controlled Modification of Dynamically-Determined Object Attributes Affecting @orpc/json-schema package, versions <1.14.9


Severity

Recommended
0.0
medium
0
10

CVSS assessment by Snyk's Security Team. Learn more

Threat Intelligence

Exploit Maturity
Proof of Concept
EPSS
0.23% (14th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Improperly Controlled Modification of Dynamically-Determined Object Attributes vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-JS-ORPCJSONSCHEMA-21691387
  • published24 Oct 2026
  • disclosed2 Oct 2026
  • creditUnknown

Introduced: 2 Oct 2026

NewCVE-2026-103036  (opens in a new tab)
CWE-915  (opens in a new tab)

How to fix?

Upgrade @orpc/json-schema to version 1.14.9 or higher.

Overview

Affected versions of this package are vulnerable to Improperly Controlled Modification of Dynamically-Determined Object Attributes via JsonSchemaCoercer#coerce in coercer.ts, where attacker-controlled keys from untrusted input are processed before validation by the SmartCoercionPlugin. When coercing an object, properties are collected into a plain {}, so assigning a key such as __proto__ triggers the inherited setter rather than creating an own property, causing the returned object to inherit attacker-controlled properties through the prototype chain. A second related bug allows keys like constructor or toString to resolve to Object.prototype members when looking up schema.properties[key], causing those keys to bypass unknown-property handling and select incorrect union branches.

CVSS Base Scores

version 4.0
version 3.1