CVE-2026-89480 json
nvme-tcp: reject a read that transferred too few bytes
published 2026-09-11 58 d ago modified 2026-10-30 9 d ago also EUVD-2026-76386
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 37%
- public exploits
- 0
- none known
Summary
In the Linux kernel, the following vulnerability has been resolved:
nvme-tcp: reject a read that transferred too few bytes
nvme_tcp_recv_data() completes a request once the current C2HData PDU has been consumed. Nothing compares the total bytes received against the length the command asked for: struct nvme_tcp_request has no receive-side counter, queue->data_remaining is per queue, and blk_mq_end_request() completes for blk_rq_bytes(rq) unconditionally with no residual concept anywhere above.
A controller can therefore answer a 4096-byte read with 512 bytes and have it reported as a complete read; user space then gets 4096 bytes of which 3584 are whatever was already in the page. I reproduced that with a test target.
Count the bytes received and refuse to complete a successful read whose count does not match, at the two NVME_TCP_F_DATA_SUCCESS paths and in nvme_tcp_process_nvme_cqe(). The success test shifts req->status right by one, because the driver keeps the wire value there and shifts it on completion, so the check must see what the completion path will see. Only REQ_OP_READ is checked, because there the length comes from the sectors the request covers; a passthrough command is built by its submitter, which picks both command and buffer, so the kernel has nothing to compare against.
Patch / fix
- Linux Linux 5.10.273, 5.15.221, 6.1.188, 6.6.157, 6.12.109, 6.18.50, 7.2.4, 7.3
- linux Debian 12 6.1.190-1
- linux Debian 13 6.12.111-1
- linux Debian 14 7.2.6-1
- linux-6.12 Debian 12 6.12.111-1~deb12u1
debian advisories DEBIAN-CVE-2026-89480
- linux Ubuntu 22.04 LTS 5.15.0-202.212
- linux Ubuntu 26.04 LTS 7.0.0-42.42
- linux-aws Ubuntu 22.04 LTS 5.15.0-1119.126
- linux-aws Ubuntu 26.04 LTS 7.0.0-1016.17
- linux-gcp Ubuntu 22.04 LTS 5.15.0-1120.130
- linux-gcp Ubuntu 26.04 LTS 7.0.0-1016.18
- linux-gke Ubuntu 22.04 LTS 5.15.0-1115.121
- linux-ibm Ubuntu 22.04 LTS 5.15.0-1113.117
ubuntu advisories UBUNTU-CVE-2026-89480
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel RHEL 9 5.14.0-687.55.1.el9_8
- rv RHEL 9 5.14.0-687.55.1.el9_8
- perf RHEL 9 5.14.0-687.55.1.el9_8
- rtla RHEL 9 5.14.0-687.55.1.el9_8
- libperf RHEL 9 5.14.0-687.55.1.el9_8
- kernel-rt RHEL 9 5.14.0-687.55.1.el9_8
- kernel-64k RHEL 9 5.14.0-687.55.1.el9_8
- kernel-core RHEL 9 5.14.0-687.55.1.el9_8
red hat advisories RHSA-2026:76739RHSA-2026:72624RHSA-2026:71329RHSA-2026:71330
- kernel-64kb SLE Module for Basesystem 15 SP7 6.4.0-150700.53.84.1
- kernel-syms SLE Module for Development Tools 15 SP7 6.4.0-150700.53.84.1
- kernel-azure SLE Module for Public Cloud 15 SP7 6.4.0-150700.53.84.1
- kernel-source SLE Module for Development Tools 15 SP7, SLE Module for Basesystem 15 SP7 6.4.0-150700.53.84.1
- kernel-default SLE Workstation Extension 15 SP7, SLE Module for Legacy 15 SP7, SLE Module for Basesystem 15 SP7 +2 more 6.4.0-150700.53.84.1
- kernel-zfcpdump SLE Module for Basesystem 15 SP7 6.4.0-150700.53.84.1
- kernel-obs-build SLE Module for Development Tools 15 SP7 6.4.0-150700.53.84.1
- kernel-default-base SLE Module for Basesystem 15 SP7 6.4.0-150700.53.84.1.150700.17.47.1
suse advisories SUSE-SU-2026:4706-1SUSE-SU-2026:4687-1SUSE-SU-2026:4640-1SUSE-SU-2026:24316-1SUSE-SU-2026:24315-1SUSE-SU-2026:24181-1
- kernel-rt openSUSE Leap 16.0 6.12.0-160000.39.1
- dtb-aarch64 openSUSE Leap 16.0 6.12.0-160000.39.1
- kernel-64kb openSUSE Leap 16.0 6.12.0-160000.39.1
- kernel-syms openSUSE Leap 16.0 6.12.0-160000.39.1
- kernel-azure openSUSE Leap 16.0 6.12.0-160000.39.1
- kernel-obs-qa openSUSE Leap 16.0 6.12.0-160000.39.1
- kernel-source openSUSE Leap 16.0 6.12.0-160000.39.1
- kernel-default openSUSE Leap 16.0 6.12.0-160000.39.1
opensuse advisories openSUSE-SU-2026:22091-1openSUSE-SU-2026:11880-1
- kernel AlmaLinux 10 6.12.0-211.61.1.el10_2
- rv AlmaLinux 10 6.12.0-211.61.1.el10_2
- perf AlmaLinux 10 6.12.0-211.61.1.el10_2
- rtla AlmaLinux 10 6.12.0-211.61.1.el10_2
- libperf AlmaLinux 10 6.12.0-211.61.1.el10_2
- kernel-rt AlmaLinux 10 6.12.0-211.61.1.el10_2
- kernel-64k AlmaLinux 10 6.12.0-211.61.1.el10_2
- kernel-core AlmaLinux 10 6.12.0-211.61.1.el10_2
almalinux advisories ALSA-2026:72624ALSA-2026:71329ALSA-2026:71330
- kernel Rocky Linux 10 6.12.0-211.61.1.el10_2
- kernel-rt Rocky Linux 8 4.18.0-553.168.1.rt7.509.el8_10
- kernel Rocky Linux 8 4.18.0-553.168.1.el8_10
rocky linux advisories RLSA-2026:72624RLSA-2026:71330RLSA-2026:71329
- kernel Azure Linux 3.0 6.6.157.1-1
azure linux advisories AZL-100577
Azure Linux vulnerability data, Copyright (c) Microsoft Corporation, from https://github.com/microsoft/AzureLinuxVulnerabilityData via OSV, under the MIT licence; changed: normalised to fixed package versions per release. MIT
- git.kernel.org/stable/c/b674af31d044a86bd094ba8bb8f2bb92fb49aac5 commit
- git.kernel.org/stable/c/a5c1bb0fb1bab2f24a081339c145870697f6d220 commit
- git.kernel.org/stable/c/aa107e3a68f4af177d60f2d87679e7f67179a36c commit
- git.kernel.org/stable/c/fca3ebb63e5c82561cd9934365dcc0d068008006 commit
- git.kernel.org/stable/c/99066cf9bba175f610ceb61a35f6fc9fbc33ff65 commit
- git.kernel.org/stable/c/8a02ad98798fd01f51f648c1fdd8f3c9d07195d3 commit
- git.kernel.org/stable/c/832a685efeb5d925ee7d30011d2dbe45f81447a3 commit
- git.kernel.org/stable/c/7fa3f73f6c8ddc5f0425b50fb2a626a782ef7d12 commit
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-89480 updated cvss 7.0
kernel: nvme-tcp: reject a read that transferred too few bytes
-
Red Hat Enterprise Linux 9 kernel-rt, kernel-rt-kvm, kernel-rt-core, kernel-rt-modules, kernel-rt-debug-kvm, kernel-rt-debug-core, +12 more Red Hat OpenShift Container Platform 4 openshift/ose-rhel-coreos-8 Red Hat OpenShift Container Platform 5 openshift/ose-rhel-coreos-9affected: workaround, no fix available
-
Red Hat Enterprise Linux AppStream (v. 9) rv 5.14.0-687.55.1.el9_8, perf 5.14.0-687.55.1.el9_8, rtla 5.14.0-687.55.1.el9_8, python3-perf 5.14.0-687.55.1.el9_8, kernel-devel-matched 5.14.0-687.55.1.el9_8, kernel-64k-devel-matched 5.14.0-687.55.1.el9_8, +7 morefixed: vendor fix RHSA-2026:76739
-
Red Hat Enterprise Linux AppStream (v. 10) rv 6.12.0-211.61.1.el10_2, perf 6.12.0-211.61.1.el10_2, rtla 6.12.0-211.61.1.el10_2, python3-perf 6.12.0-211.61.1.el10_2, kernel-devel-matched 6.12.0-211.61.1.el10_2, kernel-64k-devel-matched 6.12.0-211.61.1.el10_2, +7 morefixed: vendor fix RHSA-2026:72624
-
Red Hat Enterprise Linux BaseOS (v. 8) perf 4.18.0-553.168.1.el8_10, kernel 4.18.0-553.168.1.el8_10, bpftool 4.18.0-553.168.1.el8_10, kernel-core 4.18.0-553.168.1.el8_10, kernel-tools 4.18.0-553.168.1.el8_10, python3-perf 4.18.0-553.168.1.el8_10, +15 morefixed: vendor fix RHSA-2026:71329
-
Red Hat Enterprise Linux BaseOS (v. 9) kernel 5.14.0-687.55.1.el9_8, kernel-64k 5.14.0-687.55.1.el9_8, kernel-core 5.14.0-687.55.1.el9_8, kernel-tools 5.14.0-687.55.1.el9_8, kernel-modules 5.14.0-687.55.1.el9_8, kernel-64k-core 5.14.0-687.55.1.el9_8, +27 morefixed: vendor fix RHSA-2026:76739
-
Red Hat Enterprise Linux BaseOS (v. 10) kernel 6.12.0-211.61.1.el10_2, kernel-64k 6.12.0-211.61.1.el10_2, kernel-core 6.12.0-211.61.1.el10_2, kernel-tools 6.12.0-211.61.1.el10_2, kernel-modules 6.12.0-211.61.1.el10_2, kernel-64k-core 6.12.0-211.61.1.el10_2, +28 morefixed: vendor fix RHSA-2026:72624
-
Red Hat Enterprise Linux CodeReady Linux Builder (v. 9) libperf 5.14.0-687.55.1.el9_8, kernel-debuginfo-common-s390x 5.14.0-687.55.1.el9_8, kernel-debuginfo-common-x86_64 5.14.0-687.55.1.el9_8, kernel-debuginfo-common-aarch64 5.14.0-687.55.1.el9_8, kernel-debuginfo-common-ppc64le 5.14.0-687.55.1.el9_8fixed: vendor fix RHSA-2026:76739
-
Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) libperf 6.12.0-211.61.1.el10_2, kernel-debuginfo-common-s390x 6.12.0-211.61.1.el10_2, kernel-debuginfo-common-x86_64 6.12.0-211.61.1.el10_2, kernel-debuginfo-common-aarch64 6.12.0-211.61.1.el10_2, kernel-debuginfo-common-ppc64le 6.12.0-211.61.1.el10_2fixed: vendor fix RHSA-2026:72624
show 9 moreshow fewer
-
Red Hat Enterprise Linux CRB (v. 8) kernel-debuginfo-common-x86_64 4.18.0-553.168.1.el8_10, kernel-debuginfo-common-aarch64 4.18.0-553.168.1.el8_10, kernel-debuginfo-common-ppc64le 4.18.0-553.168.1.el8_10fixed: vendor fix RHSA-2026:71329
-
Red Hat Enterprise Linux NFV (v. 8) kernel-rt 4.18.0-553.168.1.rt7.509.el8_10, kernel-rt-kvm 4.18.0-553.168.1.rt7.509.el8_10, kernel-rt-core 4.18.0-553.168.1.rt7.509.el8_10, kernel-rt-modules 4.18.0-553.168.1.rt7.509.el8_10, kernel-rt-debug-kvm 4.18.0-553.168.1.rt7.509.el8_10, kernel-rt-debug-core 4.18.0-553.168.1.rt7.509.el8_10, +4 morefixed: vendor fix RHSA-2026:71330
-
Red Hat Enterprise Linux Real Time (v. 9) kernel-rt 5.14.0-687.55.1.el9_8, kernel-rt-64k 5.14.0-687.55.1.el9_8, kernel-rt-core 5.14.0-687.55.1.el9_8, kernel-rt-modules 5.14.0-687.55.1.el9_8, kernel-rt-64k-core 5.14.0-687.55.1.el9_8, kernel-rt-debug-core 5.14.0-687.55.1.el9_8, +14 morefixed: vendor fix RHSA-2026:76739
-
Red Hat Enterprise Linux Real Time (v. 10) kernel-rt 6.12.0-211.61.1.el10_2, kernel-rt-64k 6.12.0-211.61.1.el10_2, kernel-rt-core 6.12.0-211.61.1.el10_2, kernel-rt-modules 6.12.0-211.61.1.el10_2, kernel-rt-64k-core 6.12.0-211.61.1.el10_2, kernel-rt-debug-core 6.12.0-211.61.1.el10_2, +14 morefixed: vendor fix RHSA-2026:72624
-
Red Hat Enterprise Linux Real Time for NFV (v. 9) kernel-rt 5.14.0-687.55.1.el9_8, kernel-rt-core 5.14.0-687.55.1.el9_8, kernel-rt-modules 5.14.0-687.55.1.el9_8, kernel-rt-debug-core 5.14.0-687.55.1.el9_8, kernel-rt-modules-core 5.14.0-687.55.1.el9_8, kernel-rt-debug-modules 5.14.0-687.55.1.el9_8, +4 morefixed: vendor fix RHSA-2026:76739
-
Red Hat Enterprise Linux Real Time for NFV (v. 10) kernel-rt 6.12.0-211.61.1.el10_2, kernel-rt-core 6.12.0-211.61.1.el10_2, kernel-rt-modules 6.12.0-211.61.1.el10_2, kernel-rt-debug-core 6.12.0-211.61.1.el10_2, kernel-rt-modules-core 6.12.0-211.61.1.el10_2, kernel-rt-debug-modules 6.12.0-211.61.1.el10_2, +4 morefixed: vendor fix RHSA-2026:72624
-
Red Hat Enterprise Linux RT (v. 8) kernel-rt 4.18.0-553.168.1.rt7.509.el8_10, kernel-rt-core 4.18.0-553.168.1.rt7.509.el8_10, kernel-rt-modules 4.18.0-553.168.1.rt7.509.el8_10, kernel-rt-debug-core 4.18.0-553.168.1.rt7.509.el8_10, kernel-rt-debug-modules 4.18.0-553.168.1.rt7.509.el8_10, kernel-rt-modules-extra 4.18.0-553.168.1.rt7.509.el8_10, +2 morefixed: vendor fix RHSA-2026:71330
-
Red Hat OpenShift Container Platform 4.22 rhcos 4.22.9.8.202610241758fixed: vendor fix RHSA-2026:89197
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 morenot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 23 d ago
Exploit prediction
0.43% chance of exploitation in the next 30 days, higher than 37% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
Affected products
- Linux Linux
Classification
- Technology feeds
References
- git.kernel.org /stable/c/b674af31d044a86bd094ba8bb8f2bb92fb49aac5
- git.kernel.org /stable/c/a5c1bb0fb1bab2f24a081339c145870697f6d220
- git.kernel.org /stable/c/aa107e3a68f4af177d60f2d87679e7f67179a36c
- git.kernel.org /stable/c/fca3ebb63e5c82561cd9934365dcc0d068008006
- git.kernel.org /stable/c/99066cf9bba175f610ceb61a35f6fc9fbc33ff65
- git.kernel.org /stable/c/8a02ad98798fd01f51f648c1fdd8f3c9d07195d3
- git.kernel.org /stable/c/832a685efeb5d925ee7d30011d2dbe45f81447a3
- git.kernel.org /stable/c/7fa3f73f6c8ddc5f0425b50fb2a626a782ef7d12
Sources
- CVE List CVE-2026-89480
- NVD CVE-2026-89480
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.