KernelScan.io

HIGH Introduced in 5.14

nvmet IdentifyNs Deref

CVE-2026-90228

CVSS 7.5 / 10.0 NVD

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

KernelScan AI7.5HIGH

01

In the Linux kernel, the following vulnerability has been resolved: nvmet: fix NULL pointer dereference in nvmet_execute_identify_ns_zns() When a host issues an Identify command with CNS 05h (I/O Command Set specific Identify Namespace) and CSI 02h (ZNS) targeting a file-backed namespace, nvmet_execute_identify_ns_zns() calls bdev_is_zoned() on req->ns->bdev. A file-backed namespace has no block device, so req->ns->bdev is NULL and bdev_is_zoned() dereferences it, oopsing. The I/O command set is selected by the host-supplied CSI field and the command is routed here whenever CONFIG_BLK_DEV_ZONED is enabled, independent of the namespace backing type, so any file-backed namespace is exposed. Reject the command with Invalid Field when the namespace is not backed by a block device.

02

Engine v0.6.0

Risk summary

A remote NVMe-oF host can crash the kernel of a target system by sending a crafted Identify command with ZNS command-set identifier against any file-backed namespace. The crash occurs because the ZNS identify handler dereferences a NULL block-device pointer for file-backed namespaces. Any system running the NVMe-oF target with CONFIG_BLK_DEV_ZONED enabled and at least one file-backed namespace is vulnerable.

Affecteddrivers/nvme/target/zns.c (nvmet ZNS backend)

Vulnerability analysis

When an NVMe-oF host sends an Identify command using the ZNS command-set identifier against a namespace backed by a file rather than a block device, the ZNS identify handler calls a function that expects a block device pointer. File-backed namespaces have no block device, so the pointer is NULL and the kernel dereferences it, causing an oops or panic. The fix adds a check that rejects the command with an Invalid Field error when the namespace has no block device backing. The vulnerability is reachable by any network-connected NVMe-oF client when the target has CONFIG_BLK_DEV_ZONED enabled and at least one file-backed namespace configured; no special privileges are required on the client side.

03

BranchIntroducedFixed inPatch commit
5.155.145.15.2211ce8faf90eb0
6.15.146.1.188b873099944da
6.65.146.6.157ff28a93a8959
6.125.146.12.110cc29f7082b7a
6.185.146.18.521fb1236312ee
7.25.147.2.60b4cf43f9ca7
mainline5.147.3-rc1f594863967d8
cip/6.125.146.12.111-cip32cc29f7082b7a