protobufjs
cpe:2.3:a:protobufjs_project:protobufjs:*:*:*:*:node.js:*:*
- <= 7.5.5
- >= 8.0.0, <= 8.0.1
A denial-of-service vulnerability has been identified in protobufjs versions prior to 7.5.6 and 8.0.2. The issue arises from the library's ability to recursively decode nested protobuf data without a depth limit. This flaw can lead to exhaustion of the JavaScript call stack, causing a stack overflow. The vulnerability affects applications that process untrusted protobuf binary input, particularly those decoding deeply nested structures such as group tags or message fields.
Exploitation of this vulnerability can cause the application to crash or fail decoding due to a stack overflow, disrupting the normal process.
Users are advised to upgrade to protobufjs version 7.5.6 or 8.0.2. If an immediate upgrade is not possible, untrusted protobuf data should not be decoded with affected versions. Alternatively, excessively nested messages can be rejected at an outer protocol boundary where feasible, or protobuf decoding can be isolated in a process that can be safely restarted.
Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.