MEDIUM 5.5

CVE-2026-53297: Linux Kernel MANA Driver Null Pointer Dereference DoS

A flaw in the Linux kernel's Azure Ethernet driver (MANA) can cause the system to crash if device resume fails during power management operations. When the driver attempts to recover from a failed resume, it cleans up resources and sets internal pointers to NULL. However, if the device is later disconnected, the driver's removal code runs again without checking whether those pointers are already NULL, leading to a null pointer dereference and kernel panic. This is a reliability issue that affects system stability on affected Azure hardware.

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-08

NVD description (verbatim)

In the Linux kernel, the following vulnerability has been resolved: net: mana: Guard mana_remove against double invocation If PM resume fails (e.g., mana_attach() returns an error), mana_probe() calls mana_remove(), which tears down the device and sets gd->gdma_context = NULL and gd->driver_data = NULL. However, a failed resume callback does not automatically unbind the driver. When the device is eventually unbound, mana_remove() is invoked a second time. Without a NULL check, it dereferences gc->dev with gc == NULL, causing a kernel panic. Add an early return if gdma_context or driver_data is NULL so the second invocation is harmless. Move the dev = gc->dev assignment after the guard so it cannot dereference NULL.

3 reference(s) · View on NVD →

SEC.co analysis · AI-assisted, reviewed against source

Technical summary

CVE-2026-53297 is a null pointer dereference in the Linux kernel's MANA (Microsoft Azure Network Adapter) driver's mana_remove() function. The vulnerability occurs when PM resume fails and triggers mana_remove() via mana_probe() error handling, setting gdma_context and driver_data to NULL. If the device is subsequently unbound without being automatically released, mana_remove() is invoked a second time. The second invocation dereferences gc->dev without checking whether gc is NULL, causing a kernel panic. The fix adds an early return guard if gdma_context or driver_data is NULL, and relocates the dev assignment after the guard to prevent null pointer access.

Business impact

This vulnerability impacts service availability on systems running affected Linux kernel versions with Azure MANA hardware. In cloud environments or datacenter deployments using Azure accelerated networking, a failed resume event followed by device unbind can trigger an unplanned kernel panic, causing loss of connectivity and service downtime. The impact is localized to affected systems but can cascade if the panic affects clustering or failover behavior. Organizations relying on Azure VMs with MANA NICs should prioritize patching to prevent unexpected outages.

Affected systems

The vulnerability affects systems running Linux kernels with the MANA driver implementation. This includes Azure virtual machines and bare-metal systems configured with Microsoft Azure Network Adapter hardware. The issue manifests only when power management resume operations fail and the device is subsequently unbound—a relatively specific but realistic failure path in cloud environments where VMs are suspended, migrated, or undergo hardware state transitions.

Exploitability

This is not a remotely exploitable vulnerability. Exploitation requires local system access and the ability to trigger a power management resume failure followed by device unbinding. The attack surface is limited to scenarios involving intentional or incidental power state transitions combined with driver error conditions. In normal operation without forced resume failures, the vulnerability may not manifest, but organizations should not rely on this for risk management.

Remediation

Apply a patched Linux kernel version that includes the NULL pointer check guard in mana_remove(). The fix is straightforward: adding an early return if gdma_context or driver_data is NULL, and moving the dev assignment after the guard. Verify the patch is included in the specific kernel version used in your environment by checking vendor advisories or the kernel changelog. No workaround is available; patching is the only mitigation.

Patch guidance

Obtain the patched kernel version from your Linux distribution (Red Hat, Ubuntu, SUSE, etc.) or compile from the upstream Linux kernel source after the fix date. The patch is minimal and low-risk; it adds a NULL check and reorders one assignment. Test the patched kernel in a non-production environment first, particularly if you use Azure MANA hardware or perform frequent power management operations. Coordinate deployment with your infrastructure team to minimize disruption, especially in cloud environments where kernel updates may require VM reboots.

Detection guidance

Monitor for kernel panics mentioning mana_remove or null pointer dereference in MANA driver code. Collect kernel logs and dmesg output from systems with Azure MANA hardware, especially those undergoing power management transitions or VM migration. Set up alerts for kernel panic messages containing references to mana.c or gdma_context NULL dereferences. If you observe such panics in your environment, immediately escalate to patching and consider temporarily disabling aggressive power management or device state transitions until updated.

Why prioritize this

Although the CVSS score is moderate (5.5), this vulnerability should be prioritized for organizations operating Azure cloud infrastructure or Azure-connected hardware. The impact is high in affected contexts because kernel panics directly cause service unavailability. The likelihood is moderate because it requires a specific failure sequence (resume failure plus unbind), but that sequence can occur during routine cloud operations, hardware maintenance, or VM migration. The fix is simple and low-risk, making remediation straightforward.

Risk score, explained

The CVSS 3.1 score of 5.5 (MEDIUM) reflects local attack vector, low privileges required, no special conditions, and high availability impact. The score appropriately captures that this is a reliability issue affecting local systems without confidentiality or integrity consequences. For organizations in scope (Azure infrastructure operators), the actual risk may be perceived as higher due to availability impact in production environments, justifying expedited patching despite the moderate CVSS rating.

Frequently asked questions

Does this vulnerability affect all Linux systems or only those with Azure hardware?

Only systems with Microsoft Azure Network Adapter (MANA) hardware and the corresponding Linux kernel driver are affected. Standard Linux systems with other network adapters are not vulnerable. If you are unsure whether your systems use MANA, check your hardware configuration or cloud provider documentation.

Can this be exploited remotely, or does it require local access?

This is not remotely exploitable. An attacker would need local system access and the ability to trigger a specific sequence of power management and device binding events. In most scenarios, this is a reliability issue triggered by system events rather than a security weakness.

What happens if we don't patch—is my system at risk of crashing?

Only if you experience a failed PM resume operation followed by device unbinding. In stable operating conditions, the vulnerability may not manifest. However, during VM migration, suspension, hardware transitions, or recovery from power management failures, the risk of triggering a kernel panic increases. Patching removes the risk entirely.

Is there a temporary workaround while we prepare patches?

No supported workaround exists. The only mitigation is to avoid power management state transitions or device rebinding on affected systems, which is impractical. Patching is strongly recommended and is the only reliable fix.

This analysis is based on the published CVE record and technical description as of the date provided. Specific patch version numbers, affected kernel versions, and distribution-specific patch timelines should be verified against official vendor advisories and security bulletins. Organizations should test patches in non-production environments before deployment. SEC.co makes no warranty regarding the completeness or accuracy of this analysis and recommends consulting official Linux kernel security resources and your cloud provider's security documentation for comprehensive risk assessment. Source: NVD (public-domain), retrieved 2026-08-05. Analysis generated by SEC.co (claude-haiku-4-5).