Description
protobufjs compiles protobuf definitions into JavaScript (JS) functions. Prior to 7.5.6 and 8.0.2, protobufjs generated message constructors copied enumerable properties from a provided properties object without filtering the __proto__ key. If an application constructed a message from an attacker-controlled plain object, an own enumerable __proto__ property could alter the prototype of that individual message instance. This vulnerability is fixed in 7.5.6 and 8.0.2.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| protobufjs | protobuf.js | < 7.5.6, >= 8.0.0, < 8.0.2 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Wolfi
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Wolfi rolling | kubeflow-centraldashboard | 1.10.0-r21 | — |
| Wolfi rolling | pulumi-language-nodejs | 3.237.0-r1 | — |
| Wolfi rolling | renovate | 43.170.15-r2 | — |
| Wolfi rolling | vitess-23 | 23.0.4-r5 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| npm | protobufjs | < 7.5.6 | 7.5.6 | GHSA-fx83-v9x8-x52w |
| npm | protobufjs | >= 8.0.0, < 8.0.2 | 8.0.2 | GHSA-fx83-v9x8-x52w |