Unvalidated stack pointer at ESP-TEE boundary in esp-idf
Key facts
- Attack vector
- Local
- Privileges required
- None
- 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-787 and the CVSS impact.
Summary
Espressif esp-idf versions before 5.5.6, from 6.0.0 before 6.0.4, and from 6.1.0 before 6.1.1 are affected. The ESP-TEE trap entry saves a caller-controlled register frame through the REE-supplied stack pointer before validating it, an out-of-bounds write (CWE-787). A local unprivileged application on the REE side can direct that write into TEE-exclusive memory on ESP32-C5, ESP32-C6, ESP32-C61, and ESP32-H2 devices, potentially corrupting TEE control-flow data for code execution, denial of service, or system crashes.
Written with Claude Haiku 5.5 from the sources below · 2026-11-04
Description from the CNA
ESF-IDF is the Espressif Internet of Things (IOT) Development Framework. From 5.5.5 until 5.5.6, 6.0.4, and 6.1.1, the esp_tee trap entry in esp_tee_vectors_plic.S and esp_tee_vectors_clic.S saves a caller-controlled register frame through the REE-supplied stack pointer before switching to the trusted TEE stack or validating the pointer. A local unprivileged REE application can direct this machine-mode write into TEE-exclusive memory on ESP32-C5, ESP32-C6, ESP32-C61, and ESP32-H2 devices, breaking the REE/TEE isolation boundary and potentially corrupting TEE control-flow data for code execution, denial of service, or system crashes. Both secure-service ecall and interrupt entry paths contain the vulnerable ordering. This issue is fixed in version 5.5.6 and is scheduled to be fixed in versions 6.0.4 and 6.1.1.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- 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
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| espressif | esp-idf | before 5.5.6; 6.0.0 to before 6.0.4; 6.1.0 to before 6.1.1 | 5.5.6, 6.0.4, 6.1.1 | Patch available | CNA |
- esp-idf Vendorespressif Affected before 5.5.6; 6.0.0 to before 6.0.4; 6.1.0 to before 6.1.1 Fixed in 5.5.6, 6.0.4, 6.1.1 Patch available CNA
Remediation
Upgrade to esp-idf 5.5.6, which contains the fix. Fixes in 6.0.4 and 6.1.1 are scheduled for those versions.
Written with Claude Haiku 5.5 from the sources below · 2026-11-04
- Fix · CNA esp-idf (espressif) Fixed in 5.5.6, 6.0.4, 6.1.1
Timeline
- 2026-11-04 Threatist record created from CVE-2026-113780
- 2026-11-05 CISA SSVC decision points changed
- 2026-11-05 Priority changed: MEDIUM → LOW
- 2026-11-06 Priority changed: LOW → MEDIUM
References
Other 6
- https://github.com/espressif/esp-idf/security/advisories/GHSA-49x8-xqjg-2pjg
- https://github.com/espressif/esp-idf/commit/773761abb893d43d0a5b8b75ec0a1c2cf0287d53
- https://github.com/espressif/esp-idf/commit/acb7d996b07293abf591b93f4aaffa04ae6732d9
- https://github.com/espressif/esp-idf/commit/b85a7b0e1449ac9aec30a0c3e3b6515725556fd1
- https://github.com/espressif/esp-idf/commit/dabd37fae8d2a7b1cc71f48fce824b0b9d909a07
- https://github.com/espressif/esp-idf/releases/tag/v5.5.6
More espressif vulnerabilities
- TI-2026-31061 arduino-esp32: Stack buffer overflow in WebServer multipart boundary parsing leads to remote crash potential RCE CVSS 3.1CRITICAL 9.8
- TI-2024-30765 Multiple Poisoned Pipeline Execution (PPE) vulnerabilities CVSS 3.1CRITICAL 10.0
- TI-2026-30028 Improper validation of NBNS name_len in arduino-esp32 NetBIOS leads to memory corruption CVSS 3.1HIGH 8.8
- TI-2025-33484 CSRF Vulnerability in Firmware Update Endpoints Allows Remote Code Execution CVSS 4.0HIGH 8.7
- TI-2024-22076 Buffer Overflow vulnerability in esp-idf v.5.1 allows a remote attacker to execute… CVSS 3.1MEDIUM 6.5
- TI-2025-33011 arduino-esp32 vulnerable to CRLF injection in WebServer.cpp CVSS 4.0HIGH 8.9
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences