tun: free page on short-frame rejection in tun_xdp_one()
Published Jun 9, 2026
7.1
HIGHCVSS 3.1
EPSS 0.19%
Description
tun_xdp_one() returns -EINVAL on a frame shorter than ETH_HLEN without freeing the page that vhost_net_build_xdp() allocated for it. tun_sendmsg() discards that -EINVAL and still returns total_len, so vhost_tx_batch() takes the success path and never frees the page; each short frame in a batch leaks one page-frag chunk.
A local process that can open /dev/net/tun and /dev/vhost-net can hit this path: it attaches a tun/tap device as the vhost-net backend and feeds TX descriptors whose length minus the virtio-net header is below ETH_HLEN. Each kick leaks the page-frag chunks for that batch, and a tight submission loop exhausts host memory and triggers an OOM panic. Free the page before returning -EINVAL, matching the XDP-program error path in the same function.
Affected products
-
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints-
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints-
- Version StatusaffectedConstraints-
- Version StatusaffectedConstraints
- Version StatusaffectedConstraints
- Version
-
- Version 5.10.223StatusaffectedConstraints<5.10.259
- Version 5.15.164StatusaffectedConstraints<5.15.210
- Version 5.4.281StatusaffectedConstraints<5.5
- Version 6.1.102StatusaffectedConstraints<6.1.176
- Version 6.10.2StatusaffectedConstraints<6.11
- Version 6.6.43StatusaffectedConstraints<6.6.143
- Version 6.9.12StatusaffectedConstraints<6.10
- Version
-
- Version 6.11StatusaffectedConstraints-
- Version 0StatusunaffectedConstraints<6.11
- Version 5.10.259StatusunaffectedConstraints<=5.10.*
- Version 5.15.210StatusunaffectedConstraints<=5.15.*
- Version 6.1.176StatusunaffectedConstraints<=6.1.*
- Version 6.12.93StatusunaffectedConstraints<=6.12.*
- Version 6.18.35StatusunaffectedConstraints<=6.18.*
- Version 6.6.143StatusunaffectedConstraints<=6.6.*
- Version 7.0.12StatusunaffectedConstraints<=7.0.*
- Version 7.1StatusunaffectedConstraints<=*
- Version
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Linux | Linux | unaffected |
| ||||||||||||||||||||||||||||||||||||
| Linux | Linux | unaffected |
| ||||||||||||||||||||||||||||||||||||
| Linux | Linux | affected |
|
- ≥ 5.4.281 · < 5.5
- ≥ 5.10.223 · < 5.10.259
- ≥ 5.15.164 · < 5.15.210
- ≥ 6.1.102 · < 6.1.176
- ≥ 6.6.43 · < 6.6.143
- ≥ 6.9.12 · < 6.10
- ≥ 6.10.2 · < 6.12.93
- ≥ 6.13 · < 6.18.35
- ≥ 6.19 · < 7.0.12
- 7.1
- 7.1
- 7.1
- 7.1
- 7.1
No data.
Red Hat Enterprise Linux 10
kernel
Fix deferred
Red Hat Enterprise Linux 6
kernel
Out of support scope
Red Hat Enterprise Linux 7
kernel
Not affected
Red Hat Enterprise Linux 7
kernel-rt
Not affected
Red Hat Enterprise Linux 8
kernel
Not affected
Red Hat Enterprise Linux 8
kernel-rt
Not affected
Red Hat Enterprise Linux 9
kernel
Not affected
Red Hat Enterprise Linux 9
kernel-rt
Not affected
| Product | Package | State | Advisory |
|---|---|---|---|
| Red Hat Enterprise Linux 10 | kernel | Fix deferred | n/a |
| Red Hat Enterprise Linux 6 | kernel | Out of support scope | n/a |
| Red Hat Enterprise Linux 7 | kernel | Not affected | n/a |
| Red Hat Enterprise Linux 7 | kernel-rt | Not affected | n/a |
| Red Hat Enterprise Linux 8 | kernel | Not affected | n/a |
| Red Hat Enterprise Linux 8 | kernel-rt | Not affected | n/a |
| Red Hat Enterprise Linux 9 | kernel | Not affected | n/a |
| Red Hat Enterprise Linux 9 | kernel-rt | Not affected | n/a |
No package ranges for this CVE.
Remediation
No remediation recorded yet.
Metrics
No CVSS v4.0 score for this CVE.
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:N/I:N/A:H
1 other source (Red Hat) ▾
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
No CVSS v3.0 score for this CVE.
No CVSS v2.0 score for this CVE.
This CVE is not in the KEV list.
No CISA SSVC assessment for this CVE yet.
Estimated probability of exploitation in the wild in the next 30 days (FIRST EPSS). As of Oct 3, 2026.
Score over time
Jun–Oct 2026- EPSS v4
- EPSS v5
Percentile over time
- EPSS v4
- EPSS v5
Table of values (3 key points)
Flat stretches are collapsed; showing up to 120 newest points.
| Date | Score | Percentile | Model |
|---|---|---|---|
| Oct 3, 2026 | 0.19% (0.00186) | 7.40th | v5 (v2026.06.15) |
| Jun 15, 2026 | 0.13% (0.00129) | 2.82th | v5 (v2026.06.15) |
| Jun 10, 2026 | 0.02% (0.00018) | 4.78th | v4 (v2025.03.14) |
References (13)
- https://access.redhat.com/security/cve/CVE-2026-46321 Vendor Advisory
- https://bugzilla.redhat.com/show_bug.cgi?id=2486977 Issue Tracking
- https://git.kernel.org/stable/c/0a6f46a9332ad6958992d64d3b3a81a80b2ca940 Patch
- https://git.kernel.org/stable/c/0e8211fcf9426f5adddf32516ba0f400ceb9544d Patch
- https://git.kernel.org/stable/c/37a1c268c2c8090bf4dc552d732bd23ba36f8eb0 Patch
- https://git.kernel.org/stable/c/5b34f9e4fe2f203724a6e893d6df0316b9670057 Patch
- https://git.kernel.org/stable/c/69863ff2720a0e9871f1a5710f2a33a94217fee0 Patch
- https://git.kernel.org/stable/c/98c67be9eb9de72465a071949e84a3cdb8fab5a3 Patch
- https://git.kernel.org/stable/c/e915445942af6dcea628bf66d6241641201a0c41 Patch
- https://git.kernel.org/stable/c/f4feb1e20058e407cb00f45aff47f5b7e19a6bbf Patch
- https://lore.kernel.org/linux-cve-announce/2026060925-CVE-2026-46321-8e46@gregkh/T
- https://nvd.nist.gov/vuln/detail/CVE-2026-46321
- https://www.cve.org/CVERecord?id=CVE-2026-46321
Change history (0)
No recorded changes yet.