Severity by source
AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
Local vector and low privileges required to submit TEE requests; high complexity reflects the many-query Bleichenbacher oracle; limited confidentiality only, no integrity or availability impact.
Primary rating from Vendor (GitHub_M).
CVSS VectorNVD
Lifecycle Timeline
3DescriptionNVD
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 4.5.0 and prior to version 4.11.0, the RSA PKCS#1 v1.5 decryption implementation in the Hisilicon HPRE crypto driver uses non-constant-time memcmp() for label hash verification and has multiple distinguishable error paths. This creates a Bleichenbacher-style padding oracle that allows an attacker to recover RSA PKCS#1 v1.5 plaintext. Version 4.11.0 contains a patch. As a workaround, disable Hisilicon HPRE RSA driver with CFG_HISILICON_ACC_V3=n.
AnalysisAI
RSA PKCS#1 v1.5 decryption in OP-TEE's Hisilicon HPRE hardware accelerator driver exposes a Bleichenbacher-style padding oracle, allowing a local attacker to recover RSA plaintext by adaptively querying the oracle. Affected are optee_os versions 4.5.0 through 4.10.x built with Hisilicon HPRE support (CFG_HISILICON_ACC_V3=y) on Arm TrustZone-based platforms. No public exploit code or CISA KEV listing exists; exploitation is constrained by local access requirements and the high query volume characteristic of Bleichenbacher-class attacks.
Technical ContextAI
OP-TEE (Open Portable Trusted Execution Environment) runs as a secure-world OS on Arm Cortex-A processors leveraging TrustZone, isolated from the normal-world Linux kernel. The Hisilicon HPRE (High Performance RSA Engine) is a hardware accelerator driver within optee_os for platforms such as HiSilicon Kunpeng. CWE-208 (Observable Timing Discrepancy) is the root cause: the driver invokes a non-constant-time memcmp() during RSA PKCS#1 v1.5 label hash verification, and the implementation exposes multiple distinguishable error return paths. Together these create a Bleichenbacher oracle - a well-studied adaptive chosen-ciphertext attack (first described in 1998) that recovers RSA plaintext through iterative query refinement by detecting whether a submitted ciphertext produces valid or invalid PKCS#1 v1.5 padding. The CPE cpe:2.3:a:op-tee:optee_os:*:*:*:*:*:*:*:* covers the optee_os component specifically.
RemediationAI
Upgrade to OP-TEE OS version 4.11.0, which contains the fix for this padding oracle (vendor-confirmed via GHSA-wxp6-8wwr-h4gf). The patch replaces the non-constant-time memcmp() and eliminates distinguishable error paths in the HPRE RSA PKCS#1 v1.5 decryption path. For deployments that cannot immediately upgrade, the vendor-provided workaround is to disable the Hisilicon HPRE RSA driver at build time by setting CFG_HISILICON_ACC_V3=n; this redirects RSA operations to software fallback implementations, at the cost of losing hardware acceleration performance for RSA workloads on Hisilicon platforms. No additional compensating controls are necessary for systems not using Hisilicon HPRE hardware or where CFG_HISILICON_ACC_V3 is already disabled.
Out-of-bounds read and write in OP-TEE OS PKCS#11 Trusted Application (versions 3.13.0-4.10.0) allows authenticated loca
Secure-world heap corruption in OP-TEE OS through 4.10.0 allows a malicious Trusted Application to write attacker-contro
Use-after-free in the OP-TEE OS Trusted Application loader (all versions through 4.10.0) allows an attacker who controls
Use-after-free race condition in OP-TEE OS versions 3.16.0 through 4.10.x enables local low-privileged attackers to corr
Integer overflow in OP-TEE OS RSA signature encoding crashes the Trusted Execution Environment on platforms with RSA har
Null pointer dereference in OP-TEE OS through version 4.10.0 allows a low-privileged Normal World process to crash the e
Subkey rollback protection in OP-TEE OS versions 3.20.0 through 4.10.x is completely non-functional due to a missing fie
Heap overflow in OP-TEE's ARM Crypto Extensions SHA-3 implementation corrupts TEE kernel memory across all platforms bui
Type confusion in OP-TEE OS versions 4.3.0 through 4.10.x allows a highly privileged local attacker operating in the nor
Private ECDH key recovery in OP-TEE prior to version 4.11.0 is achievable by a local attacker who can invoke TEE_DeriveK
Integer overflow in OP-TEE OS's AES-GCM implementation silently corrupts authentication tag computation when a single op
Heap exhaustion in OP-TEE OS (versions 3.3.0 through 4.10.x) allows a low-privileged normal-world local caller to progre
Same weakness CWE-208 – Observable Timing Discrepancy
View allSame technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-41908