Summary
CVE-2026-74835 is a high-severity (CVSS 8.7) denial-of-service vulnerability in the inets application’s HTTP server (httpd) shipped with Erlang/OTP. The server fails to enforce a configured max_body_size limit when processing chunked (Transfer-Encoding: chunked) requests, allowing a remote, unauthenticated attacker to trigger unbounded memory allocation on the target host. Successful exploitation can exhaust server memory and cause the affected Erlang node or application to crash or become unresponsive.
Technical details
- Root cause: The
httpdchunked-transfer-decoding logic only checks the configured body-size limit once a chunk is fully received. An attacker can announce a large chunk size in theTransfer-Encoding: chunkedstream and then send data slowly/indefinitely without ever completing the chunk, so the size check is never triggered. - Trigger conditions: The target must be running an
httpdserver (from theinetsapplication) withTransfer-Encoding: chunkedrequest handling enabled and amax_body_size(or equivalent body-size limit) configured — the limit enforcement itself is bypassed by the flaw. - Attack vector: Network-based, unauthenticated, low complexity (CVSS v4 vector:
AV:N/AC:L/AT:N/PR:N/UI:N). No user interaction or special privileges are required. - Impact: Allocation of resources without limits or throttling (CWE-770), leading to memory exhaustion and denial of service (availability impact rated High; confidentiality and integrity are not affected).
Affected software
- Erlang/OTP: 17.0 up to (but not including) 27.3.4.17; 28.0 up to (but not including) 28.5.0.6; 29.0 up to (but not including) 29.0.6
- inets application: 5.10 up to (but not including) 9.3.2.7; 9.4 up to (but not including) 9.6.2.3; 9.7 up to (but not including) 9.7.2
- Status of OTP/inets versions predating 17.0/5.10 is unknown/not assessed by the vendor.
Severity
- CVSS v4.0 Base Score: 8.7 (High)
- Vector:
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 - CWE: CWE-770 (Allocation of Resources Without Limits or Throttling)
Mitigation and recommended actions
- Immediate: Upgrade Erlang/OTP to 27.3.4.17, 28.5.0.6, or 29.0.6 (or later), which include the corresponding patched
inetsreleases (9.3.2.7, 9.6.2.3, or 9.7.2). - If patching is not immediately possible:
- Place a reverse proxy (e.g., nginx or another edge proxy with its own request body size enforcement, such as
client_max_body_size) in front of the Erlanghttpdserver to enforce body-size limits before traffic reaches the vulnerable component. - Restrict network access to the
httpdservice to trusted clients/networks only, reducing exposure to untrusted internet traffic. - Monitor memory usage and connection behavior on hosts running
inetshttpdfor signs of slow, incomplete chunked requests indicative of exploitation attempts.
- Place a reverse proxy (e.g., nginx or another edge proxy with its own request body size enforcement, such as

