ZeroHour

CVE-2026-75538

moderate

Heap Buffer Overflow in Erlang/OTP inet Driver ({packet,4})

CVSS 4.0
8.2 high
EPSS
<1%p41
Published
()
Modified
AI analysis

A signed integer overflow in the packet-length calculation of Erlang/OTP's inet TCP driver, when a TCP listener runs in {packet,4} framing mode, lets a remote, unauthenticated attacker trigger a receive-buffer overflow of up to about 2 GB. The overflow trashes the allocated block's allocator metadata footer, any adjacent heap block, and beyond, which most likely crashes the BEAM VM and causes denial of service; achieving remote code execution with the required precision is described as extremely unfeasible. Any Erlang/OTP installation running an affected release that exposes a TCP listener in {packet,4} mode on a network reachable by attackers is affected, such as Erlang's node-to-node distribution ports or custom gen_tcp services built on that framing. Releases older than OTP 17.0 may also be affected, but this is unknown. No public proof-of-concept or in-the-wild exploitation is known, and EPSS estimates only about a 0.5% probability of exploitation within 30 days.

What to do: Upgrade Erlang/OTP to OTP 27.3.4.17, OTP 28.5.0.6, or OTP 29.0.6 as applicable (corresponding to erts 15.2.7.13, 16.4.0.6, or 17.0.6), and treat pre-OTP-17 releases as potentially affected until clarified. Until patched, restrict network access to Erlang TCP listeners — especially EPMD (TCP 4369) and node-distribution ports — and audit applications for gen_tcp listeners configured with {packet,4} that are reachable from untrusted networks. The expected impact is a VM crash (denial of service), so prioritize patches for exposed, unauthenticated listeners.

Affected
Ericsson Erlang/OTPOTP 17.0 up to, but excluding, OTP 27.3.4.17 (erts 6.0 up to, but excluding, 15.2.7.13)
Ericsson Erlang/OTPOTP 28.0 up to, but excluding, OTP 28.5.0.6 (erts 16.0 up to, but excluding, 16.4.0.6)
Ericsson Erlang/OTPOTP 29.0 up to, but excluding, OTP 29.0.6 (erts 17.0 up to, but excluding, 17.0.6)
Ericsson Erlang/OTPEarlier than OTP 17.0 (erts before 6.0) — affected status unknown
Estimated exposure
moderate≈1,000–10,000 systems with an internet-reachable Erlang {packet,4} listener (estimate) — No public scan counts were provided, so this is an order-of-magnitude estimate from deployment patterns: Erlang/OTP underpins widely deployed middleware (RabbitMQ, CouchDB, ejabberd, Riak), but only installations exposing a {packet,4}…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

An attacker that connects to an open Erlang TCP port that uses the inet driver with {packet,4} mode can use a signed overflow in an incorrect packet length calculation to overflow the receive buffer into the VM allocator area and beyond up to about 2 GB. This would easily trash the allocated block's allocator metadata footer, and the next block, if any, and most likely cause the BEAM VM to crash. Utilizing this with precision enough to achieve Remote Code Execution would be extremely unfeasible. This issue affects OTP from OTP 17.0 before OTP 27.3.4.17, from OTP 28.0 before OTP 28.5.0.6, and from OTP 29.0 before OTP 29.0.6, corresponding to erts from 6.0 before 15.2.7.13, from 16.0 before 16.4.0.6, and from 17.0 before 17.0.6. Whether OTP before OTP 17.0, corresponding to erts before 6.0, is affected is unknown.

Weakness
CWE-122, CWE-190
Vector
CVSS:4.0/AV:N/AC:L/AT:P/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

In the news

No ingested article mentions this CVE yet.