CVE-2024-37168

Source
https://nvd.nist.gov/vuln/detail/CVE-2024-37168
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-37168.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2024-37168
Aliases
Related
Published
2024-06-10T21:32:06Z
Modified
2025-10-30T20:26:52.392586Z
Severity
  • 5.3 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L CVSS Calculator
Summary
@grpc/grpc-js can allocate memory for incoming messages well above configured limits
Details

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

Database specific
{
    "cwe_ids": [
        "CWE-789"
    ]
}
References

Affected packages

Git / github.com/grpc/grpc-node

Affected ranges

Type
GIT
Repo
https://github.com/grpc/grpc-node
Events
Database specific
{
    "versions": [
        {
            "introduced": "1.10.0"
        },
        {
            "fixed": "1.10.9"
        }
    ]
}
Type
GIT
Repo
https://github.com/grpc/grpc-node
Events
Database specific
{
    "versions": [
        {
            "introduced": "1.9.0"
        },
        {
            "fixed": "1.9.15"
        }
    ]
}
Type
GIT
Repo
https://github.com/grpc/grpc-node
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed
Database specific
{
    "versions": [
        {
            "introduced": "0"
        },
        {
            "fixed": "1.8.22"
        }
    ]
}

Affected versions

@grpc/grpc-js-xds@1.*

@grpc/grpc-js-xds@1.10.0
@grpc/grpc-js-xds@1.10.1
@grpc/grpc-js-xds@1.2.0
@grpc/grpc-js-xds@1.2.1
@grpc/grpc-js-xds@1.2.3
@grpc/grpc-js-xds@1.2.4
@grpc/grpc-js-xds@1.3.0
@grpc/grpc-js-xds@1.3.1
@grpc/grpc-js-xds@1.4.0
@grpc/grpc-js-xds@1.5.0
@grpc/grpc-js-xds@1.5.1
@grpc/grpc-js-xds@1.5.2
@grpc/grpc-js-xds@1.6.0
@grpc/grpc-js-xds@1.6.1
@grpc/grpc-js-xds@1.7.0
@grpc/grpc-js-xds@1.8.0
@grpc/grpc-js-xds@1.8.1
@grpc/grpc-js-xds@1.8.2
@grpc/grpc-js-xds@1.9.0
@grpc/grpc-js-xds@1.9.1
@grpc/grpc-js-xds@1.9.2

@grpc/grpc-js@0.*

@grpc/grpc-js@0.2.0
@grpc/grpc-js@0.3.0
@grpc/grpc-js@0.3.1
@grpc/grpc-js@0.3.2
@grpc/grpc-js@0.3.3
@grpc/grpc-js@0.3.4
@grpc/grpc-js@0.3.6
@grpc/grpc-js@0.4.0
@grpc/grpc-js@0.4.2
@grpc/grpc-js@0.4.3
@grpc/grpc-js@0.5.0
@grpc/grpc-js@0.5.1
@grpc/grpc-js@0.5.2
@grpc/grpc-js@0.5.3
@grpc/grpc-js@0.5.4
@grpc/grpc-js@0.6.0
@grpc/grpc-js@0.6.1
@grpc/grpc-js@0.6.12
@grpc/grpc-js@0.6.18
@grpc/grpc-js@0.6.2
@grpc/grpc-js@0.6.3
@grpc/grpc-js@0.6.4
@grpc/grpc-js@0.6.5
@grpc/grpc-js@0.7.0
@grpc/grpc-js@0.7.1
@grpc/grpc-js@0.7.2
@grpc/grpc-js@0.7.5
@grpc/grpc-js@0.7.6
@grpc/grpc-js@0.7.9
@grpc/grpc-js@0.8.0
@grpc/grpc-js@0.8.1

@grpc/grpc-js@1.*

@grpc/grpc-js@1.0.0
@grpc/grpc-js@1.0.1
@grpc/grpc-js@1.0.2
@grpc/grpc-js@1.0.3
@grpc/grpc-js@1.0.4
@grpc/grpc-js@1.0.5
@grpc/grpc-js@1.1.0
@grpc/grpc-js@1.1.2
@grpc/grpc-js@1.1.3
@grpc/grpc-js@1.1.4
@grpc/grpc-js@1.1.5
@grpc/grpc-js@1.1.6
@grpc/grpc-js@1.1.7
@grpc/grpc-js@1.10.0
@grpc/grpc-js@1.10.1
@grpc/grpc-js@1.10.2
@grpc/grpc-js@1.10.3
@grpc/grpc-js@1.10.5
@grpc/grpc-js@1.10.6
@grpc/grpc-js@1.10.7
@grpc/grpc-js@1.10.8
@grpc/grpc-js@1.2.0
@grpc/grpc-js@1.2.10
@grpc/grpc-js@1.2.11
@grpc/grpc-js@1.2.3
@grpc/grpc-js@1.2.4
@grpc/grpc-js@1.2.5
@grpc/grpc-js@1.2.6
@grpc/grpc-js@1.2.7
@grpc/grpc-js@1.2.8
@grpc/grpc-js@1.2.9
@grpc/grpc-js@1.3.0
@grpc/grpc-js@1.3.1
@grpc/grpc-js@1.3.2
@grpc/grpc-js@1.3.3
@grpc/grpc-js@1.3.4
@grpc/grpc-js@1.3.5
@grpc/grpc-js@1.3.6
@grpc/grpc-js@1.3.7
@grpc/grpc-js@1.4.0
@grpc/grpc-js@1.4.1
@grpc/grpc-js@1.4.2
@grpc/grpc-js@1.4.3
@grpc/grpc-js@1.4.4
@grpc/grpc-js@1.4.5
@grpc/grpc-js@1.4.6
@grpc/grpc-js@1.5.0
@grpc/grpc-js@1.5.1
@grpc/grpc-js@1.5.10
@grpc/grpc-js@1.5.2
@grpc/grpc-js@1.5.3
@grpc/grpc-js@1.5.4
@grpc/grpc-js@1.5.5
@grpc/grpc-js@1.5.6
@grpc/grpc-js@1.5.7
@grpc/grpc-js@1.5.8
@grpc/grpc-js@1.5.9
@grpc/grpc-js@1.6.0
@grpc/grpc-js@1.6.1
@grpc/grpc-js@1.6.10
@grpc/grpc-js@1.6.11
@grpc/grpc-js@1.6.12
@grpc/grpc-js@1.6.2
@grpc/grpc-js@1.6.3
@grpc/grpc-js@1.6.4
@grpc/grpc-js@1.6.5
@grpc/grpc-js@1.6.6
@grpc/grpc-js@1.6.7
@grpc/grpc-js@1.6.9
@grpc/grpc-js@1.7.0
@grpc/grpc-js@1.7.2
@grpc/grpc-js@1.7.3
@grpc/grpc-js@1.8.0
@grpc/grpc-js@1.8.1
@grpc/grpc-js@1.8.10
@grpc/grpc-js@1.8.11
@grpc/grpc-js@1.8.12
@grpc/grpc-js@1.8.13
@grpc/grpc-js@1.8.14
@grpc/grpc-js@1.8.15
@grpc/grpc-js@1.8.16
@grpc/grpc-js@1.8.17
@grpc/grpc-js@1.8.18
@grpc/grpc-js@1.8.19
@grpc/grpc-js@1.8.2
@grpc/grpc-js@1.8.20
@grpc/grpc-js@1.8.21
@grpc/grpc-js@1.8.3
@grpc/grpc-js@1.8.4
@grpc/grpc-js@1.8.5
@grpc/grpc-js@1.8.6
@grpc/grpc-js@1.8.7
@grpc/grpc-js@1.8.8
@grpc/grpc-js@1.8.9
@grpc/grpc-js@1.9.0
@grpc/grpc-js@1.9.1
@grpc/grpc-js@1.9.10
@grpc/grpc-js@1.9.11
@grpc/grpc-js@1.9.12
@grpc/grpc-js@1.9.13
@grpc/grpc-js@1.9.14
@grpc/grpc-js@1.9.2
@grpc/grpc-js@1.9.3
@grpc/grpc-js@1.9.4
@grpc/grpc-js@1.9.5
@grpc/grpc-js@1.9.6
@grpc/grpc-js@1.9.7
@grpc/grpc-js@1.9.8
@grpc/grpc-js@1.9.9

@grpc/proto-loader@0.*

@grpc/proto-loader@0.3.0
@grpc/proto-loader@0.4.0
@grpc/proto-loader@0.5.0
@grpc/proto-loader@0.5.1
@grpc/proto-loader@0.5.2
@grpc/proto-loader@0.5.4
@grpc/proto-loader@0.5.6
@grpc/proto-loader@0.6.0
@grpc/proto-loader@0.6.1
@grpc/proto-loader@0.6.10
@grpc/proto-loader@0.6.11
@grpc/proto-loader@0.6.12
@grpc/proto-loader@0.6.13
@grpc/proto-loader@0.6.2
@grpc/proto-loader@0.6.3
@grpc/proto-loader@0.6.4
@grpc/proto-loader@0.6.5
@grpc/proto-loader@0.6.6
@grpc/proto-loader@0.6.8
@grpc/proto-loader@0.6.9
@grpc/proto-loader@0.7.1
@grpc/proto-loader@0.7.10
@grpc/proto-loader@0.7.2
@grpc/proto-loader@0.7.3
@grpc/proto-loader@0.7.4
@grpc/proto-loader@0.7.5
@grpc/proto-loader@0.7.6
@grpc/proto-loader@0.7.7
@grpc/proto-loader@0.7.9

@grpc/reflection@1.*

@grpc/reflection@1.0.0
@grpc/reflection@1.0.1

grpc-health-check@2.*

grpc-health-check@2.0.0

grpc-tools@1.*

grpc-tools@1.11.0
grpc-tools@1.11.2
grpc-tools@1.11.3
grpc-tools@1.12.0
grpc-tools@1.12.1
grpc-tools@1.12.2
grpc-tools@1.12.3
grpc-tools@1.12.4
grpc-tools@1.7.0
grpc-tools@1.7.2
grpc-tools@1.8.0
grpc-tools@1.9.0
grpc-tools@1.9.1

grpc@1.*

grpc@1.13.0
grpc@1.13.1
grpc@1.14.0
grpc@1.14.1
grpc@1.15.0
grpc@1.15.1
grpc@1.16.0
grpc@1.16.1
grpc@1.17.0
grpc@1.18.0
grpc@1.19.0
grpc@1.20.0
grpc@1.20.2
grpc@1.20.3
grpc@1.23.3
grpc@1.23.4
grpc@1.24.3

v1.*

v1.10.0
v1.10.1
v1.11.0
v1.11.1
v1.11.2
v1.12.1
v1.12.2
v1.12.3
v1.7.0
v1.7.1
v1.8.0
v1.8.4
v1.9.0
v1.9.1