CVE-2026-48854 json
Unbounded request body accumulation causes memory exhaustion in elixir-grpc/grpc
published 4mo ago modified 17d ago also EEF-CVE-2026-48854 , EUVD-2026-37012 , GHSA-q8gf-9rvj-gmgj
- cvss
- 8.7
- version 4.0, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.5%
- EPSS 0.5% chance of exploitation in 30 days, percentile 39%
- public exploits
- 0
- none known
Summary
Allocation of Resources Without Limits or Throttling vulnerability in elixir-grpc grpc allows unauthenticated attackers to exhaust the BEAM's memory and crash the server by streaming a large or slow-trickle unary request body.
'Elixir.GRPC.Server.Adapters.Cowboy.Handler':read_full_body/3 (lib/grpc/server/adapters/cowboy/handler.ex) accumulates every received chunk into a single growing binary with no size cap. Additionally, when the client omits the grpc-timeout header, the per-chunk read timeout resolves to :infinity, allowing a slow-trickle client to keep the connection alive indefinitely while memory grows. A single connection is sufficient to exhaust server memory and crash the node.
This issue affects grpc: from 0.3.0-alpha.2 before 1.0.0.
Patch / fix
- hex grpc 1.0.0
- elixir-grpc grpc 1.0.0
- github.com/elixir-grpc/grpc@d1abe70 commit
- github.com/elixir-grpc/grpc@49e18c3 commit
- github.com/elixir-grpc/grpc#542 pull request
- github.com/elixir-grpc/grpc/releases/tag/v1.0.0 release
Is CVE-2026-48854 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerCISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 4mo ago
Exploit prediction
0.45% chance of exploitation in the next 30 days, higher than 39% of all scored CVEs (FIRST EPSS, 2026-11-11).
Exploits and checks
- github.com https://github.com/elixir-grpc/grpc/security/advisories/GHSA-q8gf-9rvj-gmgj referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 8.7 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N |
| CNA | 4.0 | 8.7 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| hex | grpc | >=0.3.1, <1.0.0 >=0.3.0-alpha.2, <1.0.0 |
1.0.0 |
Affected products
- elixir-grpc grpc
Classification
- Weakness
-
- CWE-770 Allocation of Resources Without Limits or Throttling
References
-
github.com
/elixir-grpc/grpc/commit/d1abe70a6cad6dac4a3f8235d883d7c896989560
related, web
-
github.com
/elixir-grpc/grpc/commit/49e18c3ec6bb9afe2f712caad3dbab5c56a68a00
patch, web
-
github.com
/elixir-grpc/grpc/pull/542
web
-
github.com
/elixir-grpc/grpc/security/advisories/GHSA-q8gf-9rvj-gmgj
vendor-advisory, related, exploit, web, advisory
-
cna.erlef.org
/cves/CVE-2026-48854.html
related, web
-
osv.dev
/vulnerability/EEF-CVE-2026-48854
related, web
-
nvd.nist.gov
/vuln/detail/CVE-2026-48854
advisory
-
github.com
/elixir-grpc/grpc
package
-
github.com
/elixir-grpc/grpc/releases/tag/v1.0.0
web
-
hex.pm
/packages/grpc
package
Sources
- CVE List CVE-2026-48854
- GitHub Advisory GHSA-q8gf-9rvj-gmgj
- NVD CVE-2026-48854
- OSV EEF-CVE-2026-48854
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.