CVE-2026-90228 nvmet: fix NULL pointer dereference in nvmet_execute_identify_ns_zns()
A remote attacker can cause a kernel crash by sending a specific NVMe Identify command to a file-backed namespace, requiring the zoned block device configuration to be enabled.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-90228?
CVE-2026-90228 is a high-severity vulnerability in Linux, published on 17 Sep 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
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.
Which versions are affected by CVE-2026-90228?
How do I fix CVE-2026-90228?
Apply the vendor's patch.
Is CVE-2026-90228 being exploited?
There is no known exploitation of CVE-2026-90228 in the wild and no public exploit code.
Sources
Also known as AZL-102158, BELL-CVE-2026-90228, DEBIAN-CVE-2026-90228, GHSA-cxmg-vfm8-pw64, UBUNTU-CVE-2026-90228.