CyberSecBulletin
CVE-2024-39503NVD status: Modified

Linux: Concurrent Execution using Shared Resource with Improper Synchronization

CVE-2024-39503 is a high-severity concurrent execution using shared resource with improper synchronization vulnerability in Linux, with a CVSS 3.1 base score of 7.0 out of 10. It can be exploited with local access to the system by an attacker with a low-privileged account, without any action from a user. The record lists versions c0761d1f1ce1d5b85b5e82bbb714df12de1aa8c3, 93b53c202b51a69e42ca57f5a183f7e008e19f83, 0f1bb77c6d837c9513943bc7c08f04c5cc5c6568 as the first without the flaw, so updating Linux to one of those releases or later removes the exposure. There is no confirmed exploitation so far. EPSS estimates a 0.22% chance of exploitation within 30 days, which is low compared with other CVEs.

Next patch cycle

High severity with no evidence of exploitation so far.

What to do

  1. Update Linux to c0761d1f1ce1d5b85b5e82bbb714df12de1aa8c3 or 93b53c202b51a69e42ca57f5a183f7e008e19f83 or 0f1bb77c6d837c9513943bc7c08f04c5cc5c6568 or 390b353d1a1da3e9c6c0fd14fe650d69063c95d6, whichever matches your release line, or a later version.
  2. Update RUGGEDCOM RST2428P to V3.1 or a later version.
  3. Update SCALANCE XCM-/XRM-/XCH-/XRH-300 family to V3.1 or a later version.

Affected products and versions

VendorProductAffected versionsFixed in
LinuxLinuxc7f2733e5011bfd136f1ca93497394d43aa76225 up to, but not including, c0761d1f1ce1d5b85b5e82bbb714df12de1aa8c3; a24d5f2ac8ef702a58e55ec276aad29b4bd97e05 up to, but not including, 93b53c202b51a69e42ca57f5a183f7e008e19f83; c2dc077d8f722a1c73a24e674f925602ee5ece49 up to, but not including, 0f1bb77c6d837c9513943bc7c08f04c5cc5c6568; 653bc5e6d9995d7d5f497c665b321875a626161c up to, but not including, 390b353d1a1da3e9c6c0fd14fe650d69063c95d6; b93a6756a01f4fd2f329a39216f9824c56a66397 up to, but not including, 2ba35b37f780c6410bb4bba9c3072596d8576702; 97f7cf1cd80eeed3b7c808b7c12463295c751001 up to, but not including, 90ae20d47de602198eb69e6cd7a3db3420abfc08; 97f7cf1cd80eeed3b7c808b7c12463295c751001 up to, but not including, 4e7aaa6b82d63e8ddcbfb56b4fd3d014ca586f10; 970709a67696b100a57b33af1a3d75fc34b747eb; and 7 more rangesc0761d1f1ce1d5b85b5e82bbb714df12de1aa8c3, 93b53c202b51a69e42ca57f5a183f7e008e19f83, 0f1bb77c6d837c9513943bc7c08f04c5cc5c6568, 390b353d1a1da3e9c6c0fd14fe650d69063c95d6, 2ba35b37f780c6410bb4bba9c3072596d8576702, 90ae20d47de602198eb69e6cd7a3db3420abfc08
SiemensRUGGEDCOM RST2428Pbefore V3.1V3.1
SiemensSCALANCE XC-300/XR-300/XC-400/XR-500WG/XR-500 familyNot specified in the recordNot stated
SiemensSCALANCE XCM-/XRM-/XCH-/XRH-300 familybefore V3.1V3.1
SiemensSIMATIC S7-1500 TM MFP - GNU/Linux subsystembefore V1.1.1V1.1.1
LinuxLinux Kernel5.4.269 up to, but not including, 5.4.279; 5.10.210 up to, but not including, 5.10.221; 5.15.149 up to, but not including, 5.15.162; 6.1.79 up to, but not including, 6.1.95; 6.6.18 up to, but not including, 6.6.35; 6.7.6 up to, but not including, 6.8; 6.8.1 up to, but not including, 6.9.6; 6.8; and 1 more ranges5.4.279, 5.10.221, 5.15.162, 6.1.95, 6.6.35, 6.8

Version data comes from the organisation that assigned the CVE. Confirm against the vendor advisory before deciding you are unaffected.

How the severity score breaks down

Attack vector
LocalThe attacker needs local access or must trick a user into running something.
Attack complexity
HighSuccess depends on conditions outside the attacker's control.
Privileges required
LowA basic user account is enough.
User interaction
NoneNo action by a victim is required.
Scope
UnchangedImpact stays within the vulnerable component.
Confidentiality
HighAll data handled by the component can be read.
Integrity
HighData or code can be modified at will.
Availability
HighThe component can be taken down completely.

Vector: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H. Scored by NVD.

Scoring systemScoreSeverityScored by
CVSS 3.17.8HighCNA
CVSS 3.17.0HighNVD

Official description

In the Linux kernel, the following vulnerability has been resolved: netfilter: ipset: Fix race between namespace cleanup and gc in the list:set type Lion Ackermann reported that there is a race condition between namespace cleanup in ipset and the garbage collection of the list:set type. The namespace cleanup can destroy the list:set type of sets while the gc of the set type is waiting to run in rcu cleanup. The latter uses data from the destroyed set which thus leads use after free. The patch contains the following parts: - When destroying all sets, first remove the garbage collectors, then wait if needed and then destroy the sets. - Fix the badly ordered "wait then remove gc" for the destroy a single set case. - Fix the missing rcu locking in the list:set type in the userspace test case. - Use proper RCU list handlings in the list:set type. The patch depends on c1193d9bbbd3 (netfilter: ipset: Add list flush to cancel_gc).

Source: the CVE record as published by its numbering authority, via NVD and CVE.org.

The underlying weakness: Concurrent Execution using Shared Resource with Improper Synchronization

The product contains a concurrent code sequence that requires temporary, exclusive access to a shared resource, but a timing window exists in which the shared resource can be modified by another code sequence operating concurrently.

How developers prevent this class of flaw

  • In languages that support it, use synchronization primitives. Only wrap these around critical code to minimize the impact on performance.
  • Use thread-safe capabilities such as the data access abstraction in Spring.
  • Minimize the usage of shared resources in order to remove as much complexity as possible from the control flow and to reduce the likelihood of unexpected conditions occurring. Additionally, this will minimize the amount of synchronization necessary and may even help to reduce the likelihood of a denial of service where an attacker may be able to repeatedly trigger a critical section (CWE-400).

More Concurrent Execution using Shared Resource with Improper Synchronization vulnerabilities (CWE-362)

Timeline

  1. CVE record published.
  2. CISA published its SSVC assessment (exploitation: none, automatable: no, technical impact: partial).
  3. Record last changed materially (score, affected products, status or references).

References

Recent Concurrent Execution using Shared Resource with Improper Synchronization vulnerabilities

Spotted an error? Tell us.