CVE-2024-37168
Description
@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.
How to fix
- @grpc/grpc-js1.10.9, 1.9.15, 1.8.22 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| @grpc/grpc-jsnpm | 1.10.0 ≤ v < 1.10.9, 1.9.0 ≤ v < 1.9.15, v < 1.8.22 | 1.10.9, 1.9.15, 1.8.22 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.