Read the docs
TI-2026-29072 Aliases CVE-2026-40290

OP-TEE has a Use-After-Free race in FF-A shared-memory teardown

Priority HIGH 69CWE-416Published · Updated

Key facts

Attack vector
Local
Privileges required
Low
User interaction
None
Attack complexity
Low
Impact type
Code execution
Confidentiality · integrity · availability
High · High · High
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-416 and the CVSS impact.

Summary

OP-TEE is a Trusted Execution Environment (TEE) designed as companion to a non-secure Linux kernel running on Arm; Cortex-A cores using the TrustZone technology. Starting in version 3.16.0 and prior to 4.11.0, a user-after-free (UAF) race condition exists in the shared memory teardown logic of FF-A within OP-TEE SPMC/SP flows. This only applies when OP-TEE is configured as an SPMC for S-EL0 SPs, that is, with `CFG_SECURE_PARTITION=y`. The function `sp_mem_remove()`, responsible for freeing entries in `smem->receivers` and `smem->regions`, fails to acquire the global `sp_mem_lock` before performing the `free()` operations. Concurrently, other code paths, such as `sp_mem_get_receiver()`, iterate over these same lists without holding a lock, or, like `sp_mem_is_shared()`, iterate while holding the lock but are not serialized against the unprotected `free()` in `sp_mem_remove()`. This creates a cross-thread race where a thread iterating the list can acquire a pointer to an entry (e.g., `struct sp_mem_map_region` or `struct sp_mem_receiver`), and then another thread calls `sp_mem_remove()`, freeing the object. When the first thread resumes and dereferences the pointer, it results in a Use-After-Free vulnerability. Version 4.11.0 fixes the issue.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00187 8th percentileScored 2026-11-07
Public exploit Yes 1 exploit referenceTagged by NVD
Fix Fixed optee_os (OP-TEE): 4.11.0

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
OP-TEEoptee_os3.16.0 to before 4.11.04.11.0Patch availableCNA
  • optee_os VendorOP-TEE Affected 3.16.0 to before 4.11.0 Fixed in 4.11.0 Patch available CNA

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:o:trustedfirmware:op-tee:*:*:*:*:*:*:*:*3.16.0 – 4.10.0VulnerableOP-TEE
  • cpe:2.3:o:trustedfirmware:op-tee:*:*:*:*:*:*:*:* Versions 3.16.0 – 4.10.0 Vulnerable ·OP-TEE

Remediation

  • Fix · CNA optee_os (OP-TEE) Fixed in 4.11.0

Vendor assessments

Red Hat

Red Hat's page for this CVE →

Not affected: 1 product
  • Red Hat

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-40290

References

  • TI-2022-22796 OP-TEE Trusted OS vulnerable to Improper Validation of Array Index in the cleanup_shm_refs function CVSS 3.1HIGH 8.8
  • TI-2023-21925 OP-TEE double free in shdr_verify_signature CVSS 3.1HIGH 7.4
  • TI-2026-33359 OP-TEE vulnerable to ECDH private key recovery CVSS 3.1MEDIUM 4.7
  • TI-2019-16063 Integer overflow in OP-TEE CVSS 3.0CRITICAL 9.8
  • TI-2019-16062 Integer overflow in OP-TEE CVSS 3.0CRITICAL 9.8
  • TI-2019-16061 Integer overflow in OP-TEE CVSS 3.0CRITICAL 9.8
See all 28 →

Sources