CVE-2024-37168CWE-789

@grpc/grpc-js can allocate memory for incoming messages well above configured limits

Medium · published June 10, 2024

CVSS v3.1
5.3
EPSS
1%
Percentile
51.4
In the wild
Unconfirmed
What it is

@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.

The record
Technical detail
CVSS v3.1
5.3 · MEDIUM
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
CVSS v4.0
Not supplied
EPSS
0.00671 · 51.4th percentile
Weakness
CWE-789 · Memory Allocation with Excessive Size Value
Published
2024-06-10T21:32Z
EPSS history
Timeline
  • 10 JUN 21:32Z
    @grpc/grpc-js can allocate memory for incoming messages well above configured limits
    cvelistv5