---
id: CVE-2026-95108
title: Deleting a user-mode module thread leaks its privileged kernel stack
summary: >-
  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_cr…
severity: medium
cvss: 6.8
cvssVector: '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'
cvssSource: cna
cwe:
  - CWE-400
  - CWE-772
vendor: Eclipse Foundation
product: ThreadX
affected:
  - ThreadX >= 6.0.1 <= 6.5.1.202602a
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-10-20T17:05:59.302618Z'
published: '2026-10-20'
updated: '2026-10-20'
sourceUpdated: '2026-10-20T17:06:10.079Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-95108'
references:
  - url: >-
      https://github.com/eclipse-threadx/threadx/security/advisories/GHSA-9hhf-6357-hpgq
tags:
  - cve.org
ingestedAt: '2026-10-20T16:10:53.315Z'
---

## Overview

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`.

## Affected

- `ThreadX >= 6.0.1 <= 6.5.1.202602a`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
