{"kind": "product", "path": "vulns/erlang", "name": "erlang", "product": "erlang", "items": [{"id": "CVE-2026-96596", "noindex": false, "published": "2026-10-14T16:56:18.530Z", "modified": "2026-10-22T07:08:09.364Z", "cvss": 5.9, "cvss_vector": "CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N", "severity": "medium", "epss": 0.00213, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-96596", "title": "erl_tar:extract/2 loops forever on a GNU sparse member with a trailing hole", "description": "Loop with Unreachable Exit Condition ('Infinite Loop') vulnerability in Erlang OTP stdlib (erl_tar module), hexpm hex_core (hex_erl_tar module), hexpm hex (mix_hex_erl_tar module) and erlang rebar3 (r3_hex_erl_tar module) allows an attacker who supplies a tar archive to cause a denial of service via a crafted GNU sparse member.\n\nWhen erl_tar:extract/1,2 writes a member to disk, erl_tar:stream_to_file_loop/3 reads it in chunks of 65536 bytes by default. For a GNU sparse member whose sparse map ends before its real size, erl_tar:do_sparse_read/3 matches its trailing-hole clause before its zero-length clause. After the chunk is used up, the trai", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-phm5-m6cj-5382", "https://cna.erlef.org/cves/CVE-2026-96596.html", "https://osv.dev/vulnerability/EEF-CVE-2026-96596"], "fixes": ["29.1.2", "8.1.1"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-105236", "noindex": false, "published": "2026-10-14T16:55:51.495Z", "modified": "2026-10-16T20:09:49.566Z", "cvss": 6.3, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N", "severity": "medium", "epss": 0.00357, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-105236", "title": "TLS 1.2 session resumption in ssl crosses SNI virtual-host client-certificate trust boundaries", "description": "Improper Certificate Validation vulnerability in the ssl application in Erlang/OTP allows a client that holds a certificate trusted by one SNI virtual host to authenticate to a second SNI virtual host on the same listener by resuming its TLS 1.2 session there.\n\nA server that serves several SNI names from one listen socket through sni_fun or sni_hosts keeps one pre-TLS 1.3 session cache per listener and does not bind a cached session to the SNI name or client trust policy that established it. When an SNI option set switches to verify_peer without naming reuse_sessions, ssl_config:update_options/3 inherits the base listener's reuse_sessions val", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-2g23-cgjh-34gq", "https://cna.erlef.org/cves/CVE-2026-105236.html", "https://osv.dev/vulnerability/EEF-CVE-2026-105236"], "fixes": ["11.2.12.14", "27.3.4.19"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-94200", "noindex": false, "published": "2026-10-14T16:55:23.328Z", "modified": "2026-10-16T20:09:04.559Z", "cvss": 8.2, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N", "severity": "high", "epss": 0.00461, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-94200", "title": "TLS 1.3 client ticket store crashed by NewSessionTicket with empty early_data extension in ssl", "description": "Improper Validation of Consistency within Input vulnerability in Erlang OTP ssl (tls_handshake_1_3, ssl_handshake and tls_client_ticket_store modules) allows a malicious TLS 1.3 server to cause a denial of service of the ssl application on the client node.\n\nThe TLS 1.3 client decodes the extensions of a NewSessionTicket message as if they came from EncryptedExtensions. It therefore accepts a 0-length early_data extension, a form that is only valid in ClientHello and EncryptedExtensions. With {session_tickets, auto}, the client stores the ticket in the node-global tls_client_ticket_store. On the next automatic resumption, tls_handshake_1_3:get", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-m5mh-q53w-67jq", "https://cna.erlef.org/cves/CVE-2026-94200.html", "https://osv.dev/vulnerability/EEF-CVE-2026-94200"], "fixes": ["11.2.12.14", "27.3.4.19"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-65634", "noindex": false, "published": "2026-09-22T08:49:24.743Z", "modified": "2026-09-24T20:06:38.007Z", "cvss": 8.2, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N", "severity": "high", "epss": 0.00266, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-65634", "title": "Superlinear CPU denial of service in Erlang/OTP ASN.1 OBJECT IDENTIFIER decoder", "description": "Inefficient algorithmic complexity in the Erlang/OTP asn1 OBJECT IDENTIFIER decoder allows a remote unauthenticated attacker to cause denial of service by sending a crafted OID during the TLS handshake.\n\nThe BER OID decoder asn1rtt_ber:dec_subidentifiers/3 in lib/asn1/src/asn1rtt_ber.erl and the equivalent PER helper asn1rtt_per_common:dec_subidentifiers/3 in lib/asn1/src/asn1rtt_per_common.erl accumulate a base-128 subidentifier into an unbounded integer using (Av bsl 7) + H per continuation byte. Each shift and addition on the growing accumulator is linear in the number of bits already accumulated, giving quadratic total work in the size of", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-qghx-23m5-r55m", "https://cna.erlef.org/cves/CVE-2026-65634.html", "https://osv.dev/vulnerability/EEF-CVE-2026-65634"], "fixes": ["27.3.4.18", "5.3.4.3"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-68956", "noindex": false, "published": "2026-09-22T08:49:21.760Z", "modified": "2026-09-24T20:07:42.062Z", "cvss": 7.1, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N", "severity": "high", "epss": 0.00378, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-68956", "title": "SSH daemon allocates unbounded idle session channels, bypassing max_channels", "description": "Allocation of Resources Without Limits or Throttling vulnerability in Erlang/OTP ssh allows an authenticated remote attacker to exhaust node memory by repeatedly opening session channels that are never assigned a handler.\n\nThe \"session\" clause of ssh_connection:handle_msg/4 checks only minimal_remote_max_packet_size before calling setup_session/5, which unconditionally builds a #channel{} record and stores it in the ETS channel cache. The max_channels daemon option is consulted only by ssh_channel_sup:max_num_channels_not_exceeded/2, which counts supervisor children, so a channel that never gets a shell, exec, or subsystem handler is invisibl", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-qhcm-px9c-rvfh", "https://cna.erlef.org/cves/CVE-2026-68956.html", "https://osv.dev/vulnerability/EEF-CVE-2026-68956"], "fixes": ["27.3.4.18", "5.2.11.13"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-89422", "noindex": false, "published": "2026-09-22T08:49:16.171Z", "modified": "2026-09-22T13:08:15.912Z", "cvss": 9.3, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N", "severity": "critical", "epss": 0.0046, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-89422", "title": "TLS 1.3 client skips server authentication when ServerHello carries an unsolicited pre_shared_key extension", "description": "Key Exchange without Entity Authentication vulnerability in Erlang/OTP ssl allows a peer that answers a TLS 1.3 client connection to impersonate the intended server. A pre_shared_key extension in the ServerHello that the client never offered causes the client to complete the handshake without validating the server's certificate, so ssl:connect returns {ok, Socket} against a peer holding no certificate, no private key and no prior session.\n\ntls_client_connection_1_3:handle_server_hello/2 passes the received extension to tls_gen_connection_1_3:handle_resumption/2, which sets resumption = true on its mere presence without checking that the clien", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-rgxr-4g4w-j875", "https://cna.erlef.org/cves/CVE-2026-89422.html", "https://osv.dev/vulnerability/EEF-CVE-2026-89422"], "fixes": ["11.2.12.13", "27.3.4.18"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-69664", "noindex": false, "published": "2026-09-01T14:59:03.512Z", "modified": "2026-09-22T09:10:07.550Z", "cvss": 8.7, "cvss_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", "severity": "high", "epss": 0.00949, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-69664", "title": "httpd parks a request worker indefinitely on a malformed chunk size sent after the headers", "description": "Missing Release of Resource after Effective Lifetime vulnerability in Erlang/OTP inets httpd allows an unauthenticated remote attacker to cause denial of service by sending a request with a chunked body whose chunk-size line is not a hexadecimal number. The worker serving the connection is never released and no timeout reclaims it, so repeating the request across connections occupies every available worker and denies service to legitimate clients. No authentication is required and the default configuration is affected.\n\nThe chunk-size line must arrive in a write separate from the headers. When the body accompanies the headers, httpd_request_h", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-mr35-8h7w-w3gq", "https://cna.erlef.org/cves/CVE-2026-69664.html", "https://osv.dev/vulnerability/EEF-CVE-2026-69664"], "fixes": ["27.3.4.17", "9.3.2.7"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-70409", "noindex": false, "published": "2026-09-01T14:51:00.770Z", "modified": "2026-09-08T01:09:09.018Z", "cvss": 6.3, "cvss_vector": "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", "severity": "medium", "epss": 0.00577, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-70409", "title": "eldap does not bound the port component of a referral URL before integer conversion", "description": "Improper Validation of Specified Quantity in Input vulnerability in Erlang/OTP eldap allows a malicious or compromised LDAP server to degrade availability by returning a referral URL whose port component is a very long run of digits.\n\neldap:parse_port/2 passes the port substring straight to list_to_integer/1 with no length bound. The surrounding try ... catch only rejects a value that fails to parse, so a syntactically valid port of up to roughly 1.26 million digits converts successfully and costs the caller hundreds of milliseconds of arbitrary-precision arithmetic per referral. The conversion function itself is documented to accept integers", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-9vgh-c8cm-m9p4", "https://cna.erlef.org/cves/CVE-2026-70409.html", "https://osv.dev/vulnerability/EEF-CVE-2026-70409"], "fixes": ["1.2.14.2", "1.2.16.1", "1.3.1", "27.3.4.17", "28.5.0.6", "29.0.6"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-70405", "noindex": false, "published": "2026-09-01T14:50:34.263Z", "modified": "2026-09-08T01:08:55.059Z", "cvss": 6.3, "cvss_vector": "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", "severity": "medium", "epss": 0.0071, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-70405", "title": "snmp BER INTEGER decoder applies no size limit to attacker-supplied integer fields", "description": "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.\n\nsnmp_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 t", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-q7cq-pfgf-5hr7", "https://cna.erlef.org/cves/CVE-2026-70405.html", "https://osv.dev/vulnerability/EEF-CVE-2026-70405"], "fixes": ["27.3.4.17", "28.5.0.6", "29.0.6", "5.18.2.1", "5.20.2.2", "5.20.5"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-66835", "noindex": false, "published": "2026-09-01T14:49:47.805Z", "modified": "2026-09-08T01:08:16.964Z", "cvss": 8.2, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N", "severity": "high", "epss": 0.00973, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-66835", "title": "httpd mod_auth directory protection bypassed by a doubled slash in the request path", "description": "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.\n\nhttpd_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 regular expression aga", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-r4vv-vc2c-2fw6", "https://cna.erlef.org/cves/CVE-2026-66835.html", "https://osv.dev/vulnerability/EEF-CVE-2026-66835"], "fixes": ["27.3.4.17", "28.5.0.6", "29.0.6", "9.3.2.7", "9.6.2.3", "9.7.2"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-73270", "noindex": false, "published": "2026-09-01T14:48:53.200Z", "modified": "2026-09-08T01:09:49.755Z", "cvss": 8.2, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N", "severity": "high", "epss": 0.00927, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-73270", "title": "httpd mod_auth directory protection bypassed by request path casing on case-insensitive filesystems", "description": "Improper Handling of Case Sensitivity vulnerability in Erlang/OTP inets httpd allows a remote unauthenticated attacker to read files inside a mod_auth protected directory by requesting them with different casing, on deployments whose filesystem is case-insensitive.\n\nmod_auth:secret_path/3 decides whether a resolved filesystem path lies inside a protected directory block by running the configured directory path through re:run/3 without the caseless option. A request for /secret/file against a directory configured as /Secret therefore does not match, so the request is treated as unprotected and no authentication challenge is issued, while the f", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-mh78-93cr-jx8f", "https://cna.erlef.org/cves/CVE-2026-73270.html", "https://osv.dev/vulnerability/EEF-CVE-2026-73270"], "fixes": ["27.3.4.17", "28.5.0.6", "29.0.6", "9.3.2.7", "9.6.2.3", "9.7.2"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-75538", "noindex": false, "published": "2026-09-01T14:48:26.309Z", "modified": "2026-09-08T01:10:53.139Z", "cvss": 8.2, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N", "severity": "high", "epss": 0.00854, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-75538", "title": "A Signed Length Overflow in Erlang/OTP's inet TCP Driver Overflows the Receive Buffer Into BEAM VM Memory From an Unauthenticated Peer", "description": "An attacker that connects to an open Erlang TCP port that uses the inet driver with {packet,4} mode can use a signed overflow in an incorrect packet length calculation to overflow the receive buffer into the VM allocator area and beyond up to about 2 GB.\n\nThis would easily trash the allocated block's allocator metadata footer, and the next block, if any, and most likely cause the BEAM VM to crash. Utilizing this with precision enough to achieve Remote Code Execution would be extremely unfeasible.\n\nThis 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", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-8m6r-2pj2-25pm", "https://cna.erlef.org/cves/CVE-2026-75538.html", "https://osv.dev/vulnerability/EEF-CVE-2026-75538"], "fixes": ["15.2.7.13", "16.4.0.6", "17.0.6", "27.3.4.17", "28.5.0.6", "29.0.6"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-74994", "noindex": false, "published": "2026-09-01T14:45:57.537Z", "modified": "2026-09-08T01:10:39.103Z", "cvss": 6, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N", "severity": "medium", "epss": 0.00633, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-74994", "title": "inets, httpd: Authentication Bypass via Directory Namespace Collapse in httpd mod_auth", "description": "The mod_auth module in OTP's inets httpd server, when configured with dets or mnesia authentication backends and multiple directory configuration blocks, collapses all directory blocks into a single shared user/group namespace. A user added to one protected directory is accepted as valid for all other protected directories on the same server instance.\n\nThis 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", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-c3cq-q8x6-547g", "https://cna.erlef.org/cves/CVE-2026-74994.html", "https://osv.dev/vulnerability/EEF-CVE-2026-74994"], "fixes": ["27.3.4.17", "28.5.0.6", "29.0.6", "9.3.2.7", "9.6.2.3", "9.7.2"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-74835", "noindex": false, "published": "2026-09-01T14:45:16.377Z", "modified": "2026-09-08T01:10:27.102Z", "cvss": 8.7, "cvss_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", "severity": "high", "epss": 0.00577, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-74835", "title": "inets,httpd: Memory Exhaustion via Unenforced max_body_size During Chunked Body Reception", "description": "The inets application HTTP server httpd fails to enforce a configured body-size limit on chunked request.\n\nThis 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.", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-8qrh-x566-5xv5", "https://cna.erlef.org/cves/CVE-2026-74835.html", "https://osv.dev/vulnerability/EEF-CVE-2026-74835"], "fixes": ["27.3.4.17", "28.5.0.6", "29.0.6", "9.3.2.7", "9.6.2.3", "9.7.2"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-73812", "noindex": false, "published": "2026-09-01T14:42:42.374Z", "modified": "2026-09-08T01:10:14.000Z", "cvss": 8.3, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N", "severity": "high", "epss": 0.00524, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-73812", "title": "inets, httpd: HTTP Request Smuggling via Transfer-Encoding and Content-Length", "description": "httpd function check_header/3 rejects duplicate Content-Length (per CVE-2026-23941) but never checks for the TE+CL co-presence that RFC 9112 §6.3 identifies as a probable smuggling attempt. handle_body/3 frames by chunked and silently discards Content-Length. A CL-preferring front-end paired with chunked-preferring inets creates a classic CL.TE front-end/back-end desync.\n\nThis 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 ", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-7j6m-4ffg-hg46", "https://cna.erlef.org/cves/CVE-2026-73812.html", "https://osv.dev/vulnerability/EEF-CVE-2026-73812"], "fixes": ["27.3.4.17", "28.5.0.6", "29.0.6", "9.3.2.7", "9.6.2.3", "9.7.2"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-73276", "noindex": false, "published": "2026-09-01T14:41:24.565Z", "modified": "2026-09-08T01:10:02.081Z", "cvss": 8.3, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N", "severity": "high", "epss": 0.00577, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-73276", "title": "inets, httpd: HTTP Request Smuggling via Whitespace-Before-Colon Header Dropping i", "description": "Gracefulness code ignored cases that should be rejected, resulting in possible HTTP Request Smuggling opportunities.\n\nThis issue affects OTP from OTP 22.2 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 7.1.2 before 9.3.2.7, from 9.4 before 9.6.2.3, and from 9.7 before 9.7.2.", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-6v7q-jwgh-cx8p", "https://cna.erlef.org/cves/CVE-2026-73276.html", "https://osv.dev/vulnerability/EEF-CVE-2026-73276"], "fixes": ["27.3.4.17", "28.5.0.6", "29.0.6", "9.3.2.7", "9.6.2.3", "9.7.2"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-66357", "noindex": false, "published": "2026-09-01T14:40:50.526Z", "modified": "2026-09-08T01:08:00.943Z", "cvss": 8.3, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:H/VA:N/SC:N/SI:L/SA:N", "severity": "high", "epss": 0.00577, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-66357", "title": "inets,httpd:HTTP Request Smuggling via obs-fold Header Continuation", "description": "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.\n\nThis 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.", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-qh2f-33hj-37qf", "https://cna.erlef.org/cves/CVE-2026-66357.html", "https://osv.dev/vulnerability/EEF-CVE-2026-66357"], "fixes": ["27.3.4.17", "28.5.0.6", "29.0.6", "9.3.2.7", "9.6.2.3", "9.7.2"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-59696", "noindex": false, "published": "2026-09-01T14:37:33.697Z", "modified": "2026-09-08T01:07:47.936Z", "cvss": 6.9, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N", "severity": "medium", "epss": 0.0071, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-59696", "title": "uri_string does not bound the port component of a URI before integer conversion", "description": "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.\n\nuri_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.", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-8qw4-2chm-mvj2", "https://cna.erlef.org/cves/CVE-2026-59696.html", "https://osv.dev/vulnerability/EEF-CVE-2026-59696"], "fixes": ["27.3.4.17", "28.5.0.6", "29.0.6", "6.2.2.5", "7.3.0.2", "8.0.4"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-55951", "noindex": false, "published": "2026-09-01T14:37:02.650Z", "modified": "2026-09-08T01:06:43.872Z", "cvss": 8.2, "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N", "severity": "high", "epss": 0.00694, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-55951", "title": "httpc memory exhaustion via unbounded response header accumulation", "description": "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).\n\nA 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 ", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-f9fw-mg7q-4g3x", "https://cna.erlef.org/cves/CVE-2026-55951.html", "https://osv.dev/vulnerability/EEF-CVE-2026-55951"], "fixes": ["27.3.4.17", "28.5.0.6", "29.0.6", "9.3.2.7", "9.6.2.3", "9.7.2"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}, {"id": "CVE-2026-71380", "noindex": false, "published": "2026-09-01T14:35:31.192Z", "modified": "2026-09-08T01:09:23.481Z", "cvss": 8.7, "cvss_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", "severity": "high", "epss": 0.00673, "kev": false, "exploits": [], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}], "path": "vulns/cve-2026-71380", "title": "httpd applies no timeout while receiving a request body, parking a worker on a stalled client", "description": "Missing Release of Resource after Effective Lifetime vulnerability in Erlang/OTP inets httpd allows an unauthenticated remote attacker to cause denial of service by sending valid request headers with a large Content-Length and then stalling before the body is complete.\n\nhttpd_request_handler:handle_info/2 cancels the request timeout as soon as a parse step succeeds, which includes the headers, and the clause that handles a decoder asking for more data re-arms the socket with {active, once} without setting any further timer. httpd_request:whole_body/2 returns such a continuation whenever the bytes received are fewer than the announced Content-", "references": ["https://github.com/erlang/otp/security/advisories/GHSA-5vp4-58hc-h8cc", "https://cna.erlef.org/cves/CVE-2026-71380.html", "https://osv.dev/vulnerability/EEF-CVE-2026-71380"], "fixes": ["27.3.4.17", "28.5.0.6", "29.0.6", "9.3.2.7", "9.6.2.3", "9.7.2"], "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}, {"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}]}], "total": 64, "unknown_count": 0, "release_unconfirmed": false, "page": 1, "pages": 4, "filtered": false, "noindex": false, "filters": {}, "page_size": 20, "products": [{"name": "erlang", "path": "vulns/erlang", "ecosystem": ""}], "stacks": [{"name": "system", "path": "vulns/stack/system", "slug": "system"}, {"name": "web", "path": "vulns/stack/web", "slug": "web"}, {"name": "php", "path": "vulns/stack/php", "slug": "php"}, {"name": "python", "path": "vulns/stack/python", "slug": "python"}, {"name": "node", "path": "vulns/stack/node", "slug": "node"}, {"name": "database", "path": "vulns/stack/database", "slug": "database"}, {"name": "containers", "path": "vulns/stack/containers", "slug": "containers"}, {"name": "network", "path": "vulns/stack/network", "slug": "network"}, {"name": "applications", "path": "vulns/stack/applications", "slug": "applications"}], "versions": ["29.1.2", "29.0.6", "29.0.4", "29.0.3", "29.0.2", "28.5.0.6", "28.5.0.4", "28.5.0.3", "27.3.4.19", "27.3.4.18", "27.3.4.17", "27.3.4.15"], "stats": {"recent": 3, "kev": 0}, "lastmod": "2026-10-22T07:08:09.364Z", "early_advisories": [], "license": "You may freely use the PatchFirst selection and our additions (priorities, early warnings, texts, summaries and aggregates) for your own purposes, including internal business use. Resale, commercial distribution and bulk mirroring of this selection or these additions require a written agreement with the operator. Whenever you use or publish the selection or our additions, credit PatchFirst (https://patchfirst.dev/vulns/) with this link to the regional feed page. Original records from open sources remain subject to their respective licenses and terms. These conditions do not restrict your rights to the original data, which you can obtain directly from those sources.", "terms_url": "https://patchfirst.dev/vulns/#feed-terms", "attribution": {"name": "PatchFirst", "url": "https://patchfirst.dev/vulns/"}, "source_changes": "Records are selected, normalized and combined by PatchFirst; summaries and translations may be added. News is credited with a link to the original source in each entry.", "sources": [{"id": "cve", "name": "CVE List / CVE.org", "url": "https://www.cve.org/", "license": "CVE Terms of Use", "terms_url": "https://www.cve.org/Legal/TermsOfUse", "notice": "Copyright © 1999–2021, The MITRE Corporation. LICENSE Submissions : For all materials you submit to the Common Vulnerabilities and Exposures (CVE™), you hereby grant to The MITRE Corporation (MITRE) and all CVE Numbering Authorities (CNAs) a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute such materials and derivative works. Unless required by applicable law or agreed to in writing, you provide such materials on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. CVE Usage : MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE™). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. DISCLAIMERS ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN \"AS IS\" BASIS AND THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE MITRE CORPORATION, ITS BOARD OF TRUSTEES, OFFICERS, AGENTS, AND EMPLOYEES, DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION THEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE."}, {"id": "osv", "name": "OSV", "url": "https://osv.dev/", "terms_url": "https://google.github.io/osv.dev/data/", "terms": "Upstream licenses vary; see the source catalog."}, {"id": "kev", "name": "CISA KEV", "url": "https://www.cisa.gov/known-exploited-vulnerabilities-catalog", "license": "CC0-1.0", "terms_url": "https://github.com/cisagov/kev-data/blob/develop/LICENSE"}, {"id": "epss", "name": "FIRST EPSS", "url": "https://www.first.org/epss/", "terms_url": "https://www.first.org/epss/faq", "terms": "Free public scores; attribution requested (FIRST EPSS, scores generated by Empirical Security)."}, {"id": "github-advisory", "name": "GitHub Advisory Database", "url": "https://github.com/advisories", "license": "CC-BY-4.0", "terms_url": "https://github.com/github/advisory-database/blob/main/LICENSE.md"}, {"id": "exploitdb", "name": "Exploit-DB", "url": "https://www.exploit-db.com/", "license": "GPL-2.0", "terms_url": "https://gitlab.com/exploit-database/exploitdb/-/blob/main/LICENSE.md"}, {"id": "metasploit", "name": "Metasploit", "url": "https://github.com/rapid7/metasploit-framework", "license": "BSD-3-Clause", "terms_url": "https://github.com/rapid7/metasploit-framework/blob/master/LICENSE", "notice": "Copyright (c) 2006-2026, Rapid7, Inc.\nLicense: BSD-3-clause\n Redistribution and use in source and binary forms, with or without modification,\n are permitted provided that the following conditions are met:\n .\n * Redistributions of source code must retain the above copyright notice,\n this list of conditions and the following disclaimer.\n .\n * Redistributions in binary form must reproduce the above copyright notice,\n this list of conditions and the following disclaimer in the documentation\n and/or other materials provided with the distribution.\n .\n * Neither the name of Rapid7, Inc. nor the names of its contributors\n may be used to endorse or promote products derived from this software\n without specific prior written permission.\n .\n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR\n ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON\n ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."}, {"id": "nuclei", "name": "Nuclei Templates", "url": "https://github.com/projectdiscovery/nuclei-templates", "license": "MIT", "terms_url": "https://github.com/projectdiscovery/nuclei-templates/blob/main/LICENSE.md", "notice": "MIT License\n\nCopyright (c) 2025 ProjectDiscovery, Inc.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE."}, {"id": "linux-kernel", "name": "Linux kernel releases", "url": "https://www.kernel.org/", "license": "CC-BY-SA-4.0", "terms_url": "https://www.kernel.org/legal.html", "notice": "Copyright (C) 1997-2014 by The Linux Kernel Organization, Inc."}]}