MEDIUM 5.3 npm
@grpc/grpc-js can allocate memory for incoming messages well above configured limits
GHSA-7v5v-9h63-cj86 · CVE-2024-37168
Published · Modified
AI SAST
Find this class of vulnerability in your own code
Corgea's AI-native static analysis detects vulnerabilities like this one across your repositories, ranks them by exploitability, and returns review-ready fixes.
Description
Impact
There are two separate code paths in which memory can be allocated per message in excess of the grpc.max_receive_message_length channel option:
- If an incoming message has a size on the wire greater than the configured limit, the entire message is buffered before it is discarded.
- If an incoming message has a size within the limit on the wire but decompresses to a size greater than the limit, the entire message is decompressed into memory, and on the server is not discarded.
Patches
This has been patched in versions 1.10.9, 1.9.15, and 1.8.22
References
- WEB https://github.com/grpc/grpc-node/security/advisories/GHSA-7v5v-9h63-cj86
- ADVISORY https://nvd.nist.gov/vuln/detail/CVE-2024-37168
- WEB https://github.com/grpc/grpc-node/commit/08b0422dae56467ecae1007e899efe66a8c4a650
- WEB https://github.com/grpc/grpc-node/commit/674f4e351a619fd4532f84ae6dff96b8ee4e1ed3
- WEB https://github.com/grpc/grpc-node/commit/a8a020339c7eab1347a343a512ad17a4aea4bfdb
- PACKAGE https://github.com/grpc/grpc-node
Ready to move
Start Securing
Free, no credit card | First findings in minutes