CVE-2026-70405
snmp BER INTEGER decoder applies no size limit to attacker-supplied integer fields
Improper Validation of Specified Quantity in Input vulnerability in Erlang/OTP snmp allows a remote attacker to degrade availability by sending an SNMP message containing a BER INTEGER whose length field is arbitrarily large.
snmp_pdus:dec_integer_notag/1 defaults its size limit to infinity, and do_dec_integer_notag/2 then accumulates the value across every declared byte with a recursive shift and bitwise or. Work grows superlinearly in the declared length because each operation acts on a progressively larger bignum. The size-limited variant dec_integer_notag/2 exists but is reached from only one call site, dec_snmp_version/1, which bounds the version field to ten bytes; the request identifier, error status and index, generic and specific trap fields, engine boots and time, and every varbind value decoded by dec_value/1 all use the unbounded form. The decode runs before the PDU is processed, so no valid request is required beyond what the deployment demands to accept the message at all.
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 snmp from 4.25.1 before 5.18.2.1, from 5.19 before 5.20.2.2, and from 5.20.3 before 5.20.5. Whether OTP before OTP 17.0, corresponding to snmp before 4.25.1, is affected is unknown.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- Low
Exploit likelihood
What each source reports
CVE List Score used
6.3
snmp BER INTEGER decoder applies no size limit to attacker-supplied integer fields
Improper Validation of Specified Quantity in Input vulnerability in Erlang/OTP snmp allows a remote attacker to degrade availability by sending an SNMP message containing a BER INTEGER whose length field is arbitrarily large.
snmp_pdus:dec_integer_notag/1 defaults its size limit to infinity, and do_dec_integer_notag/2 then accumulates the value across every declared byte with a recursive shift and bitwise or. Work grows superlinearly in the declared length because each operation acts on a progressively larger bignum. The size-limited variant dec_integer_notag/2 exists but is reached from only one call site, dec_snmp_version/1, which bounds the version field to ten bytes; the request identifier, error status and index, generic and specific trap fields, engine boots and time, and every varbind value decoded by dec_value/1 all use the unbounded form. The decode runs before the PDU is processed, so no valid request is required beyond what the deployment demands to accept the message at all.
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 snmp from 4.25.1 before 5.18.2.1, from 5.19 before 5.20.2.2, and from 5.20.3 before 5.20.5. Whether OTP before OTP 17.0, corresponding to snmp before 4.25.1, is affected is unknown.
- Record
CVE-2026-70405- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N - Weakness
- CWE-1284
- Updated
- 2026-11-02
EUVDEUVD-2026-69246
6.3
Improper Validation of Specified Quantity in Input vulnerability in Erlang/OTP snmp allows a remote attacker to degrade availability by sending an SNMP message containing a BER INTEGER whose length field is arbitrarily large.
snmp_pdus:dec_integer_notag/1 defaults its size limit to infinity, and do_dec_integer_notag/2 then accumulates the value across every declared byte with a recursive shift and bitwise or. Work grows superlinearly in the declared length because each operation acts on a progressively larger bignum. The size-limited variant dec_integer_notag/2 exists but is reached from only one call site, dec_snmp_version/1, which bounds the version field to ten bytes; the request identifier, error status and index, generic and specific trap fields, engine boots and time, and every varbind value decoded by dec_value/1 all use the unbounded form. The decode runs before the PDU is processed, so no valid request is required beyond what the deployment demands to accept the message at all.
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 snmp from 4.25.1 before 5.18.2.1, from 5.19 before 5.20.2.2, and from 5.20.3 before 5.20.5. Whether OTP before OTP 17.0, corresponding to snmp before 4.25.1, is affected is unknown.
- Record
EUVD-2026-69246- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N - Updated
- 2026-11-02
NVD
6.3
Improper Validation of Specified Quantity in Input vulnerability in Erlang/OTP snmp allows a remote attacker to degrade availability by sending an SNMP message containing a BER INTEGER whose length field is arbitrarily large.
snmp_pdus:dec_integer_notag/1 defaults its size limit to infinity, and do_dec_integer_notag/2 then accumulates the value across every declared byte with a recursive shift and bitwise or. Work grows superlinearly in the declared length because each operation acts on a progressively larger bignum. The size-limited variant dec_integer_notag/2 exists but is reached from only one call site, dec_snmp_version/1, which bounds the version field to ten bytes; the request identifier, error status and index, generic and specific trap fields, engine boots and time, and every varbind value decoded by dec_value/1 all use the unbounded form. The decode runs before the PDU is processed, so no valid request is required beyond what the deployment demands to accept the message at all.
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 snmp from 4.25.1 before 5.18.2.1, from 5.19 before 5.20.2.2, and from 5.20.3 before 5.20.5. Whether OTP before OTP 17.0, corresponding to snmp before 4.25.1, is affected is unknown.
- Record
CVE-2026-70405- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/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 - Weakness
- CWE-1284
- Updated
- 2026-11-02
OSV
6.3
snmp BER INTEGER decoder applies no size limit to attacker-supplied integer fields
Improper Validation of Specified Quantity in Input vulnerability in Erlang/OTP snmp allows a remote attacker to degrade availability by sending an SNMP message containing a BER INTEGER whose length field is arbitrarily large.
snmp_pdus:dec_integer_notag/1 defaults its size limit to infinity, and do_dec_integer_notag/2 then accumulates the value across every declared byte with a recursive shift and bitwise or. Work grows superlinearly in the declared length because each operation acts on a progressively larger bignum. The size-limited variant dec_integer_notag/2 exists but is reached from only one call site, dec_snmp_version/1, which bounds the version field to ten bytes; the request identifier, error status and index, generic and specific trap fields, engine boots and time, and every varbind value decoded by dec_value/1 all use the unbounded form. The decode runs before the PDU is processed, so no valid request is required beyond what the deployment demands to accept the message at all.
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 snmp from 4.25.1 before 5.18.2.1, from 5.19 before 5.20.2.2, and from 5.20.3 before 5.20.5. Whether OTP before OTP 17.0, corresponding to snmp before 4.25.1, is affected is unknown.
- Record
CVE-2026-70405- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N - Weakness
- CWE-1284
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-70405
6.3
Improper Validation of Specified Quantity in Input vulnerability in Erlang/OTP snmp allows a remote attacker to degrade availability by sending an SNMP message containing a BER INTEGER whose length field is arbitrarily large. snmp_pdus:dec_integer_notag/1 defaults its size limit to infinity, and do_dec_integer_notag/2 then accumulates the value across every declared byte with a recursive shift and bitwise or. Work grows superlinearly in the declared length because each operation acts on a progressively larger bignum. The size-limited variant dec_integer_notag/2 exists but is reached from only one call site, dec_snmp_version/1, which bounds the version field to ten bytes; the request identifier, error status and index, generic and specific trap fields, engine boots and time, and every varbind value decoded by dec_value/1 all use the unbounded form. The decode runs before the PDU is processed, so no valid request is required beyond what the deployment demands to accept the message at all. 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 snmp from 4.25.1 before 5.18.2.1, from 5.19 before 5.20.2.2, and from 5.20.3 before 5.20.5. Whether OTP before OTP 17.0, corresponding to snmp before 4.25.1, is affected is unknown.
- Record
DEBIAN-CVE-2026-70405- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/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 - Updated
- 2026-11-02
OSVEEF-CVE-2026-70405
6.3
snmp BER INTEGER decoder applies no size limit to attacker-supplied integer fields
Summary
Improper Validation of Specified Quantity in Input vulnerability in Erlang/OTP snmp allows a remote attacker to degrade availability by sending an SNMP message containing a BER INTEGER whose length field is arbitrarily large.
snmp_pdus:dec_integer_notag/1 defaults its size limit to infinity, and do_dec_integer_notag/2 then accumulates the value across every declared byte with a recursive shift and bitwise or. Work grows superlinearly in the declared length because each operation acts on a progressively larger bignum. The size-limited variant dec_integer_notag/2 exists but is reached from only one call site, dec_snmp_version/1, which bounds the version field to ten bytes; the request identifier, error status and index, generic and specific trap fields, engine boots and time, and every varbind value decoded by dec_value/1 all use the unbounded form. The decode runs before the PDU is processed, so no valid request is required beyond what the deployment demands to accept the message at all.
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 snmp from 4.25.1 before 5.18.2.1, from 5.19 before 5.20.2.2, and from 5.20.3 before 5.20.5. Whether OTP before OTP 17.0, corresponding to snmp before 4.25.1, is affected is unknown.
- Record
EEF-CVE-2026-70405- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N - Weakness
- CWE-1284
- Updated
- 2026-11-02
Show 6 moreShow less
OSVOESA-2026-4131
8.7
erlang security update
Erlang is a general-purpose programming language and runtime environment. Erlang has built-in support for concurrency, distribution and fault tolerance. Erlang is used in several large telecommunication systems from Ericsson.
Security Fix(es):
The Erlang/OTP httpc HTTP client does not enforce a limit on the total size of response headers received from a server. The max_header_size option defaults to nolimit, and httpc_response:parse_headers/6 accumulates every header into a list before the length check runs (which only fires after the terminating CRLF CRLF is received).
A malicious or compromised HTTP server can send an arbitrarily large number of headers, or headers with very large values, causing the client process to allocate unbounded memory until the system runs out of memory or the BEAM VM crashes. A proof-of-concept server sending 100,000 headers of roughly 4000 bytes each caused the client VM to allocate over 13 GB of memory in under 30 seconds.
Any application using httpc:request/4,5 to connect to untrusted servers is affected. No authentication is required: any server the client connects to (including via a redirect or man-in-the-middle) can trigger the exhaustion.
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 inets from 5.10 before 9.3.2.7, from 9.4 before 9.6.2.3, and from 9.7 before 9.7.2. Whether OTP before OTP 17.0, corresponding to inets before 5.10, is affected is unknown.(CVE-2026-55951)
Improper Validation of Specified Quantity in Input vulnerability in Erlang/OTP stdlib allows a remote attacker to degrade availability by supplying a URI whose port component is a very long run of digits.
uri_string:get_port/1 passes the port substring to binary_to_integer/1 with no length bound, catching only error:badarg, so a syntactically valid port of up to roughly 1.26 million digits converts successfully and costs the calling process hundreds of milliseconds of arbitrary-precision arithmetic. The conversion is reached from every authority-parsing path in uri_string:parse/1, including the host, registered-name, and IPv4 and IPv6 forms. parse/1 is the documented interface for parsing URIs, so any application that parses an attacker-supplied URI is exposed without further configuration. The conversion function is documented to accept integers of any size, so bounding the input is the caller's responsibility.
This issue affects OTP from OTP 21.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 stdlib from 3.5 before 6.2.2.5, from 7.0 before 7.3.0.2, and from 8.0 before 8.0.4.(CVE-2026-59696)
httpd has never implemented obs-fold (RFC 2616 §2.2 / RFC 7230 §3.2.4 header continuation lines). Every CRLF followed by a non-CRLF octet unconditionally starts a new header. This missing feature became a security concern as the understanding of HTTP request smuggling attacks evolved.
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 inets from 5.10 before 9.3.2.7, from 9.4 before 9.6.2.3, and from 9.7 before 9.7.2. Whether OTP before OTP 17.0, corresponding to inets before 5.10, is affected is unknown.(CVE-2026-66357)
Path Equivalence vulnerability in Erlang/OTP inets httpd allows a remote unauthenticated attacker to read files inside a mod_auth protected directory by prefixing the request path with an extra slash.
httpd_request:validate_uri/1 normalises the request URI with uri_string:normalize/1, which performs RFC 3986 dot-segment removal but does not collapse empty path segments, so a doubled slash survives. mod_alias:real_name/3 concatenates the document root with that URI, and mod_auth:secret_path/3 then decides whether the result lies inside a protected directory block by running the configured directory path as an unanchored…
- Record
OESA-2026-4131- CVSS 4.0
- 8.7 High
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 - Updated
- 2026-11-02
OSVOESA-2026-4132
8.7
erlang security update
Erlang is a general-purpose programming language and runtime environment. Erlang has built-in support for concurrency, distribution and fault tolerance. Erlang is used in several large telecommunication systems from Ericsson.
Security Fix(es):
The Erlang/OTP httpc HTTP client does not enforce a limit on the total size of response headers received from a server. The max_header_size option defaults to nolimit, and httpc_response:parse_headers/6 accumulates every header into a list before the length check runs (which only fires after the terminating CRLF CRLF is received).
A malicious or compromised HTTP server can send an arbitrarily large number of headers, or headers with very large values, causing the client process to allocate unbounded memory until the system runs out of memory or the BEAM VM crashes. A proof-of-concept server sending 100,000 headers of roughly 4000 bytes each caused the client VM to allocate over 13 GB of memory in under 30 seconds.
Any application using httpc:request/4,5 to connect to untrusted servers is affected. No authentication is required: any server the client connects to (including via a redirect or man-in-the-middle) can trigger the exhaustion.
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 inets from 5.10 before 9.3.2.7, from 9.4 before 9.6.2.3, and from 9.7 before 9.7.2. Whether OTP before OTP 17.0, corresponding to inets before 5.10, is affected is unknown.(CVE-2026-55951)
Improper Validation of Specified Quantity in Input vulnerability in Erlang/OTP stdlib allows a remote attacker to degrade availability by supplying a URI whose port component is a very long run of digits.
uri_string:get_port/1 passes the port substring to binary_to_integer/1 with no length bound, catching only error:badarg, so a syntactically valid port of up to roughly 1.26 million digits converts successfully and costs the calling process hundreds of milliseconds of arbitrary-precision arithmetic. The conversion is reached from every authority-parsing path in uri_string:parse/1, including the host, registered-name, and IPv4 and IPv6 forms. parse/1 is the documented interface for parsing URIs, so any application that parses an attacker-supplied URI is exposed without further configuration. The conversion function is documented to accept integers of any size, so bounding the input is the caller's responsibility.
This issue affects OTP from OTP 21.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 stdlib from 3.5 before 6.2.2.5, from 7.0 before 7.3.0.2, and from 8.0 before 8.0.4.(CVE-2026-59696)
httpd has never implemented obs-fold (RFC 2616 §2.2 / RFC 7230 §3.2.4 header continuation lines). Every CRLF followed by a non-CRLF octet unconditionally starts a new header. This missing feature became a security concern as the understanding of HTTP request smuggling attacks evolved.
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 inets from 5.10 before 9.3.2.7, from 9.4 before 9.6.2.3, and from 9.7 before 9.7.2. Whether OTP before OTP 17.0, corresponding to inets before 5.10, is affected is unknown.(CVE-2026-66357)
Path Equivalence vulnerability in Erlang/OTP inets httpd allows a remote unauthenticated attacker to read files inside a mod_auth protected directory by prefixing the request path with an extra slash.
httpd_request:validate_uri/1 normalises the request URI with uri_string:normalize/1, which performs RFC 3986 dot-segment removal but does not collapse empty path segments, so a doubled slash survives. mod_alias:real_name/3 concatenates the document root with that URI, and mod_auth:secret_path/3 then decides whether the result lies inside a protected directory block by running the configured directory path as an unanchored…
- Record
OESA-2026-4132- CVSS 4.0
- 8.7 High
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 - Updated
- 2026-11-02
OSVOESA-2026-4133
8.7
erlang security update
Erlang is a general-purpose programming language and runtime environment. Erlang has built-in support for concurrency, distribution and fault tolerance. Erlang is used in several large telecommunication systems from Ericsson.
Security Fix(es):
The Erlang/OTP httpc HTTP client does not enforce a limit on the total size of response headers received from a server. The max_header_size option defaults to nolimit, and httpc_response:parse_headers/6 accumulates every header into a list before the length check runs (which only fires after the terminating CRLF CRLF is received).
A malicious or compromised HTTP server can send an arbitrarily large number of headers, or headers with very large values, causing the client process to allocate unbounded memory until the system runs out of memory or the BEAM VM crashes. A proof-of-concept server sending 100,000 headers of roughly 4000 bytes each caused the client VM to allocate over 13 GB of memory in under 30 seconds.
Any application using httpc:request/4,5 to connect to untrusted servers is affected. No authentication is required: any server the client connects to (including via a redirect or man-in-the-middle) can trigger the exhaustion.
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 inets from 5.10 before 9.3.2.7, from 9.4 before 9.6.2.3, and from 9.7 before 9.7.2. Whether OTP before OTP 17.0, corresponding to inets before 5.10, is affected is unknown.(CVE-2026-55951)
Improper Validation of Specified Quantity in Input vulnerability in Erlang/OTP stdlib allows a remote attacker to degrade availability by supplying a URI whose port component is a very long run of digits.
uri_string:get_port/1 passes the port substring to binary_to_integer/1 with no length bound, catching only error:badarg, so a syntactically valid port of up to roughly 1.26 million digits converts successfully and costs the calling process hundreds of milliseconds of arbitrary-precision arithmetic. The conversion is reached from every authority-parsing path in uri_string:parse/1, including the host, registered-name, and IPv4 and IPv6 forms. parse/1 is the documented interface for parsing URIs, so any application that parses an attacker-supplied URI is exposed without further configuration. The conversion function is documented to accept integers of any size, so bounding the input is the caller's responsibility.
This issue affects OTP from OTP 21.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 stdlib from 3.5 before 6.2.2.5, from 7.0 before 7.3.0.2, and from 8.0 before 8.0.4.(CVE-2026-59696)
httpd has never implemented obs-fold (RFC 2616 §2.2 / RFC 7230 §3.2.4 header continuation lines). Every CRLF followed by a non-CRLF octet unconditionally starts a new header. This missing feature became a security concern as the understanding of HTTP request smuggling attacks evolved.
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 inets from 5.10 before 9.3.2.7, from 9.4 before 9.6.2.3, and from 9.7 before 9.7.2. Whether OTP before OTP 17.0, corresponding to inets before 5.10, is affected is unknown.(CVE-2026-66357)
Path Equivalence vulnerability in Erlang/OTP inets httpd allows a remote unauthenticated attacker to read files inside a mod_auth protected directory by prefixing the request path with an extra slash.
httpd_request:validate_uri/1 normalises the request URI with uri_string:normalize/1, which performs RFC 3986 dot-segment removal but does not collapse empty path segments, so a doubled slash survives. mod_alias:real_name/3 concatenates the document root with that URI, and mod_auth:secret_path/3 then decides whether the result lies inside a protected directory block by running the configured directory path as an unanchored…
- Record
OESA-2026-4133- CVSS 4.0
- 8.7 High
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 - Updated
- 2026-11-02
OSVRHSA-2026:63160
8.2
Red Hat Security Advisory: Red Hat Hardened Images RPMs bug fix and enhancement update
- Record
RHSA-2026:63160- CVSS 3.1
- 8.2 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-70405
6.3
Improper Validation of Specified Quantity in Input vulnerability in Erlang/OTP snmp allows a remote attacker to degrade availability by sending an SNMP message containing a BER INTEGER whose length field is arbitrarily large. snmp_pdus:dec_integer_notag/1 defaults its size limit to infinity, and do_dec_integer_notag/2 then accumulates the value across every declared byte with a recursive shift and bitwise or. Work grows superlinearly in the declared length because each operation acts on a progressively larger bignum. The size-limited variant dec_integer_notag/2 exists but is reached from only one call site, dec_snmp_version/1, which bounds the version field to ten bytes; the request identifier, error status and index, generic and specific trap fields, engine boots and time, and every varbind value decoded by dec_value/1 all use the unbounded form. The decode runs before the PDU is processed, so no valid request is required beyond what the deployment demands to accept the message at all. 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 snmp from 4.25.1 before 5.18.2.1, from 5.19 before 5.20.2.2, and from 5.20.3 before 5.20.5. Whether OTP before OTP 17.0, corresponding to snmp before 4.25.1, is affected is unknown.
- Record
UBUNTU-CVE-2026-70405- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N - Updated
- 2026-11-02
OSVAZL-98472 No score
CVE-2026-70405 affecting package erlang for versions less than 26.2.5.21-6
Improper Validation of Specified Quantity in Input vulnerability in Erlang/OTP snmp allows a remote attacker to degrade availability by sending an SNMP message containing a BER INTEGER whose length field is arbitrarily large.
snmp_pdus:dec_integer_notag/1 defaults its size limit to infinity, and do_dec_integer_notag/2 then accumulates the value across every declared byte with a recursive shift and bitwise or. Work grows superlinearly in the declared length because each operation acts on a progressively larger bignum. The size-limited variant dec_integer_notag/2 exists but is reached from only one call site, dec_snmp_version/1, which bounds the version field to ten bytes; the request identifier, error status and index, generic and specific trap fields, engine boots and time, and every varbind value decoded by dec_value/1 all use the unbounded form. The decode runs before the PDU is processed, so no valid request is required beyond what the deployment demands to accept the message at all.
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 snmp from 4.25.1 before 5.18.2.1, from 5.19 before 5.20.2.2, and from 5.20.3 before 5.20.5. Whether OTP before OTP 17.0, corresponding to snmp before 4.25.1, is affected is unknown.
- Record
AZL-98472- Updated
- 2026-11-05
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
erlangAzure Linux:3 |
before 26.2.5.21-6 | 26.2.5.21-6 |
erlangDebian:12 |
All versions, plus listed versions 1:25.2.3+dfsg-11:25.2.3+dfsg-1+deb12u11:25.2.3+dfsg-1+deb12u21:25.2.3+dfsg-1+deb12u31:25.2.3+dfsg-1+deb12u4 Show 45 moreShow less1:25.3.2.10+dfsg-11:25.3.2.10+dfsg-21:25.3.2.11+dfsg-11:25.3.2.12+dfsg-11:25.3.2.12+dfsg-21:25.3.2.12+dfsg-31:25.3.2.8+dfsg-11:26.0+dfsg-11:26.0.1+dfsg-11:26.0.2+dfsg-11:26.0~rc2+dfsg-11:26.0~rc3+dfsg-11:26.1.2+dfsg-11:26.2.1+dfsg-11:26.2.4+dfsg-11:27.0+dfsg-11:27.0.1+dfsg-11:27.0.1+dfsg-21:27.0.1+dfsg-31:27.0~rc3+dfsg-11:27.0~rc3+dfsg-21:27.0~rc3+dfsg-31:27.0~rc3+dfsg-41:27.1.2+dfsg-11:27.2+dfsg-11:27.2+dfsg-21:27.2+dfsg-3~exp11:27.2.1+dfsg-11:27.2.1+dfsg-21:27.2.2+dfsg-11:27.2.3+dfsg-11:27.2.4+dfsg-11:27.3+dfsg-11:27.3.1+dfsg-11:27.3.2+dfsg-11:27.3.3+dfsg-11:27.3.4+dfsg-11:27.3.4.1+dfsg-11:27.3.4.10+dfsg-11:27.3.4.11+dfsg-11:27.3.4.11+dfsg-21:27.3.4.11+dfsg-31:27.3.4.11+dfsg-41:27.3.4.11+dfsg-51:27.3.4.11+dfsg-6 |
None known |
erlangDebian:13 |
before 1:27.3.4.1+dfsg-1+deb13u4, plus listed versions 1:27.3.4.1+dfsg-11:27.3.4.1+dfsg-1+deb13u11:27.3.4.1+dfsg-1+deb13u21:27.3.4.1+dfsg-1+deb13u3 |
1:27.3.4.1+dfsg-1+deb13u4 |
erlangDebian:14 |
before 1:29.0.6+dfsg-1, plus listed versions 1:27.3.4.1+dfsg-11:27.3.4.10+dfsg-11:27.3.4.11+dfsg-11:27.3.4.11+dfsg-21:27.3.4.11+dfsg-3 Show 31 moreShow less1:27.3.4.11+dfsg-41:27.3.4.11+dfsg-51:27.3.4.11+dfsg-61:27.3.4.11+dfsg-71:27.3.4.12+dfsg-11:27.3.4.3+dfsg-11:27.3.4.4+dfsg-11:27.3.4.6+dfsg-11:27.3.4.8+dfsg-11:27.3.4.9+dfsg-11:28.0+dfsg-11:28.0.1+dfsg-11:28.0.2+dfsg-11:28.0.4+dfsg-11:28.1.1+dfsg-11:28.2+dfsg-11:28.3+dfsg-11:28.3.1+dfsg-11:29.0+dfsg-11:29.0+dfsg-21:29.0.1+dfsg-11:29.0.2+dfsg-11:29.0.3+dfsg-11:29.0.4+dfsg-11:29.0~rc1+dfsg-11:29.0~rc1+dfsg-21:29.0~rc2+dfsg-11:29.0~rc3+dfsg-11:29.0~rc3+dfsg-21:29.0~rc3+dfsg-31:29.0~rc3+dfsg-4 |
1:29.0.6+dfsg-1 |
erlangopenEuler:24.03-LTS-SP1 From an advisory covering 15 CVEs |
before 25.3.2.6-20.oe2403sp1 | 25.3.2.6-20.oe2403sp1 |
erlangopenEuler:24.03-LTS-SP3 From an advisory covering 15 CVEs |
before 25.3.2.6-20.oe2403sp3 | 25.3.2.6-20.oe2403sp3 |
erlangopenEuler:24.03-LTS-SP4 From an advisory covering 15 CVEs |
before 25.3.2.6-20.oe2403sp4 | 25.3.2.6-20.oe2403sp4 |
erlang27Red Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-asn1Red Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-common_testRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
Show 43 moreShow less
| Package | Affected | Fixed |
|---|---|---|
erlang27-compilerRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-cryptoRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-debuggerRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-dialyzerRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-diameterRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-edocRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-eldapRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-erl_interfaceRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-ertsRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-etRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-eunitRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-examplesRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-ftpRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-gdb-toolsRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-inetsRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-jinterfaceRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-kernelRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-megacoRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-mnesiaRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-observerRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-odbcRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-os_monRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-parsetoolsRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-public_keyRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-reltoolRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-runtime_toolsRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-saslRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-snmpRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-sshRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-sslRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-stdlibRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-syntax_toolsRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-tftpRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-toolsRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-wxRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlang27-xmerlRed Hat:hummingbird:1 From an advisory covering 12 CVEs |
before 0:27.3.4.17-1.hum1 | 0:27.3.4.17-1.hum1 |
erlangUbuntu:Pro:14.04:LTS |
before 1:16.b.3-dfsg-1ubuntu2.2+esm2, plus listed versions 1:16.b.1-dfsg-4ubuntu11:16.b.2-dfsg-1ubuntu11:16.b.2-dfsg-2ubuntu11:16.b.3-dfsg-1ubuntu11:16.b.3-dfsg-1ubuntu21:16.b.3-dfsg-1ubuntu2.11:16.b.3-dfsg-1ubuntu2.21:16.b.3-dfsg-1ubuntu2.2+esm1 |
1:16.b.3-dfsg-1ubuntu2.2+esm2 |
erlangUbuntu:Pro:16.04:LTS |
before 1:18.3-dfsg-1ubuntu3.1+esm3, plus listed versions 1:18.0-dfsg-1ubuntu11:18.0-dfsg-1ubuntu21:18.2-dfsg-2ubuntu11:18.3-dfsg-1ubuntu11:18.3-dfsg-1ubuntu2 Show 4 moreShow less1:18.3-dfsg-1ubuntu31:18.3-dfsg-1ubuntu3.11:18.3-dfsg-1ubuntu3.1+esm11:18.3-dfsg-1ubuntu3.1+esm2 |
1:18.3-dfsg-1ubuntu3.1+esm3 |
erlangUbuntu:Pro:18.04:LTS |
before 1:20.2.2+dfsg-1ubuntu2+esm3, plus listed versions 1:20.0.4+dfsg-1ubuntu11:20.1.2+dfsg-1ubuntu11:20.1.3+dfsg-1ubuntu11:20.1.4+dfsg-1ubuntu11:20.1.5+dfsg-1ubuntu1 Show 7 moreShow less1:20.1.6+dfsg-1ubuntu11:20.1.7+dfsg-1ubuntu11:20.2.1+dfsg-1ubuntu11:20.2.2+dfsg-1ubuntu11:20.2.2+dfsg-1ubuntu21:20.2.2+dfsg-1ubuntu2+esm11:20.2.2+dfsg-1ubuntu2+esm2 |
1:20.2.2+dfsg-1ubuntu2+esm3 |
erlangUbuntu:Pro:20.04:LTS |
before 1:22.2.7+dfsg-1ubuntu0.5+esm2, plus listed versions 1:22.0.7+dfsg-1build11:22.2+dfsg-11:22.2.1+dfsg-11:22.2.2+dfsg-11:22.2.3+dfsg-1 Show 8 moreShow less1:22.2.3+dfsg-21:22.2.4+dfsg-11:22.2.7+dfsg-11:22.2.7+dfsg-1ubuntu0.21:22.2.7+dfsg-1ubuntu0.31:22.2.7+dfsg-1ubuntu0.41:22.2.7+dfsg-1ubuntu0.51:22.2.7+dfsg-1ubuntu0.5+esm1 |
1:22.2.7+dfsg-1ubuntu0.5+esm2 |
erlangUbuntu:22.04:LTS |
before 1:24.2.1+dfsg-1ubuntu0.7, plus listed versions 1:23.2.6+dfsg-1build11:24.1.1+dfsg-11:24.1.4+dfsg-11:24.1.5+dfsg-11:24.1.5+dfsg-1ubuntu1 Show 8 moreShow less1:24.2+dfsg-11:24.2.1+dfsg-11:24.2.1+dfsg-1ubuntu0.11:24.2.1+dfsg-1ubuntu0.21:24.2.1+dfsg-1ubuntu0.31:24.2.1+dfsg-1ubuntu0.41:24.2.1+dfsg-1ubuntu0.51:24.2.1+dfsg-1ubuntu0.6 |
1:24.2.1+dfsg-1ubuntu0.7 |
erlangUbuntu:24.04:LTS |
before 1:25.3.2.8+dfsg-1ubuntu4.7, plus listed versions 1:25.2.3+dfsg-11:25.3.2.8+dfsg-11:25.3.2.8+dfsg-1ubuntu11:25.3.2.8+dfsg-1ubuntu31:25.3.2.8+dfsg-1ubuntu4 Show 6 moreShow less1:25.3.2.8+dfsg-1ubuntu4.11:25.3.2.8+dfsg-1ubuntu4.21:25.3.2.8+dfsg-1ubuntu4.31:25.3.2.8+dfsg-1ubuntu4.41:25.3.2.8+dfsg-1ubuntu4.51:25.3.2.8+dfsg-1ubuntu4.6 |
1:25.3.2.8+dfsg-1ubuntu4.7 |
erlangUbuntu:26.04:LTS |
before 1:27.3.4.6+dfsg-1ubuntu0.1, plus listed versions 1:27.3.4.1+dfsg-1build11:27.3.4.3+dfsg-11:27.3.4.4+dfsg-11:27.3.4.6+dfsg-1 |
1:27.3.4.6+dfsg-1ubuntu0.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected | ||
| facts | OSV | |
| first indexed | CVE List, EUVD, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-70405 is a medium vulnerability (CVSS 6.3) in Erlang Otp, published September 1, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.71%, the 53rd percentile. Fixed in erlang 26.2.5.21-6.
References
github.com/erlang/otp/security/advisories/GHSA-q7cq-pfgf-5hr7
cna.erlef.org/cves/CVE-2026-70405.html
osv.dev/vulnerability/EEF-CVE-2026-70405
erlang.org/doc/system/versions.html
github.com/erlang/otp/commit/aba0fe8c2d700bf4ac94607cf7f00e53bbe4042d
github.com/erlang/otp/commit/e3be1cfe9f6cedd0cd20d9905e05601dfb31c8aa
Show 124 moreShow less
nvd.nist.gov/vuln/detail/CVE-2026-70405
github.com
github.com/CVEProject/cvelistV5/tree/main/cves/2026/70xxx/CVE-2026-70405.json
github.com/erlang/otp
security-tracker.debian.org/tracker/CVE-2026-70405
openeuler.org/zh/security/security-bulletins/detail?id=openEuler-SA-2026-4131
nvd.nist.gov/vuln/detail/CVE-2026-55951
nvd.nist.gov/vuln/detail/CVE-2026-59696
nvd.nist.gov/vuln/detail/CVE-2026-66357
nvd.nist.gov/vuln/detail/CVE-2026-66835
nvd.nist.gov/vuln/detail/CVE-2026-69664
nvd.nist.gov/vuln/detail/CVE-2026-70399
nvd.nist.gov/vuln/detail/CVE-2026-70409
nvd.nist.gov/vuln/detail/CVE-2026-71380
nvd.nist.gov/vuln/detail/CVE-2026-71562
nvd.nist.gov/vuln/detail/CVE-2026-73270
nvd.nist.gov/vuln/detail/CVE-2026-73276
nvd.nist.gov/vuln/detail/CVE-2026-74835
nvd.nist.gov/vuln/detail/CVE-2026-74994
nvd.nist.gov/vuln/detail/CVE-2026-75538
openeuler.org/zh/security/security-bulletins/detail?id=openEuler-SA-2026-4132
openeuler.org/zh/security/security-bulletins/detail?id=openEuler-SA-2026-4133
access.redhat.com/errata/RHSA-2026:63160
images.redhat.com
access.redhat.com/security/cve/CVE-2026-75538
access.redhat.com/security/updates/classification
access.redhat.com/security/cve/CVE-2026-70405
access.redhat.com/security/cve/CVE-2026-55952
access.redhat.com/security/cve/CVE-2026-54891
access.redhat.com/security/cve/CVE-2026-54886
access.redhat.com/security/cve/CVE-2026-48860
access.redhat.com/security/cve/CVE-2026-48858
access.redhat.com/security/cve/CVE-2026-48855
access.redhat.com/security/cve/CVE-2026-42791
access.redhat.com/security/cve/CVE-2026-42790
access.redhat.com/security/cve/CVE-2026-42789
access.redhat.com/security/cve/CVE-2026-49759
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_63160.json
bugzilla.redhat.com/show_bug.cgi?id=2482093
cve.org/CVERecord?id=CVE-2026-42789
nvd.nist.gov/vuln/detail/CVE-2026-42789
cna.erlef.org/cves/CVE-2026-42789.html
github.com/erlang/otp/commit/471cd2f664300a95353c467873800bbe706005db
github.com/erlang/otp/commit/59c8d824386b2eb1614ff9340624843ef6aca0fd
github.com/erlang/otp/security/advisories/GHSA-c99q-jmpx-v8qq
osv.dev/vulnerability/EEF-CVE-2026-42789
bugzilla.redhat.com/show_bug.cgi?id=2482286
cve.org/CVERecord?id=CVE-2026-42790
nvd.nist.gov/vuln/detail/CVE-2026-42790
cna.erlef.org/cves/CVE-2026-42790.html
github.com/erlang/otp/commit/0769050c69d73762672b0db1347b6993a5b31759
github.com/erlang/otp/commit/21abed64eb2026b5f82f432709e4e932f9be389a
github.com/erlang/otp/commit/fb67c6d1836f51105a96d8b769e71e4215a79457
github.com/erlang/otp/security/advisories/GHSA-22cw-4ph4-6447
osv.dev/vulnerability/EEF-CVE-2026-42790
bugzilla.redhat.com/show_bug.cgi?id=2481950
cve.org/CVERecord?id=CVE-2026-42791
nvd.nist.gov/vuln/detail/CVE-2026-42791
cna.erlef.org/cves/CVE-2026-42791.html
github.com/erlang/otp/commit/7995f1fdaee3da569bb810358ce0f546471d169b
github.com/erlang/otp/commit/b3870e02405c709a872b01ba6086065620cdfe76
github.com/erlang/otp/security/advisories/GHSA-cjxj-wj6x-3fff
osv.dev/vulnerability/EEF-CVE-2026-42791
bugzilla.redhat.com/show_bug.cgi?id=2487603
cve.org/CVERecord?id=CVE-2026-48855
nvd.nist.gov/vuln/detail/CVE-2026-48855
cna.erlef.org/cves/CVE-2026-48855.html
github.com/erlang/otp/commit/8f4224a0d2676b0653d2c71a889a956e8c2c62d6
github.com/erlang/otp/security/advisories/GHSA-pv7g-pjrq-x2fh
osv.dev/vulnerability/EEF-CVE-2026-48855
bugzilla.redhat.com/show_bug.cgi?id=2487593
cve.org/CVERecord?id=CVE-2026-48858
nvd.nist.gov/vuln/detail/CVE-2026-48858
cna.erlef.org/cves/CVE-2026-48858.html
github.com/erlang/otp/commit/2691a806231ffd0490a8a9e20500dec0c7e73727
github.com/erlang/otp/commit/521bcfa24407ee8cb5614823cf905c37ea3aa605
github.com/erlang/otp/security/advisories/GHSA-24cv-hwgr-37fq
osv.dev/vulnerability/EEF-CVE-2026-48858
bugzilla.redhat.com/show_bug.cgi?id=2487597
cve.org/CVERecord?id=CVE-2026-48860
nvd.nist.gov/vuln/detail/CVE-2026-48860
cna.erlef.org/cves/CVE-2026-48860.html
github.com/erlang/otp/commit/0209a6df65d605552b378273027b3968b35f26b4
github.com/erlang/otp/security/advisories/GHSA-gp7x-mfv6-52cv
osv.dev/vulnerability/EEF-CVE-2026-48860
bugzilla.redhat.com/show_bug.cgi?id=2487607
cve.org/CVERecord?id=CVE-2026-49759
nvd.nist.gov/vuln/detail/CVE-2026-49759
cna.erlef.org/cves/CVE-2026-49759.html
github.com/erlang/otp/commit/3983d495284331c121f600a80bac9fcf4e16381e
github.com/erlang/otp/security/advisories/GHSA-6f4f-chj5-5g97
osv.dev/vulnerability/EEF-CVE-2026-49759
bugzilla.redhat.com/show_bug.cgi?id=2496623
cve.org/CVERecord?id=CVE-2026-54886
nvd.nist.gov/vuln/detail/CVE-2026-54886
cna.erlef.org/cves/CVE-2026-54886.html
github.com/erlang/otp/commit/eaf9550b8ad4738b81149d3f617102d980c6dd18
github.com/erlang/otp/security/advisories/GHSA-7wp4-pc27-2vj9
osv.dev/vulnerability/EEF-CVE-2026-54886
bugzilla.redhat.com/show_bug.cgi?id=2496625
cve.org/CVERecord?id=CVE-2026-54891
nvd.nist.gov/vuln/detail/CVE-2026-54891
cna.erlef.org/cves/CVE-2026-54891.html
github.com/erlang/otp/commit/07d2d0e93f6aaf7652a81e8df075fc1728da5e96
github.com/erlang/otp/security/advisories/GHSA-gf6r-99xw-6qg6
osv.dev/vulnerability/EEF-CVE-2026-54891
bugzilla.redhat.com/show_bug.cgi?id=2496626
cve.org/CVERecord?id=CVE-2026-55952
nvd.nist.gov/vuln/detail/CVE-2026-55952
cna.erlef.org/cves/CVE-2026-55952.html
github.com/erlang/otp/commit/2c3e599797644310e5d4aa39c7193420e59dadff
github.com/erlang/otp/commit/9b5437c72fa3403a75c1aba28e5c532bc191c662
github.com/erlang/otp/commit/e77823e6d980b2ec0b4fe4ea3f2d098ca239e3ce
github.com/erlang/otp/security/advisories/GHSA-8c57-44c9-pc59
osv.dev/vulnerability/EEF-CVE-2026-55952
bugzilla.redhat.com/show_bug.cgi?id=2526850
cve.org/CVERecord?id=CVE-2026-70405
bugzilla.redhat.com/show_bug.cgi?id=2526856
cve.org/CVERecord?id=CVE-2026-75538
cna.erlef.org/cves/CVE-2026-75538.html
github.com/erlang/otp/commit/08e8efdba8500d2d6f54c6b1de1492b228017c9b
github.com/erlang/otp/security/advisories/GHSA-8m6r-2pj2-25pm
osv.dev/vulnerability/EEF-CVE-2026-75538
ubuntu.com/security/CVE-2026-70405
Left out here: 30 versions and the rest of 3 source descriptions. The JSON record has them.