CVE-2026-121809
CPU exhaustion via a truncated gRPC message on streaming RPCs in elixir-grpc grpc_server
Loop with Unreachable Exit Condition ('Infinite Loop') vulnerability in elixir-grpc grpc_server and grpc allows unauthenticated attackers to occupy a BEAM scheduler indefinitely via a client-streaming or bidirectional-streaming request whose body ends inside a gRPC message. GRPC.Server.Adapters.Cowboy.read_stream/1 (grpc_server/lib/grpc/server/adapters/cowboy.ex, and the Cowboy adapter in grpc before the package split) asks for more data whenever the buffer does not hold a complete message. Once the request body has ended, every further read returns an empty chunk, so the buffer never changes and the function retries without end. A single 5-byte length prefix sent with END_STREAM keeps one scheduler busy for as long as the connection stays open, and repeated requests exhaust all schedulers. This issue affects grpc_server: from 1.0.0 before 1.1.0; grpc: from 0.3.1 before 1.0.0.
| CWE | CWE-400 CWE-835 |
| Vendor | elixir-grpc |
| Product | grpc_server |
| Published | Nov 13, 2026 |
Get instant alerts for elixir-grpc grpc_server
Be the first to know when new unknown vulnerabilities affecting elixir-grpc grpc_server are published β delivered to Slack, Telegram or Discord.