Description
protobufjs compiles protobuf definitions into JavaScript (JS) functions. In versions prior to 8.0.1 and 7.5.5, attackers can inject arbitrary code in the "type" fields of protobuf definitions, which will then execute during object decoding using that definition. Versions 8.0.1 and 7.5.5 patch the issue.
CVSS breakdown
CVSS 4.0
Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Confidentiality (Vulnerable System)
High
Integrity (Vulnerable System)
High
Availability (Vulnerable System)
High
Confidentiality (Subsequent System)
High
Integrity (Subsequent System)
High
Availability (Subsequent System)
High
Affected products
- protobufjs / protobuf.js< 7.5.5 – < 7.5.5
- protobufjs / protobuf.js>= 8.0.0-experimental, < 8.0.1 – >= 8.0.0-experimental, < 8.0.1
References
- VENDOR_ADVISORYhttps://github.com/protobufjs/protobuf.js/security/advisories/GHSA-xq3m-2v4x-88gg
- PATCHhttps://github.com/protobufjs/protobuf.js/commit/535df444ac060243722ac5d672db205e5c531d75
- PATCHhttps://github.com/protobufjs/protobuf.js/commit/ff7b2afef8754837cc6dc64c864cd111ab477956
- PATCHhttps://github.com/protobufjs/protobuf.js/releases/tag/protobufjs-v7.5.5
- PATCHhttps://github.com/protobufjs/protobuf.js/releases/tag/protobufjs-v8.0.1