PatchSiren cyber security CVE debrief
CVE-2024-43856 Siemens CVE debrief
A race condition vulnerability exists in the Linux kernel's DMA management code, specifically within the dmam_free_coherent() function. The issue stems from an incorrect call order where the DMA allocation is freed before the corresponding devres tracking entry is destroyed. This creates a window where a concurrent task could allocate the same virtual address and add it to the devres list, resulting in duplicate entries. When devres_destroy() subsequently runs, it may free the wrong entry, triggering a WARN_ON() assertion in dmam_match(). The vulnerability is classified as MEDIUM severity with a CVSS 3.1 score of 5.5 (AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H), indicating local attack vector, low attack complexity, low privileges required, and high availability impact. The vulnerability affects Siemens SIMATIC S7-1500 TM MFP industrial control systems through their GNU/Linux subsystem. The upstream Linux kernel fix reorders the operations to destroy the devres entry before freeing the DMA allocation, eliminating the race window.
- Vendor
- Siemens
- Product
- SIMATIC S7-1500 TM MFP - GNU/Linux subsystem
- CVSS
- MEDIUM 5.5
- CISA KEV
- Not listed in stored evidence
- Original CVE published
- 2024-04-09
- Original CVE updated
- 2026-05-14
- Advisory published
- 2024-04-09
- Advisory updated
- 2026-05-14
Who should care
Industrial control system operators, OT security teams, and Linux kernel maintainers should prioritize this vulnerability. The affected Siemens SIMATIC S7-1500 TM MFP is deployed in manufacturing and critical infrastructure environments. System administrators responsible for embedded Linux systems using managed DMA coherent allocations should review their kernel versions. Security teams monitoring for kernel anomalies should watch for dmam_match WARN_ON() triggers as potential exploitation indicators.
Technical summary
The dmam_free_coherent() function in the Linux kernel's device resource management (devres) subsystem contains a race condition due to incorrect operation ordering. The function first calls dma_free_coherent() to release the DMA allocation, making the virtual address available for reuse, then subsequently calls devres_destroy() to remove the tracking structure. Between these two operations, a concurrent allocation may acquire the same virtual address and register it with devres, creating duplicate entries. The devres_destroy() call then matches and potentially frees the wrong entry based on virtual address comparison, triggering WARN_ON() in dmam_match(). The fix reverses this order: devres_destroy() is called first while the allocation remains valid and uniquely identifiable, then dma_free_coherent() releases the memory. This ensures atomicity from the perspective of the devres list. The vulnerability requires local access and low privileges, with exploitation resulting in denial of service through kernel warning storms or potential memory management corruption.
Defensive priority
medium
Recommended defensive actions
- Apply vendor-provided firmware updates for Siemens SIMATIC S7-1500 TM MFP when available, per advisory guidance
- Restrict interactive shell access to the GNU/Linux subsystem to trusted personnel only
- Implement application whitelisting to ensure only trusted applications are built and executed on affected systems
- Monitor for kernel WARN_ON() messages in dmam_match as potential indicators of exploitation attempts
- Review and apply CISA ICS recommended practices for defense-in-depth strategies
- Segment industrial control networks to limit lateral movement opportunities
- resourceLinkAnnotations: [ref-4, ref-5, ref-6, ref-8, ref-9, ref-10]
Evidence notes
The vulnerability description is sourced from CISA ICS Advisory ICSA-24-102-01, which references the upstream Linux kernel fix. The CVSS vector (AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H) indicates local exploitation with high availability impact. The affected product is confirmed as Siemens SIMATIC S7-1500 TM MFP GNU/Linux subsystem per CSAF product tree data.
Official resources
-
CVE-2024-43856 CVE record
CVE.org
-
CVE-2024-43856 NVD detail
NVD
-
Source item URL
cisa_csaf
-
Source reference
Reference
-
Source reference
Reference
-
Source reference
Reference
-
Source reference
Reference
-
Source reference
Reference
-
Source reference
Reference
-
Source reference
Reference
2024-04-09