CVE-2026-49759: Stack buffer overflow in SCTP error cause parsing in inet_drv allows remote VM crash
Stack buffer overflow in SCTP error cause parsing in inetdrv allows remote VM crash
Other sources
Stack-based Buffer Overflow vulnerability in Erlang OTP erts (inetdrv) allows an unauthenticated remote attacker to crash the BEAM VM by sending a crafted SCTP ERROR chunk.
The sctpparseerrorchunk function in erts/emulator/drivers/common/inetdrv.c parses SCTP ERROR chunks and writes cause codes into a fixed-size stack-allocated ErlDrvTermData spec[] array without checking bounds. A remote attacker who has established an SCTP association to a listening port can send a single crafted SCTP ERROR chunk containing enough cause codes to overflow the stack buffer, crashing the VM. The attacker can only write 16-bit values interleaved with a fixed tag, so the overflow does not provide a controlled return address, limiting exploitation to Denial of Service.
A crafted SCTP ERROR chunk may also leak bits and pieces of Erlang VM memory into the received error packet observed by the Erlang process. Such data is already readable by the user running the Erlang VM, so the disclosure scope is limited.
This issue affects OTP from OTP 17.0 before 27.3.4.13, 28.5.0.2 and 29.0.2, corresponding to erts from 6.0 before 15.2.7.9, 16.4.0.2 and 17.0.2.
— Red Hat
Stack-based Buffer Overflow vulnerability in Erlang OTP erts (inetdrv) allows an unauthenticated remote attacker to crash the BEAM VM by sending a crafted SCTP ERROR chunk.
The sctpparseerrorchunk function in erts/emulator/drivers/common/inetdrv.c parses SCTP ERROR chunks and writes cause codes into a fixed-size stack-allocated ErlDrvTermData spec[] array without checking bounds. A remote attacker who has established an SCTP association to a listening port can send a single crafted SCTP ERROR chunk containing enough cause codes to overflow the stack buffer, crashing the VM. The attacker can only write 16-bit values interleaved with a fixed tag, so the overflow does not provide a controlled return address, limiting exploitation to Denial of Service.
A crafted SCTP ERROR chunk may also leak bits and pieces of Erlang VM memory into the received error packet observed by the Erlang process. Such data is already readable by the user running the Erlang VM, so the disclosure scope is limited.
This issue affects OTP from OTP 17.0 before OTP 29.0.2, OTP 28.5.0.2 and OTP 27.3.4.13, corresponding to erts from 6.0 before 17.0.2, 16.4.0.2 and 15.2.7.9.
— MITRE
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 26.2.5.21-2 - Upgrade
Upgrade
Erlang/OTP erts (inet_drv)to a version that resolves this vulnerability.Fixed in 27.3.4.13 - Upgrade
Upgrade
Erlang/OTP erts (inet_drv)to a version that resolves this vulnerability.Fixed in 28.5.0.2 - Upgrade
Upgrade
Erlang/OTP erts (inet_drv)to a version that resolves this vulnerability.Fixed in 29.0.2
Event History
Frequently Asked Questions
What is the severity of CVE-2026-49759?
CVE-2026-49759 has a high severity rating of 8.8 on the CVSS scale.
How do I fix CVE-2026-49759?
To fix CVE-2026-49759, users should update to the latest version of Erlang/OTP that addresses this vulnerability.
What does CVE-2026-49759 exploit?
CVE-2026-49759 exploits a stack buffer overflow in SCTP error cause parsing in the inet_drv component of Erlang.
Who is affected by CVE-2026-49759?
Any user running affected versions of Erlang/OTP with the SCTP protocol enabled is susceptible to CVE-2026-49759.
What type of attack is CVE-2026-49759 associated with?
CVE-2026-49759 is associated with remote denial-of-service attacks that can crash the BEAM VM.