Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-41514

CVE-2026-41514: OP-TEE Information Disclosure Vulnerability

CVE-2026-41514 is an information disclosure flaw in Trustedfirmware OP-TEE that exploits RSA-OAEP padding oracle to recover plaintext. This article covers the technical details, affected versions, impact, and mitigation.

Published:

CVE-2026-41514 Overview

CVE-2026-41514 is a padding oracle vulnerability in OP-TEE, the Trusted Execution Environment (TEE) that runs alongside a non-secure Linux kernel on Arm Cortex-A cores using TrustZone. The RSA-OAEP decryption routine in the Hisilicon HPRE crypto driver uses non-constant-time memcmp() for label hash verification and exposes multiple distinguishable error paths. This behavior creates a Manger-style oracle that allows a local attacker to recover RSA-OAEP plaintext with roughly 1000-2000 adaptive chosen ciphertext queries. The issue affects OP-TEE versions 4.5.0 through 4.10.x on plat-d06 when built with CFG_HISILICON_ACC_V3=y. The flag is disabled by default, limiting the exposed attack surface.

Critical Impact

A local, low-privileged attacker on affected plat-d06 builds can recover RSA-OAEP plaintext by exploiting timing and error-path side channels in the HPRE driver.

Affected Products

  • Trustedfirmware OP-TEE versions 4.5.0 through 4.10.x
  • OP-TEE builds targeting plat-d06 with CFG_HISILICON_ACC_V3=y
  • Hisilicon HPRE crypto driver RSA-OAEP decryption path

Discovery Timeline

  • 2026-07-06 - CVE-2026-41514 published to NVD
  • 2026-07-07 - Last updated in NVD database

Technical Details for CVE-2026-41514

Vulnerability Analysis

The vulnerability resides in the RSA-OAEP (Optimal Asymmetric Encryption Padding) decryption implementation of the Hisilicon HPRE crypto driver within OP-TEE. During decryption, the driver compares the OAEP label hash against the expected value using standard memcmp(), which returns as soon as the first differing byte is found. The comparison time therefore leaks information about how many leading bytes match. Additionally, distinct error paths return different status codes depending on where decoding fails, giving an attacker multiple observable signals per query. This behavior matches the classical Manger attack profile against RSA-OAEP [CWE-208 Observable Timing Discrepancy].

Root Cause

The root cause is the use of non-constant-time comparison on secret-dependent data combined with early-exit error handling. RSA-OAEP requires that any padding, label, or integrity failure be indistinguishable to the caller. The HPRE driver violates this requirement by exposing both timing differences from memcmp() and semantically distinct error codes for different failure modes in the decoding process.

Attack Vector

Exploitation requires local access to the non-secure world with the ability to invoke the affected Trusted Application through OP-TEE's client API. The attacker submits adaptively chosen ciphertexts and observes response codes and timing to bisect the plaintext. Approximately 1000-2000 queries are sufficient to recover an RSA-OAEP message. Because the attack path runs entirely within a single device and requires low privileges, remote exploitation is not possible without prior local access.

No public proof-of-concept code is available. See the OP-TEE GitHub Security Advisory for the maintainer's technical description.

Detection Methods for CVE-2026-41514

Indicators of Compromise

  • High volumes of RSA-OAEP decryption invocations from a single Client Application against the HPRE-backed Trusted Application
  • Repeated decryption failures with varied ciphertexts targeting the same key handle
  • Unusual scheduling patterns on plat-d06 cores associated with HPRE crypto operations

Detection Strategies

  • Audit OP-TEE build configurations for CFG_HISILICON_ACC_V3=y on plat-d06 targets
  • Instrument the TEE supplicant and REE-side logs to record RSA-OAEP decryption error codes and invocation counts per session
  • Rate-limit or alert on adaptive chosen-ciphertext patterns against RSA keys stored in the secure world

Monitoring Recommendations

  • Ingest OP-TEE and kernel logs into a centralized data lake and alert on abnormal crypto API call volumes
  • Track per-process invocation counts of TEEC_InvokeCommand targeting RSA decryption commands
  • Correlate decryption error bursts with process identity to isolate the responsible workload

How to Mitigate CVE-2026-41514

Immediate Actions Required

  • Upgrade OP-TEE to version 4.11.0 or later on all plat-d06 deployments
  • Inventory firmware images and identify any build with CFG_HISILICON_ACC_V3=y
  • Restrict local access to devices exposing the HPRE-backed Trusted Application to trusted workloads only

Patch Information

OP-TEE version 4.11.0 contains the fix. The patch replaces the non-constant-time label hash comparison with a constant-time equivalent and consolidates error handling so that RSA-OAEP failures return a single, indistinguishable status. Refer to the OP-TEE GitHub Security Advisory GHSA-qw4r-9wj9-q23r for the upstream fix.

Workarounds

  • Disable the Hisilicon HPRE RSA driver by rebuilding OP-TEE with CFG_HISILICON_ACC_V3=n
  • Route RSA-OAEP operations to a software crypto backend that implements constant-time OAEP decoding
  • Limit which Client Applications can invoke RSA decryption commands on affected devices
bash
# Configuration example - disable the vulnerable driver at build time
make PLATFORM=hisilicon-d06 CFG_HISILICON_ACC_V3=n

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.