CVE-2026-53338
Medium · 5.5CVSS
5.5
EPSS
0.1%
Published
Jul 1, 2026
CISA due date
—
Cloudanix analysis
Some Linux-based devices using specific Airoha networking hardware can crash if they start with a missing or incorrect memory configuration.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- Moderate
- Impact
- Denial Of Service
- Component
- OS kernel
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Medium
What it actually does
This is a local denial-of-service flaw in the Linux kernel Airoha networking driver. During Airoha QDMA hardware-forwarding queue initialization, the driver calls of_reserved_mem_lookup() for a device-tree memory-region reference and then dereferences the returned pointer without verifying that it is non-NULL. If the referenced reserved-memory entry is missing, malformed, or otherwise not present, the kernel can hit a NULL pointer dereference while reading rmem->base or rmem->size, causing an oops, panic, driver initialization failure, or system crash depending on kernel panic settings and platform configuration.
Why it matters to the business
Affected Linux systems using the Airoha networking driver can become unavailable if the vulnerable initialization path is reached with an invalid or missing reserved-memory configuration. The main risk is operational disruption on embedded, networking, router, gateway, or appliance platforms that rely on this driver. This issue is not listed in CISA KEV, has very low EPSS, and has no reported exploit maturity in the provided data, so broad internet-scale exploitation is unlikely; however, organizations with affected hardware should still remediate during normal kernel maintenance because the outcome can be a full system outage.
How an attack unfolds
An attacker needs local influence over conditions that cause the vulnerable Airoha driver initialization path to execute with a missing or invalid device-tree reserved memory reference. In realistic scenarios, this may involve a user with sufficient local privileges to load, reload, bind, unbind, or trigger probing of the affected driver, or to introduce or boot a kernel/device-tree configuration where the memory-region phandle points to a reserved-memory node that is absent from the reserved memory table. When the driver initializes hardware-forwarding queues, of_reserved_mem_lookup() returns NULL. The vulnerable code then dereferences that NULL pointer while calculating DMA address or descriptor count, leading to a kernel NULL pointer dereference and potential crash. There is no indication from the supplied intelligence that this vulnerability is being exploited in the wild or used by ransomware campaigns.
How to fix it
Apply a Linux kernel update from the relevant distribution, hardware vendor, or stable kernel branch that includes the fix adding a NULL check after of_reserved_mem_lookup() in airoha_qdma_init_hfwd_queues() and returning -ENODEV when reserved memory lookup fails. No exact fixed version was provided in the input, so use vendor advisories, package changelogs, or upstream stable kernel notes to identify the first patched build for each distribution or appliance image. If immediate patching is not possible, mitigate by ensuring device-tree configurations for Airoha devices contain valid memory-region references and matching reserved-memory nodes, avoiding untrusted or ad hoc device-tree overlays, disabling or blacklisting the affected Airoha driver where it is not required, and limiting local administrative capabilities that allow driver reloads, module loading, or boot configuration changes.
How to confirm the fix worked
Confirm remediation by verifying that the running kernel package or appliance firmware includes the Airoha driver patch for airoha_qdma_init_hfwd_queues(). Review vendor changelogs or source to confirm a NULL check exists after of_reserved_mem_lookup() and that failure returns -ENODEV before rmem->base or rmem->size is accessed. On affected platforms, validate that device-tree entries referencing memory-region for the Airoha device resolve to valid reserved-memory nodes. After patching or mitigation, reboot or reload according to vendor guidance and confirm the system no longer produces kernel oops or panic messages when the Airoha driver initializes. Also verify that unused affected drivers are not loaded if they have been disabled as a mitigation.
Typical attack path
- Identify a Linux system running affected kernel code with the Airoha networking driver enabled and relevant Airoha hardware or device-tree configuration.
- Gain local access with enough privileges to influence driver probing, module loading, device binding, reboot configuration, or device-tree/kernel configuration.
- Create or trigger a condition where the device-tree memory-region reference exists but the corresponding reserved-memory lookup fails.
- Cause the Airoha QDMA initialization path to run, such as through boot, device probe, driver reload, or device rebind.
- The kernel dereferences a NULL reserved-memory pointer during queue initialization.
- The system logs a kernel oops or panic and may crash, reboot, or lose networking availability.
How to detect it
To determine whether this was already triggered, review kernel logs and persistent journal data for oops, panic, call trace, or NULL pointer dereference events around Airoha driver initialization. Useful sources include dmesg output, /var/log/kern.log, /var/log/messages, /var/log/syslog, systemd-journald kernel records, crash dump directories, kdump/vmcore metadata, appliance support bundles, and remote syslog from embedded network devices. Look for call traces containing airoha_qdma_init_hfwd_queues, of_reserved_mem_lookup, airoha, qdma, reserved memory, or memory-region, especially followed by reboot, watchdog reset, interface loss, or kernel panic. Also inspect boot history for repeated crashes during driver probe and compare timestamps with administrative actions such as kernel upgrades, firmware changes, module reloads, driver rebinding, or device-tree overlay changes. There are no known threat actors or in-the-wild exploitation details in the supplied input, so detection should focus on local crash artifacts rather than network indicators.
- airoha_qdma_init_hfwd_queues
- of_reserved_mem_lookup
- Unable to handle kernel NULL pointer dereference
- BUG: kernel NULL pointer dereference
- Oops:
- Kernel panic - not syncing
- Call Trace:
- airoha
- qdma
- memory-region
- reserved-memory
- rmem->base
- rmem->size
- /var/log/kern.log
- /var/log/messages
- /var/log/syslog
- /proc/device-tree
- /sys/firmware/devicetree/base
What your security team should do
- Inventory Linux systems, embedded appliances, routers, gateways, and network devices that use Airoha networking hardware or have the Airoha kernel driver enabled.
- Prioritize patching affected Airoha-based platforms during the next kernel or firmware maintenance window; accelerate for systems where local users can load drivers, change boot configuration, or apply device-tree overlays.
- Obtain patched kernels or firmware from the operating system distribution, device vendor, or appliance vendor, since no exact fixed versions were provided.
- Validate device-tree reserved-memory configuration for Airoha devices and correct missing or stale memory-region references.
- Disable or blacklist the affected Airoha driver on systems where it is not needed.
- Restrict local privileges that permit kernel module loading, driver unbinding/rebinding, firmware changes, bootloader edits, or device-tree overlay changes.
- Monitor kernel logs for NULL pointer dereference, oops, or panic events referencing airoha_qdma_init_hfwd_queues, of_reserved_mem_lookup, or Airoha QDMA initialization.
- Because this issue is not KEV-listed, not ransomware-associated in the supplied data, and has very low EPSS, treat it as availability-focused hardening unless affected devices provide critical network services.
The record
In the Linux kernel, the following vulnerability has been resolved: net: airoha: Add NULL check for of_reserved_mem_lookup() in airoha_qdma_init_hfwd_queues() of_reserved_mem_lookup() may return NULL if the reserved memory region referenced by the "memory-region" phandle is not found in the reserved memory table (e.g. due to a misconfigured DTS or a removed memory-region node). The current code dereferences the returned pointer without checking for NULL, leading to a kernel NULL pointer dereference at the following lines: dma_addr = rmem->base; // line 1156 num_desc = div_u64(rmem->size, buf_size); // line 1160 Add a NULL check after of_reserved_mem_lookup() and return -ENODEV if the lookup fails, which is consistent with the existing error handling for of_parse_phandle() failure in the same code block.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|
Related vulnerabilities
- CVE-2026-112405 Pillow is a Python imaging library. CWE-476
- CVE-2026-112392 Pillow is a Python imaging library. CWE-476
- CVE-2026-100348 kin-openapi is a Go project for handling OpenAPI files. CWE-476
- CVE-2026-100349 kin-openapi is a Go project for handling OpenAPI files. CWE-476
- CVE-2026-109280 ImageMagick 7.1.0-20 before 7.1.2-32 contains a use after free vulnerability in the -fx… CWE-476
- CVE-2026-109272 ImageMagick 7.1.1-31 before 7.1.2-32 contains a NULL pointer dereference in the… CWE-476
- CVE-2026-109258 ImageMagick 7.1.0-20 before 7.1.2-32 contains an invalid memory free vulnerability in the… CWE-476
- CVE-2026-107655 A flaw was found in CUPS. CWE-476