Vulnerability in Grpc Grpc-Node

CVE-2024-37168

@grpc/grps-js implements the core functionality of gRPC purely in JavaScript, without a C++ addon. Prior to versions 1.10.9, 1.9.15, and 1.8.22, 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; and/or 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. This has been patched in versions 1.10.9, 1.9.15, and 1.8.22.

EPSS: 0.007 (48.3th percentile) — read the EPSS interpretation.

CVSS v3 metric

CVSS v3 base score 5.3 (Medium). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L.

Affected products

  • Grpc Grpc-node — versions >= 1.10.0, < 1.10.9, >= 1.9.0, < 1.9.15, < 1.8.22

Weakness classification (CWE)

Public proof-of-concept exploits

References

Frequently asked questions

What is CVE-2024-37168?
CVE-2024-37168 is a medium-severity vulnerability in Grpc Grpc-Node, classified under CWE-789. CVSS score: 5.3/10. Published 2024-06-10.
How severe is CVE-2024-37168?
Medium severity. CVSS v3 base score is 5.3 out of 10.
Is CVE-2024-37168 known to be exploited?
1 public proof-of-concept repositories are indexed. Not currently listed in the CISA KEV catalog.