Bugzilla – Bug 1213065
VUL-0: CVE-2023-36665: nodejs-electron: protobufjs: prototype pollution using user-controlled protobuf message
Last modified: 2023-07-06 11:54:49 UTC
CVE-2023-36665 protobuf.js (aka protobufjs) 6.10.0 through 7.x before 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 about "Object.__proto__.<new-property> = ...;" instead. References: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2023-36665 https://bugzilla.redhat.com/show_bug.cgi?id=2220812 https://www.cve.org/CVERecord?id=CVE-2023-36665 https://github.com/protobufjs/protobuf.js/commit/e66379f451b0393c27d87b37fa7d271619e16b0d https://github.com/protobufjs/protobuf.js/compare/protobufjs-v7.2.3...protobufjs-v7.2.4 https://github.com/protobufjs/protobuf.js/pull/1899 https://github.com/protobufjs/protobuf.js/releases/tag/protobufjs-v7.2.4 https://www.code-intelligence.com/blog/cve-protobufjs-prototype-pollution-cve-2023-36665
openSUSE:Factory/nodejs-electron embeds protobufjs 6.10.2
There are no instances of the offending code in the electorn tarball. There are two mentions of protobufjs 6.10.2 inside third_party/perfetto/{infra/perfetto.dev,ui}/package-lock.json but these directories are not used in chromium/electron.