CVE-2026-102757
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Summary
An unprivileged, memory-protected ThreadX module can have the kernel read and write memory at addresses of its choosing, in privileged mode, and can use that to clear the MPU enable bit and remove its own isolation boundary.
The Module Manager decided whether a privileged service could dereference an object address a module named by asking only whether that address fell outside the module. The manager's object pool is outside every module, so the test was satisfied by an address shifted into the interior of one of the module's own privileged allocations, which denotes no object at all. The bytes such an address presents as a control block are bytes the module put there through ordinary create and set services, so the control block ID at the front of them could be made to read as any type the module chose, and the _txe_ layer's ID test then agreed. The reported chain uses that to reach a privileged memset across an attacker-chosen range.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Eclipse Foundation | ThreadX | 6.0.1 <= 6.5.1.202602a | affected |
| Eclipse Foundation | ThreadX | 6.5.2.202603 | unaffected |
Weaknesses
- CWE-125: CWE-125 Out-of-bounds Read
- CWE-787: CWE-787 Out-of-bounds Write
- CWE-822: CWE-822 Untrusted Pointer Dereference
- CWE-823: CWE-823 Use of Out-of-range Pointer Offset
- CWE-843: CWE-843 Access of Resource Using Incompatible Type ('Type Confusion')
References
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.