CVE-2026-22998High· 7.5▾ TwilightIn the Linux kernel, the following vulnerability has been resolved: nvme-tcp: fix NULL pointer dereferences in nvmet_tcp_build_pdu_iovec Commit efa56305908b ("nvmet-tcp: Fix a kernel panic when host sends an invalid H2C PDU length") ad…
▾ Twilight zone — High severity, or a signal on a lesser flaw
impact 41.3 · likelihood 0.2 · exploitation 0
Need a working PoC? Pro members can cast a request and our team develops one — it lands right here.
Stakeholder-Specific Vulnerability Categorization from CISA's ADP record at CVE.org: whether exploitation is observed, whether an attack can be automated, and how much of the system is at stake. The CVSS score shown above comes from the assigning CNA record, not NVD.
Disclosure to exploitation, from the record and what we observed since indexing it.
Disclosed via CVEORG
Last analysed / modified upstream
0.8%
In the Linux kernel, the following vulnerability has been resolved:
nvme-tcp: fix NULL pointer dereferences in nvmet_tcp_build_pdu_iovec
Commit efa56305908b ("nvmet-tcp: Fix a kernel panic when host sends an invalid H2C PDU length") added ttag bounds checking and data_offset validation in nvmet_tcp_handle_h2c_data_pdu(), but it did not validate whether the command's data structures (cmd->req.sg and cmd->iov) have been properly initialized before processing H2C_DATA PDUs.
The nvmet_tcp_build_pdu_iovec() function dereferences these pointers without NULL checks. This can be triggered by sending H2C_DATA PDU immediately after the ICREQ/ICRESP handshake, before sending a CONNECT command or NVMe write command.
Attack vectors that trigger NULL pointer dereferences:
The fix validates both cmd->req.sg and cmd->iov before calling nvmet_tcp_build_pdu_iovec(). Both checks are required because:
Linux >= f775f2621c2ac5cc3a0b3a64665dad4fb146e510 < baabe43a0edefac8cd7b981ff87f967f6034dafeLinux >= 4cb3cf7177ae3666be7fb27d4ad4d72a295fb02d < 76abc83a9d25593c2b7613c549413079c14a4686Linux >= 2871aa407007f6f531fae181ad252486e022df42 < 7d75570002929d20e40110d6b03e46202c9d1bc7Linux >= 24e05760186dc070d3db190ca61efdbce23afc88 < fdecd3b6aac10d5a18d0dc500fe57f8648b66cd4Linux >= efa56305908ba20de2104f1b8508c6a7401833be < 3def5243150716be86599c2a1767c29c68838b6dLinux >= efa56305908ba20de2104f1b8508c6a7401833be < 374b095e265fa27465f34780e0eb162ff1bef913Linux >= efa56305908ba20de2104f1b8508c6a7401833be < 32b63acd78f577b332d976aa06b56e70d054cbbaLinux ee5e7632e981673f42a50ade25e71e612e543d9dLinux 70154e8d015c9b4fb56c1a2ef1fc8b83d45c7f68Linux >= 5.10.209 < 5.10.249Linux >= 5.15.148 < 5.15.199Linux >= 6.1.75 < 6.1.162Linux >= 6.6.14 < 6.6.122Linux >= 5.4.268 < 5.5Linux >= 6.7.2 < 6.8Linux 6.8Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
Connected by shared product, vendor, weakness, or advisory.
CVE-2026-98770Noneusb: gadget: midi2: Fix the jack descriptor array sizes
CVE-2026-98769Noneusb: gadget: f_uac1_legacy: validate bRequest index in generic_{set,get}_cmd
CVE-2026-98774Nonerust_binder: cancel deferred work items in thread exit
CVE-2026-98772NoneUSB: serial: fix port tear down use-after-free
CVE-2026-98771Noneusb: storage: sierra_ms: reject short SWoC info transfers
CVE-2026-98776Nonebinderfs: fix UAF write in binder_add_device