CVE-2024-53076: iio: gts-helper: Fix memory leaks for the error path of iio_gts_build_avail_scale_table()
In the Linux kernel, the following vulnerability has been resolved:
iio: gts-helper: Fix memory leaks for the error path of iio_gts_build_avail_scale_table()
If per_time_scales[i] or per_time_gains[i] kcalloc fails in the for loop
of iio_gts_build_avail_scale_table(), the err_free_out will fail to call
kfree() each time when i is reduced to 0, so all the per_time_scales[0]
and per_time_gains[0] will not be freed, which will cause memory leaks.
Fix it by checking if i >= 0.
Security readout for executives and security teams
Plain-English summary
A Linux kernel error-handling bug can leave allocated memory unreleased when an allocation fails in an Industrial I/O helper. Repeated triggering could consume kernel memory and impair availability. The supplied severity is high at CVSS 7.8, although the technical description directly establishes a memory leak rather than confidentiality or integrity compromise.
Executive priority
Schedule accelerated remediation within the normal high-severity kernel patch cycle. Prioritize systems allowing untrusted local users or workloads and devices relying on affected IIO functionality. Emergency response is not supported by the supplied evidence because active exploitation is unreported and the described impact is a conditional memory leak.
Technical view
iio_gts_build_avail_scale_table() incorrectly handled cleanup after kcalloc failure. As the loop index decreased, the cleanup path could omit freeing per_time_scales[0] and per_time_gains[0]. The kernel fix changes the boundary check to include index zero. Exploitation requires local, low-privileged access according to the supplied CVSS vector.
Likely exposure
Exposure is limited to systems running affected Linux kernels where the relevant IIO GTS helper is present and its allocation-failure path can occur. The bundle lists 6.4, 6.6.60, 6.11.7, and 6.12 among affected version data, but does not provide enough range semantics for definitive version mapping.
Exploitation context
The CVE is not listed in CISA KEV, and the supplied sources provide no evidence of active exploitation or a public exploit. Triggering depends on a local context and an allocation failure in the affected path. The demonstrated consequence in the description is unreleased kernel memory; broader CVSS impacts are not technically explained.
Researcher notes
CWE-401 accurately describes the documented memory leak. The supplied CVSS 3.1 vector is local, low complexity, low privilege, no interaction, with high confidentiality, integrity, and availability impacts. However, the narrative only substantiates missed frees during allocation-failure cleanup, so claims beyond resource leakage require additional evidence. Exact affected ranges remain unclear from the flattened version list.
Mitigation direction
Identify kernel versions and distributions on systems using Industrial I/O components.
Apply a vendor-supported kernel update incorporating the referenced stable fix.
Consult distribution advisories to resolve the bundle's ambiguous affected-version boundaries.
Prioritize exposed multi-user or untrusted-workload systems where local access is available.
Validation and detection
Compare installed kernel builds against vendor advisories and referenced stable commits.
Confirm the deployed kernel contains the corrected cleanup boundary check.
Inventory whether relevant IIO GTS drivers or modules are enabled or used.
Monitor kernel memory pressure and allocation failures for unexplained recurring degradation.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-401: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-401 · source CWE mapping
Missing Release of Memory after Effective Lifetime
Missing Release of Memory after Effective Lifetime represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.