CVE-2026-53324: Linux MANA Driver Kernel Crash
A flaw in the Linux kernel's MANA network driver causes the system to crash when creating debugfs directories for network devices. The bug stems from unsafe naming logic: the code either uses a hardcoded name that multiple devices can share, or attempts to read device slot information that doesn't exist on virtual machines and some hardware configurations. When the kernel tries to create a debugfs directory with a duplicate or invalid name, the operation fails and triggers a crash. This affects systems using the MANA (Microsoft Azure Network Adapter) driver, particularly in virtualized environments like nested KVM or generic VFIO passthrough setups.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 5.5 MEDIUM · CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
- Weaknesses (CWE)
- CWE-476
- Affected products
- 1 configuration(s)
- Published / Modified
- 2026-06-26 / 2026-07-06
NVD description (verbatim)
In the Linux kernel, the following vulnerability has been resolved: net: mana: Use pci_name() for debugfs directory naming Use pci_name(pdev) for the per-device debugfs directory instead of hardcoded "0" for PFs and pci_slot_name(pdev->slot) for VFs. The previous approach had two issues: 1. pci_slot_name() dereferences pdev->slot, which can be NULL for VFs in environments like generic VFIO passthrough or nested KVM, causing a NULL pointer dereference. 2. Multiple PFs would all use "0", and VFs across different PCI domains or buses could share the same slot name, leading to -EEXIST errors from debugfs_create_dir(). pci_name(pdev) returns the unique BDF address, is always valid, and is unique across the system.
3 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-53324 is a NULL pointer dereference vulnerability in the Linux kernel's MANA network driver (net/ethernet/microsoft/mana). The root cause lies in the per-device debugfs directory naming logic. For physical functions (PFs), the code hardcoded the directory name as "0"; for virtual functions (VFs), it called pci_slot_name(pdev->slot) without null-checking pdev->slot. In many hypervisor configurations and nested virtualization scenarios, pdev->slot is NULL, causing a kernel dereference. Additionally, the hardcoded "0" approach creates collisions when multiple PFs are present, and pci_slot_name() can produce identical names for VFs across different PCI domains or buses. The fix replaces both approaches with pci_name(pdev), which returns a globally unique Bus:Device.Function (BDF) address that is always valid and guaranteed unique across the system.
Business impact
This vulnerability can cause unplanned system downtime in cloud environments and virtualized deployments that rely on the MANA driver. The crash occurs during device initialization or when the driver accesses debugfs, potentially affecting Azure cloud instances and on-premises hypervisor deployments using MANA NICs. While the impact is localized to availability (the crash prevents the affected network adapter from functioning), it can interrupt service and require system restart. Organizations running MANA-dependent infrastructure in nested KVM or VFIO passthrough configurations face elevated risk.
Affected systems
This vulnerability affects the Linux kernel with the MANA (Microsoft Azure Network Adapter) driver enabled. Primary targets include: Azure virtual machines using MANA NICs, Linux systems with VFIO-based device passthrough in hypervisor environments, nested KVM deployments, and any on-premises Linux infrastructure using MANA network adapters. The bug is triggered during driver initialization, so the vulnerability materializes immediately when a MANA device is brought up on an affected kernel version.
Exploitability
The vulnerability requires local access to trigger (the CVSS vector indicates local attack vector and low privilege requirement). An unprivileged user cannot directly exploit this, but any driver initialization event—such as a VM start, device hotplug, or udev rule that loads the MANA driver—can cause the kernel to crash if the naming collision or NULL dereference occurs. This is not a remote code execution pathway, but rather a denial-of-service condition that takes the network adapter offline and may crash the kernel itself.
Remediation
Apply a Linux kernel update that includes the fix to use pci_name(pdev) for debugfs directory naming in the MANA driver. Verify the fix is present in your kernel version through the Linux kernel git history or your distribution's security advisory. For systems that cannot immediately patch, the MANA driver can be disabled via kernel command-line parameters (intel_iommu=off or similar, depending on your hypervisor), though this removes the network adapter's functionality. Ensure your hypervisor and guest kernel versions are compatible and neither is in a nested virtualization configuration known to cause pdev->slot to be NULL.
Patch guidance
Patches are available in the upstream Linux kernel; verify the commit that resolves CVE-2026-53324 against the official Linux kernel repository (kernel.org). Distributions such as Red Hat, Debian, Ubuntu, and others will release kernel updates that backport this fix. Check your vendor's security advisory for the specific patched kernel version (e.g., verify against RHSA, DSA, or USN listings). Apply the update during your next scheduled maintenance window; the fix is low-risk and does not require configuration changes.
Detection guidance
Monitor kernel logs for debugfs errors and NULL pointer dereference messages related to the MANA driver (look for stack traces containing mana or debugfs_create_dir). On affected systems, the error may appear as "debugfs: cannot create directory" followed by -EEXIST or a kernel panic/oops. Test your environment by booting a test VM with MANA networking enabled on the current kernel version; a successful boot without kernel errors indicates the system is unaffected. Use kernel debugging tools (kdump, netconsole) to capture panic information if the crash occurs.
Why prioritize this
This medium-severity vulnerability (CVSS 5.5) should be prioritized for patching in environments that use MANA drivers, particularly cloud and virtualized deployments. The vulnerability is not in the CISA KEV catalog and is not known to be weaponized, but it has a low attack complexity and affects availability in a targeted use case. Organizations running on Azure or with MANA-dependent infrastructure should treat this as routine maintenance priority; others can include it in their standard patching cadence.
Risk score, explained
The CVSS 3.1 score of 5.5 (MEDIUM) reflects: local attack vector (only accessible on the system itself), low privilege requirement (driver initialization or user-level device operations), no user interaction needed, and high impact on availability (system crash). The vulnerability does not compromise confidentiality or integrity, which keeps the score in the medium range. The actual risk in your environment depends on whether MANA drivers are deployed and whether your hypervisor configuration triggers the NULL pointer path.
Frequently asked questions
Is this vulnerability exploitable remotely?
No. The vulnerability requires local access to the system and is triggered during driver initialization or device operations. It cannot be exploited over the network.
Will this crash affect my system if I don't use MANA network adapters?
No. The vulnerability is specific to the MANA driver. If your Linux systems use Intel, Broadcom, or other network adapters, they are not affected.
What is the difference between pci_name() and pci_slot_name()?
pci_name() returns the global Bus:Device.Function (BDF) address of a PCI device, which is always valid and unique across the system. pci_slot_name() depends on the device's slot pointer, which can be NULL in virtual machine and nested hypervisor environments, causing the crash. pci_name() is the safer, kernel-recommended approach.
If I'm on Azure, will my VM be automatically patched?
Azure typically applies critical kernel patches through Azure Update Management or during monthly patching cycles. Check with your cloud provider for their patching schedule and apply updates promptly to minimize risk.
This analysis is based on the CVE record and upstream Linux kernel documentation as of the publication date. CVSS scores, affected versions, and patch availability are subject to change. Verify all patch versions and compatibility with your specific kernel distribution before deploying updates. SEC.co does not provide warranty regarding the completeness or accuracy of this analysis; consult your vendor's security advisory and conduct testing in a non-production environment prior to production deployment. Source: NVD (public-domain), retrieved 2026-08-05. Analysis generated by SEC.co (claude-haiku-4-5).
Related vulnerabilities
- CVE-2025-71313MEDIUMLinux Kernel PCI Endpoint NULL Pointer Dereference
- CVE-2026-46118MEDIUMLinux Kernel PAPR Hypervisor Pipe Null Pointer Dereference (POWER Systems)
- CVE-2026-46127MEDIUMLinux Kernel OCRDMA Null Pointer Dereference (DoS)
- CVE-2026-46134MEDIUMLinux Kernel cros_ec Mutex Initialization DoS Vulnerability
- CVE-2026-46188MEDIUMLinux Octeon EP VF NULL Pointer Dereference Denial of Service
- CVE-2026-46211MEDIUMLinux Kernel MSM DRM NULL Pointer and Silent Error in gem_info_get_metadata
- CVE-2026-46216MEDIUMLinux Intel Arc GPU NULL Pointer Dereference (HDCP)
- CVE-2026-46222MEDIUMLinux Rockchip RKCam Driver Null Pointer Dereference