Cloudanix VulnDB

CVE-2026-53210

None

CVSS

—

EPSS

0.1%

Published

Jun 25, 2026

CISA due date

—

Cloudanix analysis

Next patch cycle SSVC: Track

A local program may be able to repeatedly waste kernel resources on affected Linux systems, potentially making the device or server unstable until it is updated.

Exploitation
Local Privilege
Attacker needs
Local User
Complexity
Low
Impact
Denial Of Service
Component
OS kernel
Class
Memory Corruption
Remediation
Patch
Effort
Low
Patch risk
Low

What it actually does

This flaw is a Linux kernel resource-leak vulnerability in the Trusted Execution Environment (TEE) shared-memory registration path. A caller can invoke the TEE_IOC_SHM_REGISTER ioctl with a zero-length shared-memory registration request, causing register_shm_helper() to allocate a shared-memory object and then take an error path that fails to free it. Repeated triggering can leak kernel-managed TEE shared-memory structures and associated resources. The most likely technical consequence is local resource exhaustion and degraded system stability rather than direct code execution or privilege escalation based on the published description.

Why it matters to the business

Systems using vulnerable Linux kernel versions with TEE device access exposed may be susceptible to local denial-of-service conditions. A low-privileged local user or compromised process with access to the TEE device interface could repeatedly trigger the leak, consuming kernel resources and potentially causing service instability, degraded performance, or host crashes. The vulnerability is not listed in CISA KEV, is not reported as used in ransomware campaigns, has very low EPSS, and has no public exploit maturity indicated, so broad internet-scale exploitation is unlikely; however, it still matters for multi-user systems, container hosts, embedded Linux devices, mobile/TEE-enabled platforms, and environments where untrusted local code may run.

How an attack unfolds

An attacker first needs local code execution on a vulnerable Linux system and access to a TEE device node such as a /dev/tee* interface. The attacker opens the TEE device and issues the TEE_IOC_SHM_REGISTER ioctl using a tee_ioctl_shm_register_data structure where the length field is set to 0. In vulnerable kernels, the kernel allocates a shared-memory tracking object before validating that the requested mapping has usable pages. When iov_iter_npages() returns 0, the function exits through an error path that releases context state but does not free the allocated shared-memory object. By repeating this ioctl call in a loop, the attacker can leak kernel-side TEE shared-memory resources until memory pressure, TEE subsystem exhaustion, degraded performance, or denial of service occurs.

How to fix it

Apply a Linux kernel update that includes the upstream fix changing the zero-page error path in register_shm_helper() to free the allocated shared-memory object before returning. Because no specific affected product list or fixed package versions were provided, use the fixed kernel packages supplied by the relevant Linux distribution, device vendor, embedded platform provider, or kernel maintenance branch. If immediate patching is not possible, reduce exposure by restricting access to /dev/tee* device nodes to only trusted users and services, removing unnecessary TEE device access from containers and sandboxes, disabling unused TEE functionality where operationally safe, and monitoring for abnormal repeated TEE ioctl activity or unexplained kernel memory growth.

How to confirm the fix worked

Confirm remediation by verifying that the running kernel version includes the vendor or upstream patch for the TEE shared-memory registration leak. Validate that package-manager metadata, kernel changelogs, or vendor advisories show the fix for the TEE register_shm_helper() zero-length TEE_IOC_SHM_REGISTER path. After rebooting into the fixed kernel, confirm the active kernel with uname -a or equivalent tooling. Exposure can be checked by determining whether TEE devices exist and are accessible using commands such as ls -l /dev/tee* and by reviewing permissions, udev rules, and container device passthrough settings. In test environments only, a controlled zero-length TEE_IOC_SHM_REGISTER regression test should return an error without causing persistent kernel memory/resource growth across repeated calls.

Typical attack path

  1. Obtain local execution on a Linux system running a vulnerable kernel with the TEE subsystem enabled.
  2. Confirm that a TEE character device such as /dev/tee0, /dev/teepriv0, or another /dev/tee* node is present and accessible.
  3. Open the TEE device from user space.
  4. Construct a TEE_IOC_SHM_REGISTER ioctl request with struct tee_ioctl_shm_register_data.length set to 0.
  5. Submit the malformed registration request and trigger the error path that leaks the allocated shared-memory object.
  6. Repeat the request many times to accumulate leaked kernel resources.
  7. Cause memory pressure, subsystem exhaustion, service degradation, or host instability.

How to detect it

Look for signs of local resource-exhaustion activity involving the Linux TEE device interface. Useful data sources include Linux audit logs for opens or ioctl activity against /dev/tee* device nodes, eBPF or syscall telemetry showing repeated ioctl calls to TEE character devices, kernel logs for TEE subsystem errors, OOM-killer events, abnormal unreclaimable kernel memory growth, and process accounting that identifies a local process repeatedly interacting with /dev/tee0, /dev/teepriv0, or related device nodes. Because the vulnerability is a resource leak and not a payload-dropping exploit, there may be no file artifact, network indicator, or stable exploit string. Focus detection on behavioral patterns: high-rate access to /dev/tee*, repeated failed shared-memory registration attempts, rising slab/kernel memory usage, and system instability temporally correlated with a local process using TEE ioctls. No named threat actors, ransomware use, KEV listing, or mature public exploitation were provided, so detection should be framed as anomaly and abuse monitoring rather than known-campaign hunting.

  • /dev/tee0
  • /dev/tee1
  • /dev/teepriv0
  • /dev/teepriv1
  • TEE_IOC_SHM_REGISTER
  • tee_ioctl_shm_register_data
  • register_shm_helper
  • iov_iter_npages
  • Out of memory
  • Killed process
  • oom-killer
  • invoked oom-killer

What your security team should do

  • Inventory Linux systems that expose /dev/tee* devices, prioritizing multi-user hosts, container platforms, embedded devices, mobile/edge systems, and systems running untrusted local workloads.
  • Apply vendor kernel updates that include the fix, then reboot systems into the corrected kernel.
  • Restrict /dev/tee* permissions to the minimum required users and services; remove unnecessary TEE device passthrough from containers, virtualization profiles, and sandbox configurations.
  • Monitor for abnormal kernel memory growth, repeated TEE ioctl activity, OOM events, and instability on systems where TEE devices are present.
  • Treat this as lower urgency than remotely exploitable or KEV-listed issues because EPSS is very low, it is not in CISA KEV, and no public exploit maturity is indicated; nevertheless, include it in routine kernel patch cycles.
  • For high-risk local-code-execution environments, add audit or eBPF-based monitoring around access to /dev/tee* until patching is complete.

The record

In the Linux kernel, the following vulnerability has been resolved: tee: shm: fix shm leak in register_shm_helper() register_shm_helper() allocates shm before calling iov_iter_npages(). If iov_iter_npages() returns 0, the function jumps to err_ctx_put and leaks shm. This can be triggered by TEE_IOC_SHM_REGISTER with struct tee_ioctl_shm_register_data where length is 0. Jump to err_free_shm instead.

Affected packages

Ecosystem Package Introduced Fixed