Description
One logical thread of a user-mode ThreadX module costs the Module Manager's shared object pool two allocations, not one. The module asks for a `TX_THREAD` control block through `txm_module_object_allocate`; `_txm_module_manager_thread_create` then takes a second allocation of `TXM_MODULE_KERNEL_STACK_SIZE` bytes for the privileged kernel stack that thread's system calls run on, and records it in the control block. Both come from `_txm_module_manager_object_pool` and both are linked onto the module's allocation list.



The Module Manager's thread-delete dispatcher released only the first. The kernel stack stayed allocated until the whole module was stopped, so a module that creates, terminates and deletes threads in a loop — every state transition valid, every service returning `TX_SUCCESS` — removed a fixed block from a finite pool shared by the manager and by every other loaded module, on every cycle, for as long as it stayed loaded. Once the pool is exhausted, no memory-protected module can create any kernel object and no user-mode module thread can be created anywhere in the system.



Vulnerable function: `_txm_module_manager_tx_thread_delete_dispatch`, in `common_modules/module_manager/inc/txm_module_manager_dispatch.h`.
Published: 2026-10-20
Score: 6.8 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Denial of Service via memory exhaustion
Action: Patch
AI Analysis

Impact

The flaw occurs when a user‑mode ThreadX module creates a thread: the Module Manager allocates one control block and a second block for the privileged kernel stack, but only the control block is released when the thread is deleted. This orphaned kernel stack remains in the module manager’s shared object pool, draining a fixed amount of memory on every delete. Over time the pool can be exhausted, preventing the creation of any kernel object or user‑mode thread, which results in a denial of service at the system level.

Affected Systems

The vulnerability affects Eclipse ThreadX modules. In particular, any module loaded into Eclipse ThreadX that creates and deletes user‑mode threads is impacted. The issue exists for all versions of Eclipse ThreadX where the module manager uses the allocation logic described; no specific version is given, so all current and older releases should be considered vulnerable until a patch is applied.

Risk and Exploitability

The CVSS score of 6.8 classifies the weakness as moderate, and the EPSS score is not available, indicating limited data on exploitation frequency. The vulnerability is not listed in the CISA KEV catalog. Exploitation requires the capability to load a user‑mode ThreadX module and execute a loop of thread creation and deletion, which is achievable from ordinary user privileges that can load modules. The attack path is local to the application; remote exploitation would require permission to load a module. While the difficulty is not trivial, the potential for resource exhaustion makes the risk significant, especially in systems that rely on high availability of ThreadX services.

Generated by OpenCVE AI on October 20, 2026 at 17:59 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the environment to a revised Eclipse ThreadX release that includes the fix for the double allocation leak.
  • If an update is not yet available, eliminate or minimize modules that create and destroy threads in rapid loops; restructure the module to reuse threads instead of recreating them.
  • Implement monitoring of the module manager’s shared pool usage and trigger alerts or shutdown when the pool usage approaches exhaustion thresholds.

Generated by OpenCVE AI on October 20, 2026 at 17:59 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 20 Oct 2026 21:00:00 +0000

Type Values Removed Values Added
First Time appeared Eclipse
Eclipse threadx
Vendors & Products Eclipse
Eclipse threadx

Tue, 20 Oct 2026 17:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Tue, 20 Oct 2026 15:30:00 +0000

Type Values Removed Values Added
Description One logical thread of a user-mode ThreadX module costs the Module Manager's shared object pool two allocations, not one. The module asks for a `TX_THREAD` control block through `txm_module_object_allocate`; `_txm_module_manager_thread_create` then takes a second allocation of `TXM_MODULE_KERNEL_STACK_SIZE` bytes for the privileged kernel stack that thread's system calls run on, and records it in the control block. Both come from `_txm_module_manager_object_pool` and both are linked onto the module's allocation list. The Module Manager's thread-delete dispatcher released only the first. The kernel stack stayed allocated until the whole module was stopped, so a module that creates, terminates and deletes threads in a loop — every state transition valid, every service returning `TX_SUCCESS` — removed a fixed block from a finite pool shared by the manager and by every other loaded module, on every cycle, for as long as it stayed loaded. Once the pool is exhausted, no memory-protected module can create any kernel object and no user-mode module thread can be created anywhere in the system. Vulnerable function: `_txm_module_manager_tx_thread_delete_dispatch`, in `common_modules/module_manager/inc/txm_module_manager_dispatch.h`.
Title Deleting a user-mode module thread leaks its privileged kernel stack
Weaknesses CWE-400
CWE-772
References
Metrics cvssV4_0

{'score': 6.8, 'vector': 'CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: eclipse

Published:

Updated: 2026-10-20T17:06:10.079Z

Reserved: 2026-09-23T13:42:24.310Z

Link: CVE-2026-95108

cve-icon Vulnrichment

Updated: 2026-10-20T17:06:06.233Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-10-20T16:17:18.393

Modified: 2026-10-20T19:48:50.250

Link: CVE-2026-95108

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-20T20:30:24Z

Weaknesses
  • CWE-400

    Uncontrolled Resource Consumption

  • CWE-772

    Missing Release of Resource after Effective Lifetime