CVE-2026-28810
Predictable DNS Transaction IDs Enable Cache Poisoning in Built-in Resolver
Generation of Predictable Numbers or Identifiers vulnerability in Erlang/OTP kernel (inet_res, inet_db modules) allows DNS Cache Poisoning.
The built-in DNS resolver (inet_res) uses a sequential, process-global 16-bit transaction ID for UDP queries and does not implement source port randomization. Response validation relies almost entirely on this ID, making DNS cache poisoning practical for an attacker who can observe one query or predict the next ID. This conflicts with RFC 5452 recommendations for mitigating forged DNS answers.
inet_res is intended for use in trusted network environments and with trusted recursive resolvers. Earlier documentation did not clearly state this deployment assumption, which could lead users to deploy the resolver in environments where spoofed DNS responses are possible.
This vulnerability is associated with program files lib/kernel/src/inet_db.erl and lib/kernel/src/inet_res.erl.
This issue affects OTP from OTP 17.0 before OTP 28.4.2, OTP 27.3.4.10 and OTP 26.2.5.19, corresponding to kernel from 3.0 before 10.6.2, 10.2.7.4 and 9.2.4.11.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- Low
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
6.3
Predictable DNS Transaction IDs Enable Cache Poisoning in Built-in Resolver
Generation of Predictable Numbers or Identifiers vulnerability in Erlang/OTP kernel (inet_res, inet_db modules) allows DNS Cache Poisoning.
The built-in DNS resolver (inet_res) uses a sequential, process-global 16-bit transaction ID for UDP queries and does not implement source port randomization. Response validation relies almost entirely on this ID, making DNS cache poisoning practical for an attacker who can observe one query or predict the next ID. This conflicts with RFC 5452 recommendations for mitigating forged DNS answers.
inet_res is intended for use in trusted network environments and with trusted recursive resolvers. Earlier documentation did not clearly state this deployment assumption, which could lead users to deploy the resolver in environments where spoofed DNS responses are possible.
This vulnerability is associated with program files lib/kernel/src/inet_db.erl and lib/kernel/src/inet_res.erl.
This issue affects OTP from OTP 17.0 before OTP 28.4.2, OTP 27.3.4.10 and OTP 26.2.5.19, corresponding to kernel from 3.0 before 10.6.2, 10.2.7.4 and 9.2.4.11.
- Record
CVE-2026-28810- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-340
- Updated
- 2026-11-02
EUVDEUVD-2026-19582
6.3
Generation of Predictable Numbers or Identifiers vulnerability in Erlang/OTP kernel (inet_res, inet_db modules) allows DNS Cache Poisoning.
The built-in DNS resolver (inet_res) uses a sequential, process-global 16-bit transaction ID for UDP queries and does not implement source port randomization. Response validation relies almost entirely on this ID, making DNS cache poisoning practical for an attacker who can observe one query or predict the next ID. This conflicts with RFC 5452 recommendations for mitigating forged DNS answers.
inet_res is intended for use in trusted network environments and with trusted recursive resolvers. Earlier documentation did not clearly state this deployment assumption, which could lead users to deploy the resolver in environments where spoofed DNS responses are possible.
This vulnerability is associated with program files lib/kernel/src/inet_db.erl and lib/kernel/src/inet_res.erl.
This issue affects OTP from OTP 17.0 before OTP 28.4.2, OTP 27.3.4.10 and OTP 26.2.5.19, corresponding to kernel from 3.0 before 10.6.2, 10.2.7.4 and 9.2.4.11.
- Record
EUVD-2026-19582- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N - Updated
- 2026-11-02
NVD
6.3
Generation of Predictable Numbers or Identifiers vulnerability in Erlang/OTP kernel (inet_res, inet_db modules) allows DNS Cache Poisoning.
The built-in DNS resolver (inet_res) uses a sequential, process-global 16-bit transaction ID for UDP queries and does not implement source port randomization. Response validation relies almost entirely on this ID, making DNS cache poisoning practical for an attacker who can observe one query or predict the next ID. This conflicts with RFC 5452 recommendations for mitigating forged DNS answers.
inet_res is intended for use in trusted network environments and with trusted recursive resolvers. Earlier documentation did not clearly state this deployment assumption, which could lead users to deploy the resolver in environments where spoofed DNS responses are possible.
This vulnerability is associated with program files lib/kernel/src/inet_db.erl and lib/kernel/src/inet_res.erl.
This issue affects OTP from OTP 17.0 before OTP 28.4.2, OTP 27.3.4.10 and OTP 26.2.5.19, corresponding to kernel from 3.0 before 10.6.2, 10.2.7.4 and 9.2.4.11.
- Record
CVE-2026-28810- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/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 - CVSS 3.1
- 3.7 Low
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N - Weakness
- CWE-340
- Updated
- 2026-11-02
OSV
6.3
Predictable DNS Transaction IDs Enable Cache Poisoning in Built-in Resolver
Generation of Predictable Numbers or Identifiers vulnerability in Erlang/OTP kernel (inet_res, inet_db modules) allows DNS Cache Poisoning.
The built-in DNS resolver (inet_res) uses a sequential, process-global 16-bit transaction ID for UDP queries and does not implement source port randomization. Response validation relies almost entirely on this ID, making DNS cache poisoning practical for an attacker who can observe one query or predict the next ID. This conflicts with RFC 5452 recommendations for mitigating forged DNS answers.
inet_res is intended for use in trusted network environments and with trusted recursive resolvers. Earlier documentation did not clearly state this deployment assumption, which could lead users to deploy the resolver in environments where spoofed DNS responses are possible.
This vulnerability is associated with program files lib/kernel/src/inet_db.erl and lib/kernel/src/inet_res.erl.
This issue affects OTP from OTP 17.0 before OTP 28.4.2, OTP 27.3.4.10 and OTP 26.2.5.19, corresponding to kernel from 3.0 before 10.6.2, 10.2.7.4 and 9.2.4.11.
- Record
CVE-2026-28810- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-340
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-28810
3.7
Generation of Predictable Numbers or Identifiers vulnerability in Erlang/OTP kernel (inet_res, inet_db modules) allows DNS Cache Poisoning. The built-in DNS resolver (inet_res) uses a sequential, process-global 16-bit transaction ID for UDP queries and does not implement source port randomization. Response validation relies almost entirely on this ID, making DNS cache poisoning practical for an attacker who can observe one query or predict the next ID. This conflicts with RFC 5452 recommendations for mitigating forged DNS answers. inet_res is intended for use in trusted network environments and with trusted recursive resolvers. Earlier documentation did not clearly state this deployment assumption, which could lead users to deploy the resolver in environments where spoofed DNS responses are possible. This vulnerability is associated with program files lib/kernel/src/inet_db.erl and lib/kernel/src/inet_res.erl. This issue affects OTP from OTP 17.0 before OTP 28.4.2, OTP 27.3.4.10 and OTP 26.2.5.19, corresponding to kernel from 3.0 before 10.6.2, 10.2.7.4 and 9.2.4.11.
- Record
DEBIAN-CVE-2026-28810- CVSS 3.1
- 3.7 Low
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N - Updated
- 2026-11-02
OSVEEF-CVE-2026-28810
6.3
Predictable DNS Transaction IDs Enable Cache Poisoning in Built-in Resolver
Summary
Generation of Predictable Numbers or Identifiers vulnerability in Erlang/OTP kernel (inet_res, inet_db modules) allows DNS Cache Poisoning.
The built-in DNS resolver (inet_res) uses a sequential, process-global 16-bit transaction ID for UDP queries and does not implement source port randomization. Response validation relies almost entirely on this ID, making DNS cache poisoning practical for an attacker who can observe one query or predict the next ID. This conflicts with RFC 5452 recommendations for mitigating forged DNS answers.
inet_res is intended for use in trusted network environments and with trusted recursive resolvers. Earlier documentation did not clearly state this deployment assumption, which could lead users to deploy the resolver in environments where spoofed DNS responses are possible.
This vulnerability is associated with program files lib/kernel/src/inet_db.erl and lib/kernel/src/inet_res.erl.
This issue affects OTP from OTP 17.0 before OTP 28.4.2, OTP 27.3.4.10 and OTP 26.2.5.19, corresponding to kernel from 3.0 before 10.6.2, 10.2.7.4 and 9.2.4.11.
Workarounds
Install the Erlang nodes in a trusted network shielded from DNS reply spoofing by firewalls, and configure the inet_res resolver to only talk to trusted recursive name servers within that network.
Configurations
The application must use inet_res for DNS resolution, either by configuring the lookup method to include dns in the kernel inet configuration, or by calling inet_res functions directly. The default Erlang/OTP configuration uses native OS resolution and is not affected.
- Record
EEF-CVE-2026-28810- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-340
- Updated
- 2026-11-02
Show 8 moreShow less
OSVUBUNTU-CVE-2026-28810
6.3
Generation of Predictable Numbers or Identifiers vulnerability in Erlang/OTP kernel (inet_res, inet_db modules) allows DNS Cache Poisoning. The built-in DNS resolver (inet_res) uses a sequential, process-global 16-bit transaction ID for UDP queries and does not implement source port randomization. Response validation relies almost entirely on this ID, making DNS cache poisoning practical for an attacker who can observe one query or predict the next ID. This conflicts with RFC 5452 recommendations for mitigating forged DNS answers. inet_res is intended for use in trusted network environments and with trusted recursive resolvers. Earlier documentation did not clearly state this deployment assumption, which could lead users to deploy the resolver in environments where spoofed DNS responses are possible. This vulnerability is associated with program files lib/kernel/src/inet_db.erl and lib/kernel/src/inet_res.erl. This issue affects OTP from OTP 17.0 before OTP 28.4.2, OTP 27.3.4.10 and OTP 26.2.5.19, corresponding to kernel from 3.0 before 10.6.2, 10.2.7.4 and 9.2.4.11.
- Record
UBUNTU-CVE-2026-28810- CVSS 4.0
- 6.3 Medium
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N - CVSS 3.1
- 3.7 Low
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N - Updated
- 2026-11-02
OSVAZL-82058 No score
CVE-2026-28810 affecting package kernel 6.6.161.1-1
Generation of Predictable Numbers or Identifiers vulnerability in Erlang/OTP kernel (inet_res, inet_db modules) allows DNS Cache Poisoning.
The built-in DNS resolver (inet_res) uses a sequential, process-global 16-bit transaction ID for UDP queries and does not implement source port randomization. Response validation relies almost entirely on this ID, making DNS cache poisoning practical for an attacker who can observe one query or predict the next ID. This conflicts with RFC 5452 recommendations for mitigating forged DNS answers.
inet_res is intended for use in trusted network environments and with trusted recursive resolvers. Earlier documentation did not clearly state this deployment assumption, which could lead users to deploy the resolver in environments where spoofed DNS responses are possible.
This vulnerability is associated with program files lib/kernel/src/inet_db.erl and lib/kernel/src/inet_res.erl.
This issue affects OTP from OTP 17.0 before OTP 28.4.2, OTP 27.3.4.10 and OTP 26.2.5.19, corresponding to kernel from 3.0 before 10.6.2, 10.2.7.4 and 9.2.4.11.
- Record
AZL-82058- Updated
- 2026-11-05
OSVopenSUSE-SU-2026:10947-1 No score
erlang27-27.1.3-2.1 on GA media
These are all security issues fixed in the erlang27-27.1.3-2.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:10947-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:20607-1 No score
Security update for erlang
This update for erlang fixes the following issues:
Security issues fixed:
- CVE-2026-21620: improper isolation and compartmentalization can lead to TFTP relative path traversal and remote arbitrary reads/writes (bsc#1258663).
- CVE-2026-23941: improper handling of duplicate Content-Length headers in Erlang OTP can lead to HTTP request smuggling (bsc#1259687).
- CVE-2026-23942: improper limitation of a pathname to a restricted directory in the SFTP server can lead to path traversal (bsc#1259681).
- CVE-2026-23943: improper handling of highly compressed data in Erlang OTP ssh can lead to denial of service (bsc#1259682).
- CVE-2026-28808: incorrect authorization can lead to unauthenticated access to protected CGI scripts (bsc#1261728).
- CVE-2026-28810: predictable DNS transaction IDs can lead to DNS cache poisoning (bsc#1261726).
- CVE-2026-32144: missing signature verification can lead to OCSP authorization bypass and information disclosure (bsc#1261734).
Other updates and bugfixes:
- jinterface: allow to build determenistic OtpErlang.jar (bsc#1262288).
- Record
openSUSE-SU-2026:20607-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:21374-1 No score
Security update for erlang
This update for erlang fixes the following issues:
Security issues fixed:
- CVE-2026-21620: improper isolation and compartmentalization can lead to TFTP relative path traversal and remote arbitrary reads/writes (bsc#1258663).
- CVE-2026-23941: improper handling of duplicate Content-Length headers in Erlang OTP can lead to HTTP request smuggling (bsc#1259687).
- CVE-2026-23942: improper limitation of a pathname to a restricted directory in the SFTP server can lead to path traversal (bsc#1259681).
- CVE-2026-23943: improper handling of highly compressed data in Erlang OTP ssh can lead to denial of service (bsc#1259682).
- CVE-2026-28808: incorrect authorization can lead to unauthenticated access to protected CGI scripts (bsc#1261728).
- CVE-2026-28810: predictable DNS transaction IDs can lead to DNS cache poisoning (bsc#1261726).
- CVE-2026-32144: missing signature verification can lead to OCSP authorization bypass and information disclosure (bsc#1261734).
Other updates and bugfixes:
- jinterface: allow to build determenistic OtpErlang.jar (bsc#1262288).
- Record
SUSE-SU-2026:21374-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:3579-1 No score
Security update for erlang26
This update for erlang26 fixes the following issues:
- CVE-2026-28810: predictable DNS transaction IDs can cause DNS cache poisoning (bsc#1261726).
- CVE-2026-42789:
public_keyapplication accepts non-CA certificates as intermediate issuers and this enables chain forgery (bsc#1266449). - CVE-2026-42790: Name constraints and
Subject CommonNamefallback in TLS hostname verification allows for certificate forgery by MITM attacker (bsc#1266466). - CVE-2026-42792: permanent
epmdDoS via connection slot exhaustion due to improper handling of exceptional conditions (bsc#1272908). - CVE-2026-47078: relative path traversal in
zip:unzip/zip:extractviacheck_dir_leveldepth-counter bypass (bsc#1272909). - CVE-2026-48855: SFTP
READLINKresponse leaks absolute backend filesystem path when root is configured (bsc#1268139). - CVE-2026-48856:
httpcleaksAuthorizationheaders to cross-origin redirect targets (bsc#1268141). - CVE-2026-48858: server-side request forgery allows FTP bounce attacks and SSRF via an unvalidated
PASVresponse IP address (bsc#1268142). - CVE-2026-48860:
ssl(inet_tls_distmodule) allows unauthenticated bypass of the distribution-over-TLS LAN allowlist (bsc#1268146). - CVE-2026-49759: unbounded stack buffer overflow in SCTP error cause parsing in
inet_drv(bsc#1268163). - CVE-2026-49760: stack buffer overflow in
ei_s_print_termat very large integer (bsc#1268164). - CVE-2026-53422: SFTP
REALPATHpath-existence oracle allows filesystem enumeration outside configured root (bsc#1270245). - CVE-2026-54886: SSH SFTP server denial of service via extended channel data infinite loop (bsc#1270246).
- CVE-2026-54887: use of default cryptographic key allows predictable DTLS cookie computation during the startup window (bsc#1270247).
- CVE-2026-54891: plaintext injection towards (D)TLS client during handshake (bsc#1270250).
- CVE-2026-55737: heap pointer corruption via signed/unsigned mismatch in
LARGE_TUPLE_EXTPdecoding inertsexternal term format decoder (bsc#1272910). - CVE-2026-55950: time-of-check time-of-use race condition allows an unauthenticated remote attacker to crash all active DTLS sessions on a listener (bsc#1270253).
- CVE-2026-55952: missing validation allows for DoS of the TLS-1.3 server when clients send a malformed
ClientHellowith mismatched PSK identity and binder list lengths (bsc#1270258). - CVE-2026-55953: TLS 1.2 and DTLS clients accept unoffered anonymous cipher suites and allow for server authentication bypass (bsc#1272911).
- CVE-2026-58227: TLS/DTLS denial of service via unbounded recursion on cross-signed peer certificate chain (bsc#1272913).
- CVE-2026-59250:
megacoflex scanner buffer overflow via oversized property parm name (bsc#1272914). - CVE-2026-59251: denial of service via exponential certificate policy tree growth in path validation (bsc#1272915).
- Record
SUSE-SU-2026:3579-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:3645-1 No score
Security update for erlang
This update for erlang fixes the following issues:
- CVE-2026-28810: predictable DNS transaction IDs can cause DNS cache poisoning (bsc#1261726).
- CVE-2026-42789:
public_keyapplication accepts non-CA certificates as intermediate issuers and this enables chain forgery (bsc#1266449). - CVE-2026-42790: Name constraints and
Subject CommonNamefallback in TLS hostname verification allows for certificate forgery by MITM attacker (bsc#1266466). - CVE-2026-42792: permanent
epmdDoS via connection slot exhaustion due to improper handling of exceptional conditions (bsc#1272908). - CVE-2026-47078: relative path traversal in
zip:unzip/zip:extractviacheck_dir_leveldepth-counter bypass (bsc#1272909). - CVE-2026-48855: SFTP
READLINKresponse leaks absolute backend filesystem path when root is configured (bsc#1268139). - CVE-2026-48856:
httpcleaksAuthorizationheaders to cross-origin redirect targets (bsc#1268141). - CVE-2026-48858: server-side request forgery allows FTP bounce attacks and SSRF via an unvalidated
PASVresponse IP address (bsc#1268142). - CVE-2026-49759: unbounded stack buffer overflow in SCTP error cause parsing in
inet_drv(bsc#1268163). - CVE-2026-49760: stack buffer overflow in
ei_s_print_termat very large integer (bsc#1268164). - CVE-2026-53422: SFTP
REALPATHpath-existence oracle allows filesystem enumeration outside configured root (bsc#1270245). - CVE-2026-54886: SSH SFTP server denial of service via extended channel data infinite loop (bsc#1270246).
- CVE-2026-54887: use of default cryptographic key allows predictable DTLS cookie computation during the startup window (bsc#1270247).
- CVE-2026-54891: plaintext injection towards (D)TLS client during handshake (bsc#1270250).
- CVE-2026-55737: heap pointer corruption via signed/unsigned mismatch in
LARGE_TUPLE_EXTPdecoding inertsexternal term format decoder (bsc#1272910). - CVE-2026-55952: missing validation allows for DoS of the TLS-1.3 server when clients send a malformed
ClientHellowith mismatched PSK identity and binder list lengths (bsc#1270258). - CVE-2026-55953: TLS 1.2 and DTLS clients accept unoffered anonymous cipher suites and allow for server authentication bypass (bsc#1272911).
- CVE-2026-58227: TLS/DTLS denial of service via unbounded recursion on cross-signed peer certificate chain (bsc#1272913).
- CVE-2026-59250:
megacoflex scanner buffer overflow via oversized property parm name (bsc#1272914).
- Record
SUSE-SU-2026:3645-1- Updated
- 2026-11-02
OSVUSN-8901-1 No score
erlang vulnerabilities
Wander Nauta discovered that Erlang incorrectly handled absolute paths when extracting zip archives. An attacker could possibly use this issue to write arbitrary files outside of the intended directory. This issue only affected Ubuntu 16.04 LTS, Ubuntu 18.04 LTS, and Ubuntu 20.04 LTS. (CVE-2025-4748)
It was discovered that the Erlang SFTP server did not properly limit the size of packets. A remote attacker could possibly use this issue to cause Erlang to use excessive resources, leading to a denial of service. This issue only affected Ubuntu 14.04 LTS, Ubuntu 16.04 LTS, and Ubuntu 18.04 LTS. (CVE-2025-26618)
It was discovered that the Erlang SSH server did not properly limit the length of algorithm names in key exchange messages. A remote attacker could possibly use this issue to cause Erlang to use excessive resources, leading to a denial of service. This issue only affected Ubuntu 14.04 LTS, Ubuntu 16.04 LTS, and Ubuntu 18.04 LTS. (CVE-2025-30211)
It was discovered that the Erlang TFTP server incorrectly handled certain file paths. A remote attacker could possibly use this issue to access files outside of the intended directory. (CVE-2026-21620)
It was discovered that the Erlang SFTP server incorrectly validated paths against the configured root directory. An authenticated user could possibly use this issue to access files outside of the root directory. (CVE-2026-23942)
It was discovered that the Erlang SSH server enabled zlib compression by default and did not limit the size of decompressed data. A remote attacker could possibly use this issue to cause Erlang to use excessive resources, leading to a denial of service. (CVE-2026-23943)
It was discovered that the Erlang HTTP server incorrectly applied directory access controls to CGI scripts served via script aliases. A remote attacker could possibly use this issue to bypass authentication and access protected CGI scripts. (CVE-2026-28808)
It was discovered that the Erlang DNS resolver used predictable transaction IDs and did not randomize source ports. A remote attacker could possibly use this issue to perform DNS cache poisoning attacks. This issue only affected Ubuntu 22.04 LTS, Ubuntu 24.04 LTS, and Ubuntu 26.04 LTS. (CVE-2026-28810)
It was discovered that Erlang did not verify the signatures of designated OCSP responder certificates. A remote attacker could possibly use this issue to forge OCSP responses and bypass certificate revocation checks. This issue only affected Ubuntu 26.04 LTS. (CVE-2026-32144)
It was discovered that the Erlang SFTP server incorrectly handled file attribute changes on open file handles. An authenticated user could possibly use this issue to modify the attributes of files outside of the root directory. (CVE-2026-32147)
It was discovered that Erlang incorrectly allowed non-CA certificates to act as intermediate certificate issuers. A remote attacker could possibly use this issue to forge certificate chains. (CVE-2026-42789)
It was discovered that Erlang incorrectly handled DNS name constraints during hostname verification. A remote attacker could possibly use this issue to bypass certificate validation. This issue only affected Ubuntu 18.04 LTS, Ubuntu 20.04 LTS, Ubuntu 22.04 LTS, Ubuntu 24.04 LTS, and Ubuntu 26.04 LTS. (CVE-2026-42790)
It was discovered that Erlang did not check the validity period of OCSP responder certificates. A remote attacker could possibly use this issue to forge OCSP responses using an expired responder certificate. This issue only affected Ubuntu 26.04 LTS. (CVE-2026-42791)
It was discovered that Erlang incorrectly handled relative paths when extracting zip archives. An attacker could possibly use this issue to write arbitrary files outside of the intended directory. This issue only affected Ubuntu 18.04 LTS, Ubuntu 20.04 LTS, Ubuntu 22.04 LTS, Ubuntu 24.04 LTS, and Ubuntu 26.04 LTS. (CVE-2026-47078)
It was discovered that the Erlang SFTP server exposed absolute paths when reading symbolic links. An…
- Record
USN-8901-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
kernelAzure Linux:3 |
through 6.6.161.1-1 | None known |
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+deb13u3, plus listed versions 1:27.3.4.1+dfsg-11:27.3.4.1+dfsg-1+deb13u11:27.3.4.1+dfsg-1+deb13u2 |
1:27.3.4.1+dfsg-1+deb13u3 |
erlangDebian:14 |
before 1:27.3.4.10+dfsg-1, plus listed versions 1:27.3.4.1+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-1 |
1:27.3.4.10+dfsg-1 |
erlang26SUSE:Linux Enterprise Module for Server Applications 15 SP7 From an advisory covering 22 CVEs |
before 26.2.1-150300.7.28.1 | 26.2.1-150300.7.28.1 |
erlang26SUSE:Linux Enterprise Server 15 SP6-LTSS From an advisory covering 22 CVEs |
before 26.2.1-150300.7.28.1 | 26.2.1-150300.7.28.1 |
erlang26SUSE:Linux Enterprise Server for SAP Applications 15 SP6 From an advisory covering 22 CVEs |
before 26.2.1-150300.7.28.1 | 26.2.1-150300.7.28.1 |
erlangSUSE:Linux Enterprise Module for Server Applications 15 SP7 From an advisory covering 19 CVEs |
before 23.3.4.19-150300.3.39.1 | 23.3.4.19-150300.3.39.1 |
erlangSUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS From an advisory covering 19 CVEs |
before 23.3.4.19-150300.3.39.1 | 23.3.4.19-150300.3.39.1 |
erlangSUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS From an advisory covering 19 CVEs |
before 23.3.4.19-150300.3.39.1 | 23.3.4.19-150300.3.39.1 |
Show 25 moreShow less
| Package | Affected | Fixed |
|---|---|---|
erlangSUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS From an advisory covering 19 CVEs |
before 23.3.4.19-150300.3.39.1 | 23.3.4.19-150300.3.39.1 |
erlangSUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS From an advisory covering 19 CVEs |
before 23.3.4.19-150300.3.39.1 | 23.3.4.19-150300.3.39.1 |
erlangSUSE:Linux Enterprise Server 15 SP4-LTSS From an advisory covering 19 CVEs |
before 23.3.4.19-150300.3.39.1 | 23.3.4.19-150300.3.39.1 |
erlangSUSE:Linux Enterprise Server 15 SP5-LTSS From an advisory covering 19 CVEs |
before 23.3.4.19-150300.3.39.1 | 23.3.4.19-150300.3.39.1 |
erlangSUSE:Linux Enterprise Server 15 SP6-LTSS From an advisory covering 19 CVEs |
before 23.3.4.19-150300.3.39.1 | 23.3.4.19-150300.3.39.1 |
erlangSUSE:Linux Enterprise Server for SAP Applications 15 SP4 From an advisory covering 19 CVEs |
before 23.3.4.19-150300.3.39.1 | 23.3.4.19-150300.3.39.1 |
erlangSUSE:Linux Enterprise Server for SAP Applications 15 SP5 From an advisory covering 19 CVEs |
before 23.3.4.19-150300.3.39.1 | 23.3.4.19-150300.3.39.1 |
erlangSUSE:Linux Enterprise Server for SAP Applications 15 SP6 From an advisory covering 19 CVEs |
before 23.3.4.19-150300.3.39.1 | 23.3.4.19-150300.3.39.1 |
erlangUbuntu:Pro:14.04:LTS |
All versions, 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-1ubuntu2 Show 5 moreShow less1:16.b.3-dfsg-1ubuntu2.11:16.b.3-dfsg-1ubuntu2.21:16.b.3-dfsg-1ubuntu2.2+esm11:16.b.3-dfsg-1ubuntu2.2+esm21:16.b.3-dfsg-1ubuntu2.2+esm3 |
None known |
erlangUbuntu:Pro:16.04:LTS |
All versions, 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 6 moreShow less1:18.3-dfsg-1ubuntu31:18.3-dfsg-1ubuntu3.11:18.3-dfsg-1ubuntu3.1+esm11:18.3-dfsg-1ubuntu3.1+esm21:18.3-dfsg-1ubuntu3.1+esm31:18.3-dfsg-1ubuntu3.1+esm4 |
None known |
erlangUbuntu:Pro:18.04:LTS |
All versions, 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 9 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+esm21:20.2.2+dfsg-1ubuntu2+esm31:20.2.2+dfsg-1ubuntu2+esm4 |
None known |
erlangUbuntu:Pro:20.04:LTS |
All versions, 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 10 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+esm11:22.2.7+dfsg-1ubuntu0.5+esm21:22.2.7+dfsg-1ubuntu0.5+esm3 |
None known |
erlangUbuntu:22.04:LTS |
before 1:24.2.1+dfsg-1ubuntu0.8, 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 9 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.61:24.2.1+dfsg-1ubuntu0.7 |
1:24.2.1+dfsg-1ubuntu0.8 |
erlangUbuntu:24.04:LTS |
before 1:25.3.2.8+dfsg-1ubuntu4.8, 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 7 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.61:25.3.2.8+dfsg-1ubuntu4.7 |
1:25.3.2.8+dfsg-1ubuntu4.8 |
erlangUbuntu:25.10 |
All versions, plus listed versions 1:27.3+dfsg-1ubuntu11:27.3+dfsg-1ubuntu1.11:27.3.4.1+dfsg-11:27.3.4.1+dfsg-1build11:27.3.4.1+dfsg-1ubuntu0.1 |
None known |
erlangUbuntu:26.04:LTS |
before 1:27.3.4.6+dfsg-1ubuntu0.2, 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-11:27.3.4.6+dfsg-1ubuntu0.1 |
1:27.3.4.6+dfsg-1ubuntu0.2 |
erlangUbuntu:Pro:14.04:LTS From an advisory covering 30 CVEs |
before 1:16.b.3-dfsg-1ubuntu2.2+esm3, 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-1ubuntu2 Show 4 moreShow less1:16.b.3-dfsg-1ubuntu2.11:16.b.3-dfsg-1ubuntu2.21:16.b.3-dfsg-1ubuntu2.2+esm11:16.b.3-dfsg-1ubuntu2.2+esm2 |
1:16.b.3-dfsg-1ubuntu2.2+esm3 |
erlangUbuntu:Pro:16.04:LTS From an advisory covering 30 CVEs |
before 1:18.3-dfsg-1ubuntu3.1+esm4, 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 5 moreShow less1:18.3-dfsg-1ubuntu31:18.3-dfsg-1ubuntu3.11:18.3-dfsg-1ubuntu3.1+esm11:18.3-dfsg-1ubuntu3.1+esm21:18.3-dfsg-1ubuntu3.1+esm3 |
1:18.3-dfsg-1ubuntu3.1+esm4 |
erlangUbuntu:Pro:18.04:LTS From an advisory covering 30 CVEs |
before 1:20.2.2+dfsg-1ubuntu2+esm4, 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 8 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+esm21:20.2.2+dfsg-1ubuntu2+esm3 |
1:20.2.2+dfsg-1ubuntu2+esm4 |
erlangUbuntu:Pro:20.04:LTS From an advisory covering 30 CVEs |
before 1:22.2.7+dfsg-1ubuntu0.5+esm3, 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 9 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+esm11:22.2.7+dfsg-1ubuntu0.5+esm2 |
1:22.2.7+dfsg-1ubuntu0.5+esm3 |
erlangUbuntu:22.04:LTS From an advisory covering 30 CVEs |
before 1:24.2.1+dfsg-1ubuntu0.8, 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 9 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.61:24.2.1+dfsg-1ubuntu0.7 |
1:24.2.1+dfsg-1ubuntu0.8 |
erlangUbuntu:24.04:LTS From an advisory covering 30 CVEs |
before 1:25.3.2.8+dfsg-1ubuntu4.8, 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 7 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.61:25.3.2.8+dfsg-1ubuntu4.7 |
1:25.3.2.8+dfsg-1ubuntu4.8 |
erlangUbuntu:26.04:LTS From an advisory covering 30 CVEs |
before 1:27.3.4.6+dfsg-1ubuntu0.2, 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-11:27.3.4.6+dfsg-1ubuntu0.1 |
1:27.3.4.6+dfsg-1ubuntu0.2 |
erlang27openSUSE:Tumbleweed From an advisory covering 14 CVEs |
before 27.1.3-2.1 | 27.1.3-2.1 |
erlangopenSUSE:Leap 16.0 From an advisory covering 7 CVEs |
before 27.1.3-160000.4.1 | 27.1.3-160000.4.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected | ||
| 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-28810 is a medium vulnerability (CVSS 6.3) in Erlang Otp, published April 7, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.27%, the 19th percentile. Fixed in erlang 1:27.3.4.1+dfsg-1+deb13u3.
References
github.com/erlang/otp/security/advisories/GHSA-v884-5jg5-whj8
cna.erlef.org/cves/CVE-2026-28810.html
osv.dev/vulnerability/EEF-CVE-2026-28810
erlang.org/doc/system/versions.html
github.com/erlang/otp/commit/36f23c9d2cc54afe83671dd7343596d7972839a5
github.com/erlang/otp/commit/dd15e8eb03548c5e55e9915f0e91389ec6bad9fd
Show 103 moreShow less
github.com/erlang/otp/commit/b057a9d995017b1be50d6dc02edd52382f3231b8
nvd.nist.gov/vuln/detail/CVE-2026-28810
github.com
github.com/CVEProject/cvelistV5/tree/main/cves/2026/28xxx/CVE-2026-28810.json
github.com/erlang/otp
security-tracker.debian.org/tracker/CVE-2026-28810
suse.com/support/update/announcement/2026/suse-su-202621374-1
bugzilla.suse.com/1258663
bugzilla.suse.com/1259681
bugzilla.suse.com/1259682
bugzilla.suse.com/1259687
bugzilla.suse.com/1261726
bugzilla.suse.com/1261728
bugzilla.suse.com/1261734
bugzilla.suse.com/1262288
suse.com/security/cve/CVE-2026-21620
suse.com/security/cve/CVE-2026-23941
suse.com/security/cve/CVE-2026-23942
suse.com/security/cve/CVE-2026-23943
suse.com/security/cve/CVE-2026-28808
suse.com/security/cve/CVE-2026-28810
suse.com/security/cve/CVE-2026-32144
suse.com/support/update/announcement/2026/suse-su-20263579-1
bugzilla.suse.com/1266449
bugzilla.suse.com/1266466
bugzilla.suse.com/1268139
bugzilla.suse.com/1268141
bugzilla.suse.com/1268142
bugzilla.suse.com/1268146
bugzilla.suse.com/1268163
bugzilla.suse.com/1268164
bugzilla.suse.com/1270245
bugzilla.suse.com/1270246
bugzilla.suse.com/1270247
bugzilla.suse.com/1270250
bugzilla.suse.com/1270253
bugzilla.suse.com/1270258
bugzilla.suse.com/1272908
bugzilla.suse.com/1272909
bugzilla.suse.com/1272910
bugzilla.suse.com/1272911
bugzilla.suse.com/1272913
bugzilla.suse.com/1272914
bugzilla.suse.com/1272915
suse.com/security/cve/CVE-2026-42789
suse.com/security/cve/CVE-2026-42790
suse.com/security/cve/CVE-2026-42792
suse.com/security/cve/CVE-2026-47078
suse.com/security/cve/CVE-2026-48855
suse.com/security/cve/CVE-2026-48856
suse.com/security/cve/CVE-2026-48858
suse.com/security/cve/CVE-2026-48860
suse.com/security/cve/CVE-2026-49759
suse.com/security/cve/CVE-2026-49760
suse.com/security/cve/CVE-2026-53422
suse.com/security/cve/CVE-2026-54886
suse.com/security/cve/CVE-2026-54887
suse.com/security/cve/CVE-2026-54891
suse.com/security/cve/CVE-2026-55737
suse.com/security/cve/CVE-2026-55950
suse.com/security/cve/CVE-2026-55952
suse.com/security/cve/CVE-2026-55953
suse.com/security/cve/CVE-2026-58227
suse.com/security/cve/CVE-2026-59250
suse.com/security/cve/CVE-2026-59251
suse.com/support/update/announcement/2026/suse-su-20263645-1
ubuntu.com/security/CVE-2026-28810
cve.org/CVERecord?id=CVE-2026-28810
ubuntu.com/security/notices/USN-8901-1
ubuntu.com/security/CVE-2025-4748
ubuntu.com/security/CVE-2025-26618
ubuntu.com/security/CVE-2025-30211
ubuntu.com/security/CVE-2026-21620
ubuntu.com/security/CVE-2026-23942
ubuntu.com/security/CVE-2026-23943
ubuntu.com/security/CVE-2026-28808
ubuntu.com/security/CVE-2026-32144
ubuntu.com/security/CVE-2026-32147
ubuntu.com/security/CVE-2026-42789
ubuntu.com/security/CVE-2026-42790
ubuntu.com/security/CVE-2026-42791
ubuntu.com/security/CVE-2026-47078
ubuntu.com/security/CVE-2026-48855
ubuntu.com/security/CVE-2026-48856
ubuntu.com/security/CVE-2026-48858
ubuntu.com/security/CVE-2026-48860
ubuntu.com/security/CVE-2026-49759
ubuntu.com/security/CVE-2026-49760
ubuntu.com/security/CVE-2026-53422
ubuntu.com/security/CVE-2026-54886
ubuntu.com/security/CVE-2026-54887
ubuntu.com/security/CVE-2026-54891
ubuntu.com/security/CVE-2026-55950
ubuntu.com/security/CVE-2026-55952
ubuntu.com/security/CVE-2026-65634
ubuntu.com/security/CVE-2026-68956
ubuntu.com/security/CVE-2026-74994
ubuntu.com/security/CVE-2026-89422
suse.com/security/cve/CVE-2025-4748
suse.com/security/cve/CVE-2025-48038
suse.com/security/cve/CVE-2025-48039
suse.com/security/cve/CVE-2026-32147
suse.com/security/cve/CVE-2026-42791
Left out here: 31 versions and the rest of 1 source description. The JSON record has them.