protobufjs/protobuf.js · Security
Prototype Pollution in protobufjs
- GHSA ID
- GHSA-g954-5hwp-pp24
- CVE ID
- CVE-2022-25878
- Severity
- high
- Published
- Updated
- CVSS
- 7.5 · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
- CVSS v3
- 7.5 · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Description
The package protobufjs is vulnerable to Prototype Pollution, which can allow an attacker to add/modify properties of the Object.prototype. Versions after and including 6.10.0 until 6.10.3 and after and including 6.11.0 until 6.11.3 are vulnerable.
This vulnerability can occur in multiple ways:
- by providing untrusted user input to util.setProperty or to ReflectionObject.setParsedOption functions
- by parsing/loading .proto files
CWEs
- CWE-1321 · Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution')
References
- https://nvd.nist.gov/vuln/detail/CVE-2022-25878 ↗
- https://github.com/protobufjs/protobuf.js/pull/1731 ↗
- https://github.com/protobufjs/protobuf.js/commit/b5f1391dff5515894830a6570e6d73f5511b2e8f ↗
- https://github.com/protobufjs/protobuf.js/blob/d13d5d5688052e366aa2e9169f50dfca376b32cf/src/util.js%23L176-L197 ↗
- https://snyk.io/vuln/SNYK-JAVA-ORGWEBJARSNPM-2841507 ↗
- https://snyk.io/vuln/SNYK-JS-PROTOBUFJS-2441248 ↗
- https://github.com/protobufjs/protobuf.js/pull/1735 ↗
- https://github.com/advisories/GHSA-g954-5hwp-pp24 ↗