Get a Demo

Let's Patch It!

Book a short call with one our specialists, we'll walk you through how Endor Patches work, and ask you a few questions about your environment (like your primary programming languages and repository management). We'll also send you an email right after you fill out the form, feel free to reply with any questions you have in advance!

CVE

CVE-2026-89969

nvmet-tcp: fix out-of-bounds write when receiving an over-long PDU
Back to all
CVE

CVE-2026-89969

nvmet-tcp: fix out-of-bounds write when receiving an over-long PDU

In the Linux kernel, the following vulnerability has been resolved:

nvmet-tcp: fix out-of-bounds write when receiving an over-long PDU

nvmettcptryrecvpdu() reads a PDU header into the fixed 128-byte

queue->pdu union, then computes the remaining payload length as

queue->left = hdr->hlen - queue->offset + hdgst;

and reads that many more bytes into &queue->pdu + queue->offset, without

ever bounding the result against sizeof(queue->pdu).

A struct nvmetcpicreq_pdu is itself 128 bytes, exactly the size of the

union. Once a header digest has been negotiated (hdgst = 4), a second

ICReq passes the hlen == nvmettcppdu_size() check but yields

queue->left = 128 - 8 + 4 = 124, so bytes 8..132 are written into the

128-byte buffer -- 4 bytes past its end, over queue->hdr_digest and

queue->data_digest. Those bytes are attacker-controlled (an ICReq

carries no digest), and the duplicate ICReq is only rejected later,

after the overflow. A remote unauthenticated host can thus corrupt

kernel memory adjacent to the receive buffer.

Reject any PDU whose declared length would read past the end of

queue->pdu before the second recv.

Package Versions Affected

Package Version
patch Availability
No items found.

Automatically patch vulnerabilities without upgrading

Fix Without Upgrading
Detect compatible fix
Apply safe remediation
Fix with a single pull request

CVSS Version

Severity
Base Score
CVSS Version
Score Vector
C
H
U
9.8
-
3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
C
H
U
0
-
3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
C
H
U
-

Related Resources

No items found.

References

https://git.kernel.org/stable/c/14cc5a7e77731497d5bea70f3bb05df7eda982e4, https://git.kernel.org/stable/c/3a385e0c39efbe34db8edd95900c123113ae3450, https://git.kernel.org/stable/c/4f84d42c53c49557fb1ef285c683b0a81b576c74, https://git.kernel.org/stable/c/58dc6035b79c4c73c0cbf9ec9f68a7f117b2b3e6, https://git.kernel.org/stable/c/a3f0bcfbaf3312a5754d1ce020a07d394669eb25, https://git.kernel.org/stable/c/cf5f39d2b58f97e0cd1829c4a6aeef17f1607cca, https://git.kernel.org/stable/c/d95d342bc0ea82dc79e6362b2f1f997431750e4c, https://git.kernel.org/stable/c/dbc4acbdb3ca8c81441368ad7409b8f77d4de8f6, https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/89xxx/CVE-2026-89969.json, https://nvd.nist.gov/vuln/detail/CVE-2026-89969, https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Severity

9.8

CVSS Score
0
10

Basic Information

Base CVSS
9.8
EPSS Probability
0.00755%
EPSS Percentile
0.53823%
Introduced Version
872d26a391da92ed8f0c0f5cb5fef428067b7f30,5.0.0,5.11.0,5.16.0,6.2.0,6.7.0,6.13.0,6.19.0,0
Fix Available
14cc5a7e77731497d5bea70f3bb05df7eda982e4,5.10.270,5.15.221,6.1.188,6.6.157,6.12.110,6.18.51,7.2.5,6.12.111-1~deb12u1,6.12.111-1,0:6.12.0-207.111.5.1.el9uek,0:6.12.0-207.111.5.1.el10uek

Fix Critical Vulnerabilities Instantly

Secure your app without upgrading.
Fix Without Upgrading