CVE-2026-102716: CWE-401 Missing Release of Memory after Effective Lifetime in Eclipse Foundation eclipse-threadx/netxduo
An unauthenticated client can drain the RTSP server's packet pool with a couple of dozen requests that carry a Session header the parser cannot convert. The Session branch returns the raw NetX error code instead of an RTSP status code: ```c /* addons/rtsp/nx_rtsp_server.c:2754 */ status = _nx_utility_string_to_uint(field_value_ptr, field_value_length, &session_id); if (status) { return(status); /* NX_INVALID_PARAMETERS / NX_SIZE_ERROR / NX_OVERFLOW */ } ``` Every other branch of the same function maps its failure to an RTSP status first. The CSeq branch eighteen lines earlier does exactly that (line 2736 returns NX_RTSP_STATUS_CODE_BAD_REQUEST). The raw code then reaches `_nx_rtsp_server_error_response_send` (nx_rtsp_server.c:1234), which does not recognise it, takes a path that returns without releasing the response packet it already allocated, and the block never goes back to the pool. Six requests with an empty Session header against a 22 packet pool: ``` valid requests: after request 6: pool available = 21, AFTER = 22 / 22 malformed requests: after request 6: pool available = 16, AFTER = 17 / 22 ``` One block per request, not returned when the client disconnects. Twenty six requests take the pool to zero and the server starts failing allocations, after which it serves nobody. If the pool is shared with the rest of the application, as it is in the shipped sample, the rest of the stack stops with it. Convert the `_nx_utility_string_to_uint` failure in the Session branch into NX_RTSP_STATUS_CODE_BAD_REQUEST the way the CSeq branch does, and release the response packet on every exit path of `_nx_rtsp_server_error_response_send`.
AI Analysis
Technical Summary
This vulnerability arises because the RTSP server's Session header parser returns raw NetX error codes instead of proper RTSP status codes when it fails to parse the Session header. Unlike the CSeq header branch, which maps errors to RTSP status codes, the Session branch returns error codes that the error response function does not recognize. Consequently, the response packet allocated for the error is not released back to the packet pool. Repeated malformed requests with invalid Session headers drain the packet pool, leading to allocation failures and denial of service. The issue affects eclipse-threadx/netxduo versions from 0 up to and including 6.5.1.
Potential Impact
An unauthenticated attacker can send a small number of malformed RTSP requests with invalid Session headers to exhaust the server's packet pool. This causes the RTSP server to fail in allocating new packets, resulting in denial of service. If the packet pool is shared with other components, the entire application stack may be affected, leading to broader service disruption.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. The recommended fix is to convert the failure in parsing the Session header into a proper RTSP bad request status code, consistent with the handling of the CSeq header, and to ensure that the response packet is released on every exit path of the error response function. Until a patch is available, monitoring for abnormal RTSP request patterns and limiting malformed requests may help mitigate impact.
CVE-2026-102716: CWE-401 Missing Release of Memory after Effective Lifetime in Eclipse Foundation eclipse-threadx/netxduo
Description
An unauthenticated client can drain the RTSP server's packet pool with a couple of dozen requests that carry a Session header the parser cannot convert. The Session branch returns the raw NetX error code instead of an RTSP status code: ```c /* addons/rtsp/nx_rtsp_server.c:2754 */ status = _nx_utility_string_to_uint(field_value_ptr, field_value_length, &session_id); if (status) { return(status); /* NX_INVALID_PARAMETERS / NX_SIZE_ERROR / NX_OVERFLOW */ } ``` Every other branch of the same function maps its failure to an RTSP status first. The CSeq branch eighteen lines earlier does exactly that (line 2736 returns NX_RTSP_STATUS_CODE_BAD_REQUEST). The raw code then reaches `_nx_rtsp_server_error_response_send` (nx_rtsp_server.c:1234), which does not recognise it, takes a path that returns without releasing the response packet it already allocated, and the block never goes back to the pool. Six requests with an empty Session header against a 22 packet pool: ``` valid requests: after request 6: pool available = 21, AFTER = 22 / 22 malformed requests: after request 6: pool available = 16, AFTER = 17 / 22 ``` One block per request, not returned when the client disconnects. Twenty six requests take the pool to zero and the server starts failing allocations, after which it serves nobody. If the pool is shared with the rest of the application, as it is in the shipped sample, the rest of the stack stops with it. Convert the `_nx_utility_string_to_uint` failure in the Session branch into NX_RTSP_STATUS_CODE_BAD_REQUEST the way the CSeq branch does, and release the response packet on every exit path of `_nx_rtsp_server_error_response_send`.
CVSS v4.0
Score 8.7high
Affected software
Eclipse Foundation
eclipse-threadx/netxduo
pkg:github/eclipse-threadx/netxduoRun on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
This vulnerability arises because the RTSP server's Session header parser returns raw NetX error codes instead of proper RTSP status codes when it fails to parse the Session header. Unlike the CSeq header branch, which maps errors to RTSP status codes, the Session branch returns error codes that the error response function does not recognize. Consequently, the response packet allocated for the error is not released back to the packet pool. Repeated malformed requests with invalid Session headers drain the packet pool, leading to allocation failures and denial of service. The issue affects eclipse-threadx/netxduo versions from 0 up to and including 6.5.1.
Potential Impact
An unauthenticated attacker can send a small number of malformed RTSP requests with invalid Session headers to exhaust the server's packet pool. This causes the RTSP server to fail in allocating new packets, resulting in denial of service. If the packet pool is shared with other components, the entire application stack may be affected, leading to broader service disruption.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. The recommended fix is to convert the failure in parsing the Session header into a proper RTSP bad request status code, consistent with the handling of the CSeq header, and to ensure that the response packet is released on every exit path of the error response function. Until a patch is available, monitoring for abnormal RTSP request patterns and limiting malformed requests may help mitigate impact.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- eclipse
- Date Reserved
- 2026-09-29T16:15:12.001Z
- Cvss Version
- 4.0
- State
- PUBLISHED
Threat ID: 6abbfcc9107c4a03cbb2801c
Added to database: 09/29/2026, 18:00:41 UTC
Last enriched: 09/29/2026, 18:01:50 UTC
Last updated: 09/29/2026, 18:55:32 UTC
Views: 7
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
External Links
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.