Quick answers
- Is This vulnerability exploited in the wild?
- No. Junglewise Threat Intelligence has no report of This vulnerability being exploited in the wild.
- How severe is This vulnerability?
- Informational severity, published 19 August 2020.
- Which products and versions are affected?
- protobufjs (npm) SEMVER:introduced=6.0.0,fixed=6.8.6.
- Is there a fix for This vulnerability?
- Yes. protobufjs (npm): upgrade to 6.8.6 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
- How is This vulnerability attacked?
- It is attacked over the network.
- Am I affected?
- Check whether you run protobufjs (npm) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.
How to fix
- protobufjs (npm): upgrade to 6.8.6 or later
npm install protobufjs@6.8.6
Technical details
The vulnerability exists in the message parsing logic of protobufjs (specifically in src/parse.js), where insufficient validation or resource limits allow an attacker to craft a protobuf message that triggers computationally expensive operations. The attack vector is network-based if the application accepts protobuf messages from untrusted sources. No authentication is required to exploit this vulnerability—an attacker can simply send a malicious message to trigger the denial of service condition. The vulnerability affects all versions of the 5.x series up to 5.0.3 and the 6.x series from 6.0.0 through 6.8.5. Patches are available in protobufjs 5.0.3 and 6.8.6 or later.
Affected products
- protobufjs protobufjs 5.x < 5.0.3, 6.0.0 - 6.8.5
Timeline
- 2020-08-19: disclosed