CVE-2026-54269
protobufjs : Schema-derived names can shadow runtime-significant properties
Impact
protobufjs compiles protobuf definitions into JavaScript (JS) functions. Prior to 8.6.0 and 7.6.3, protobufjs accepted certain schema-derived names that could collide with properties used by protobufjs runtime helpers. The known affected names are fields named hasOwnProperty, field or oneof names such as $type when loaded through protobufjs JSON/reflection descriptors, and service methods whose generated helper name is rpcCall. When affected message or service types were used, protobufjs could read schema-controlled data where it expected an own-property helper, reflected type metadata, or the base RPC helper. This could cause deterministic exceptions or recursive calls in affected decode post-checks, verification, object conversion, reflected JSON serialization, or protobufjs RPC helper invocation. This vulnerability is fixed in 8.6.0 and 7.6.3.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| npm | protobufjs | <= 7.6.2 | 7.6.3 |
| npm | protobufjs-cli | >= 2.0.0, <= 2.5.0 | 2.5.1 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Protobufjs Project | Protobufjs | before 7.6.3 from 8.0.0 before 8.6.0 |
| Protobufjs Project | Protobufjs-Cli | before 1.3.3 from 2.0.0 before 2.5.1 |