protobufjs Prototype Pollution vulnerability
Critical severity
GitHub Reviewed
Published
Jul 5, 2023
to the GitHub Advisory Database
•
Updated Jun 28, 2024
Package
Affected versions
>= 6.10.0, < 6.11.4
>= 7.0.0, < 7.2.5
Patched versions
6.11.4
7.2.5
Description
Published by the National Vulnerability Database
Jul 5, 2023
Published to the GitHub Advisory Database
Jul 5, 2023
Reviewed
Jul 7, 2023
Last updated
Jun 28, 2024
protobuf.js (aka protobufjs) 6.10.0 until 6.11.4 and 7.0.0 until 7.2.4 allows Prototype Pollution, a different vulnerability than CVE-2022-25878. A user-controlled protobuf message can be used by an attacker to pollute the prototype of Object.prototype by adding and overwriting its data and functions. Exploitation can involve: (1) using the function parse to parse protobuf messages on the fly, (2) loading .proto files by using load/loadSync functions, or (3) providing untrusted input to the functions ReflectionObject.setParsedOption and util.setProperty. NOTE: this CVE Record is about
Object.constructor.prototype.<new-property> = ...;
whereas CVE-2022-25878 was aboutObject.__proto__.<new-property> = ...;
instead.References