Analysis
Common Weaknesses
The most common CWE weakness classes across Erlang ecosystem CVEs
The chart below shows the most common weaknesses found in vulnerabilities across the Erlang ecosystem. Understanding which weakness types recur most often helps library authors and application developers focus their security efforts where they matter most.
Each CVE is mapped to its CWE (Common Weakness Enumeration) using the MITRE CWE hierarchy. A slice's count includes every CVE reachable anywhere below it in the hierarchy, not just CVEs assigned that exact CWE — click a slice or legend row to drill into its direct children and see the same breakdown one level down.
Improper Input Validation CWE-20 CWE-20 at MITRE
The product receives input or data, but it does not validate or incorrectly validates that the input has the properties that are required to process the data safely and correctly.
CVEs
CVEs for Improper Input Validation CWE-20
| Summary | Publication | CVE ID | Published |
|---|---|---|---|
| mpp Tempo keys its pre-broadcast dedup reserve on the caller-supplied transaction encoding, so a re-encoded signed transaction reserves a second slot | CVE-2026-88255 | 2026-09-16 | |
| Unbounded EIP-7702 authorization list in mpp Tempo fee-payer sponsorship inflates gas cost and sponsors account delegation | CVE-2026-82750 | 2026-09-06 | |
| Unbounded key authorization in mpp Tempo fee-payer sponsorship inflates gas cost and sponsors access-key provisioning | CVE-2026-82751 | 2026-09-06 | |
| Ash string length constraints count graphemes, so a combining-mark string of any size passes max_length | CVE-2026-82752 | 2026-09-05 | |
| eldap does not bound the port component of a referral URL before integer conversion |
Erlang
pkg:otp/eldap
|
CVE-2026-70409 | 2026-09-01 |
| snmp BER INTEGER decoder applies no size limit to attacker-supplied integer fields |
Erlang
pkg:otp/snmp
|
CVE-2026-70405 | 2026-09-01 |
| inets, httpd: Authentication Bypass via Directory Namespace Collapse in httpd mod_auth |
Erlang
pkg:otp/inets
|
CVE-2026-74994 | 2026-09-01 |
| uri_string does not bound the port component of a URI before integer conversion |
Erlang
pkg:otp/stdlib
|
CVE-2026-59696 | 2026-09-01 |
| httpc does not bound server-supplied numeric header values before integer conversion |
Erlang
pkg:otp/inets
|
CVE-2026-71562 | 2026-09-01 |
| Ash.Type.Union with :map_with_tag does not force the tag on dump, enabling tag confusion | CVE-2026-82741 | 2026-09-01 | |
| Ash.Type ignores outer array constraints on nested {:array, {:array, type}} inputs | CVE-2026-82740 | 2026-09-01 | |
| Ash.Type.UUIDv7 accepts non-v7 UUIDs that then fail to load, causing persistent denial of service | CVE-2026-82738 | 2026-09-01 | |
| Ash.Type.CiString validates length and match constraints before case folding, allowing constraint bypass | CVE-2026-82736 | 2026-09-01 | |
| Non-finite Infinity/NaN decimal values bypass bounds constraints in Ash.Type.Decimal | CVE-2026-82734 | 2026-09-01 | |
| Declared argument constraints not enforced on AshTypescript typed controller routes | CVE-2026-82732 | 2026-09-01 | |
| Unhandled KeyError in AshGraphql relay node resolution crashes queries via an unknown type segment | CVE-2026-81633 | 2026-08-30 | |
| BEAM VM crash via integer underflow in binary_to_term BIT_BINARY_EXT decoding |
Erlang / erts
|
CVE-2026-54890 | 2026-07-27 |
| Missing gas_limit validation in mpp Tempo fee-payer enables wallet drain | CVE-2026-59252 | 2026-07-17 | |
| Unbounded access list in mpp Tempo fee-payer inflates gas cost per payment | CVE-2026-59694 | 2026-07-17 | |
| Unbounded max_fee_per_gas in mpp Tempo fee-payer enables single-request wallet drain | CVE-2026-59695 | 2026-07-17 | |
| TLS 1.3 server denial of service via malformed ClientHello pre-shared key extension |
Erlang / ssl
|
CVE-2026-55952 | 2026-07-02 |