Description
Stack-based Buffer Overflow vulnerability in Erlang OTP (erl_interface) allows Stack-based Buffer Overflow.

This vulnerability is associated with program file lib/erl_interface/src/misc/ei_printterm.c and program routine ei_s_print_term.

The C function ei_s_print_term uses an internal 2000-character stack buffer to format terms. When called with an encoded Erlang term containing a very large integer (encoded representation exceeding 2000 characters), the buffer overflows. The overflow bytes are restricted to the ASCII values of 0-9 and A-F, which limits exploitation to Denial of Service.

The companion function ei_print_term, which prints directly to a FILE instead of a memory buffer, does not contain this bug.

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 erl_interface from 3.7.16 before 5.8.1, 5.7.0.1 and 5.5.2.1.
Published: 2026-06-10
Score: 6.9 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability is a stack‑based buffer overflow in the ei_s_print_term routine of Erlang OTP’s erl_interface module. It occurs when the routine formats terms into an internal 2000‑character stack buffer. If an encoded Erlang term contains a very large integer whose representation exceeds 2000 characters, the buffer overflows. The overflowing bytes are limited to ASCII digits 0–9 and letters A–F, so exploitation is confined to a denial of service. No direct path to remote code execution is provided, and the flaw is primarily a DoS issue.

Affected Systems

The issue occurs in Erlang OTP releases prior to OTP 27.3.4.13, 28.5.0.2, and 29.0.2 – that is, OTP 17.0 through 29.0.1 inclusive. The vulnerable erl_interface releases are those before erl_interface 5.5.2.1, 5.7.0.1, and 5.8.1, which correspond to OTP 27.3.4.13, 28.5.0.2, and 29.0.2 respectively.

Risk and Exploitability

The CVSS score of 6.9 indicates a moderate severity, and the vulnerability is not listed in the CISA KEV catalog. The EPSS score is less than 1 %, which suggests a low probability of exploitation. Because the overflowing buffer can be reached only when an attacker controls the encoded integer representation, the likely attack vector is calling ei_s_print_term with untrusted data. The impact is a denial of service rather than remote code execution.

Generated by OpenCVE AI on August 3, 2026 at 07:26 UTC.

Remediation

Vendor Workaround

Avoid calling ei_s_print_term with untrusted data whose encoded integer representation could exceed 2000 characters.


OpenCVE Recommended Actions

  • Upgrade Erlang OTP to the latest release that includes the patch (OTP 27.3.4.13 or later, or OTP 28.5.0.2 or OTP 29.0.2).
  • Avoid calling ei_s_print_term with untrusted data that could contain integers whose encoded representation exceeds 2000 characters, as recommended by the vendor.
  • Monitor system logs and performance to detect unexpected crashes or high CPU usage that could indicate an attempted exploitation and consider isolating vulnerable nodes if upgrading immediately is not feasible.

Generated by OpenCVE AI on August 3, 2026 at 07:26 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 24 Jul 2026 18:30:00 +0000

Type Values Removed Values Added
Description Stack-based Buffer Overflow vulnerability in Erlang OTP (erl_interface) allows Stack-based Buffer Overflow. This vulnerability is associated with program file lib/erl_interface/src/misc/ei_printterm.c and program routine ei_s_print_term. The C function ei_s_print_term uses an internal 2000-character stack buffer to format terms. When called with an encoded Erlang term containing a very large integer (encoded representation exceeding 2000 characters), the buffer overflows. The overflow bytes are restricted to the ASCII values of 0-9 and A-F, which limits exploitation to Denial of Service. The companion function ei_print_term, which prints directly to a FILE instead of a memory buffer, does not contain this bug. This issue affects OTP from OTP 17.0 before 27.3.4.13, 28.5.0.2 and 29.0.2, corresponding to erl_interface from 3.7.16 before 5.5.2.1, 5.7.0.1 and 5.8.1. Stack-based Buffer Overflow vulnerability in Erlang OTP (erl_interface) allows Stack-based Buffer Overflow. This vulnerability is associated with program file lib/erl_interface/src/misc/ei_printterm.c and program routine ei_s_print_term. The C function ei_s_print_term uses an internal 2000-character stack buffer to format terms. When called with an encoded Erlang term containing a very large integer (encoded representation exceeding 2000 characters), the buffer overflows. The overflow bytes are restricted to the ASCII values of 0-9 and A-F, which limits exploitation to Denial of Service. The companion function ei_print_term, which prints directly to a FILE instead of a memory buffer, does not contain this bug. 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 erl_interface from 3.7.16 before 5.8.1, 5.7.0.1 and 5.5.2.1.

Mon, 15 Jun 2026 18:30:00 +0000

Type Values Removed Values Added
First Time appeared Erlang erl Interface
CPEs cpe:2.3:a:erlang:erl_interface:*:*:*:*:*:*:*:*
Vendors & Products Erlang erl Interface
Metrics cvssV3_1

{'score': 5.5, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'}


Wed, 10 Jun 2026 20:45:00 +0000

Type Values Removed Values Added
First Time appeared Erlang erlang/otp
Vendors & Products Erlang erlang/otp

Wed, 10 Jun 2026 17:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Wed, 10 Jun 2026 16:00:00 +0000

Type Values Removed Values Added
Description Stack-based Buffer Overflow vulnerability in Erlang OTP (erl_interface) allows Stack-based Buffer Overflow. This vulnerability is associated with program file lib/erl_interface/src/misc/ei_printterm.c and program routine ei_s_print_term. The C function ei_s_print_term uses an internal 2000-character stack buffer to format terms. When called with an encoded Erlang term containing a very large integer (encoded representation exceeding 2000 characters), the buffer overflows. The overflow bytes are restricted to the ASCII values of 0-9 and A-F, which limits exploitation to Denial of Service. The companion function ei_print_term, which prints directly to a FILE instead of a memory buffer, does not contain this bug. This issue affects OTP from OTP 17.0 before 27.3.4.13, 28.5.0.2 and 29.0.2, corresponding to erl_interface from 3.7.16 before 5.5.2.1, 5.7.0.1 and 5.8.1.
Title Stack Buffer Overflow in ei_s_print_term at Very Large Integer
First Time appeared Erlang
Erlang erlang\/otp
Weaknesses CWE-121
CPEs cpe:2.3:a:erlang:erlang\/otp:*:*:*:*:*:*:*:*
Vendors & Products Erlang
Erlang erlang\/otp
References
Metrics cvssV4_0

{'score': 6.9, 'vector': 'CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

Erlang Erl Interface Erlang/otp Erlang\/otp
cve-icon MITRE

Status: PUBLISHED

Assigner: EEF

Published:

Updated: 2026-07-24T14:15:41.278Z

Reserved: 2026-06-01T13:45:22.449Z

Link: CVE-2026-49760

cve-icon Vulnrichment

Updated: 2026-06-10T16:16:22.977Z

cve-icon NVD

Status : Analyzed

Published: 2026-06-10T16:17:12.947

Modified: 2026-06-15T18:23:19.167

Link: CVE-2026-49760

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-03T07:30:04Z

Weaknesses
  • CWE-121

    Stack-based Buffer Overflow