Katalog CVE

CVE-2026-103036

ŚrednieCVSS 6.5
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

oRPC to narzędzie do budowania API typu end-to-end z bezpieczeństwem typów. W wersjach przed 1.14.9 wtyczka @orpc/json-schema SmartCoercionPlugin używa JsonSchemaCoercer do zbierania właściwości obiektów w zwykłym obiekcie i rozwiązywania wpisów schema.properties przez łańcuch prototypów. Zdalny klient może dostarczyć __proto__, aby zastąpić prototyp pojedynczego koercedowanego obiektu żądania lub podać nazwy członków Object.prototype, takich jak constructor i toString, aby dziedziczone wartości były traktowane jako podschematy.

Ocena ryzyka

Atakujący może wpływać na logikę obsługi, Object.assign lub wyszukiwania konfiguracji, potencjalnie prowadząc do nieoczekiwanego zachowania lub ujawnienia danych.

Rekomendacja

Zaktualizuj oRPC do wersji 1.14.9 lub nowszej, która naprawia tę podatność.

Inne podatności w oRPC

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

oRPC is a tool that helps build APIs that are end-to-end type-safe and adhere to OpenAPI standards. Prior to 1.14.9, the @orpc/json-schema SmartCoercionPlugin uses JsonSchemaCoercer to collect object properties in a plain object and to resolve schema.properties entries through the prototype chain. A remote client that can reach a procedure with an object input schema can supply __proto__ to replace the prototype of the single coerced request object, or supply Object.prototype member names such as constructor and toString so inherited values are treated as sub-schemas and pass the coercer's satisfaction check. Attacker-controlled inherited properties can consequently affect handler, Object.assign, or configuration lookups, while legitimate __proto__ properties are dropped. The global Object.prototype, unrelated objects, other requests, and other users are not modified, and downstream schema validation still runs. This issue is fixed in version 1.14.9.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS