Linux: NULL Pointer Dereference
CVE-2024-35960 is a critical-severity NULL pointer dereference vulnerability in Linux, with a CVSS 3.1 base score of 9.1 out of 10. It can be exploited remotely over the network by an unauthenticated attacker, without any action from a user. The record lists versions de0139719cdda82806a47580ca0df06fc85e0bd2, 1263b0b26077b1183c3c45a0a2479573a351d423, 3d90ca9145f6b97b38d0c2b6b30f6ca6af9c1801 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 1.41% chance of exploitation within 30 days, higher than 73% of scored CVEs.
Critical severity: a successful attack would have severe impact.
What to do
- Update Linux to de0139719cdda82806a47580ca0df06fc85e0bd2 or 1263b0b26077b1183c3c45a0a2479573a351d423 or 3d90ca9145f6b97b38d0c2b6b30f6ca6af9c1801 or 7aaee12b804c5e0374e7b132b6ec2158ff33dd64, whichever matches your release line, or a later version.
- Update linux_kernel to de0139719cdd or 3d90ca9145f6 or 7aaee12b804c or 2e8dc5cffc84, whichever matches your release line, or a later version.
- Update RUGGEDCOM RST2428P to V3.1 or a later version.
- Until you can update, restrict network access to the affected service so it is not reachable from untrusted networks.
Affected products and versions
| Vendor | Product | Affected versions | Fixed in |
|---|---|---|---|
| Linux | Linux | 74491de937125d0c98c9b9c9208b4105717a3caa up to, but not including, de0139719cdda82806a47580ca0df06fc85e0bd2; 74491de937125d0c98c9b9c9208b4105717a3caa up to, but not including, 1263b0b26077b1183c3c45a0a2479573a351d423; 74491de937125d0c98c9b9c9208b4105717a3caa up to, but not including, 3d90ca9145f6b97b38d0c2b6b30f6ca6af9c1801; 74491de937125d0c98c9b9c9208b4105717a3caa up to, but not including, 7aaee12b804c5e0374e7b132b6ec2158ff33dd64; 74491de937125d0c98c9b9c9208b4105717a3caa up to, but not including, 2e8dc5cffc844dacfa79f056dea88002312f253f; 74491de937125d0c98c9b9c9208b4105717a3caa up to, but not including, 5cf5337ef701830f173b4eec00a4f984adeb57a0; 74491de937125d0c98c9b9c9208b4105717a3caa up to, but not including, adf67a03af39095f05d82050f15813d6f700159d; 74491de937125d0c98c9b9c9208b4105717a3caa up to, but not including, 7c6782ad4911cbee874e85630226ed389ff2e453; and 1 more ranges | de0139719cdda82806a47580ca0df06fc85e0bd2, 1263b0b26077b1183c3c45a0a2479573a351d423, 3d90ca9145f6b97b38d0c2b6b30f6ca6af9c1801, 7aaee12b804c5e0374e7b132b6ec2158ff33dd64, 2e8dc5cffc844dacfa79f056dea88002312f253f, 5cf5337ef701830f173b4eec00a4f984adeb57a0 |
| Linux | linux_kernel | 74491de93712 up to, but not including, de0139719cdd; 74491de93712 up to, but not including, 3d90ca9145f6; 74491de93712 up to, but not including, 7aaee12b804c; 74491de93712 up to, but not including, 2e8dc5cffc84; 74491de93712 up to, but not including, 5cf5337ef701; 74491de93712 up to, but not including, adf67a03af39; 74491de93712 up to, but not including, 7c6782ad4911; 4.10 | de0139719cdd, 3d90ca9145f6, 7aaee12b804c, 2e8dc5cffc84, 5cf5337ef701, adf67a03af39 |
| Siemens | RUGGEDCOM RST2428P | before V3.1 | V3.1 |
| Siemens | SCALANCE XC-300/XR-300/XC-400/XR-500WG/XR-500 family | Not specified in the record | Not stated |
| Siemens | SCALANCE XCM-/XRM-/XCH-/XRH-300 family | before V3.1 | V3.1 |
| Siemens | SIMATIC S7-1500 TM MFP - GNU/Linux subsystem | before V1.1.1 | V1.1.1 |
| Debian | Debian Linux | 10.0 | Not stated |
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
- NetworkCan be exploited remotely over a network, including the internet.
- Attack complexity
- LowNo special conditions are needed; the attack works reliably.
- Privileges required
- NoneNo account or login is needed.
- User interaction
- NoneNo action by a victim is required.
- Scope
- UnchangedImpact stays within the vulnerable component.
- Confidentiality
- NoneNo data is disclosed.
- Integrity
- HighData or code can be modified at will.
- Availability
- HighThe component can be taken down completely.
Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H. Scored by CISA (ADP).
Official description
In the Linux kernel, the following vulnerability has been resolved: net/mlx5: Properly link new fs rules into the tree Previously, add_rule_fg would only add newly created rules from the handle into the tree when they had a refcount of 1. On the other hand, create_flow_handle tries hard to find and reference already existing identical rules instead of creating new ones. These two behaviors can result in a situation where create_flow_handle 1) creates a new rule and references it, then 2) in a subsequent step during the same handle creation references it again, resulting in a rule with a refcount of 2 that is not linked into the tree, will have a NULL parent and root and will result in a crash when the flow group is deleted because del_sw_hw_rule, invoked on rule deletion, assumes node->parent is != NULL. This happened in the wild, due to another bug related to incorrect handling of duplicate pkt_reformat ids, which lead to the code in create_flow_handle incorrectly referencing a just-added rule in the same flow handle, resulting in the problem described above. Full details are at [1]. This patch changes add_rule_fg to add new rules without parents into the tree, properly initializing them and avoiding the crash. This makes it more consistent with how rules are added to an FTE in create_flow_handle.
Source: the CVE record as published by its numbering authority, via NVD and CVE.org.
The underlying weakness: NULL Pointer Dereference
The product dereferences a pointer that it expects to be valid but is NULL.
How developers prevent this class of flaw
- For any pointers that could have been modified or provided from a function that can return NULL, check the pointer for NULL before use. When working with a multithreaded or otherwise asynchronous environment, ensure that proper locking APIs are used to lock before the check, and unlock when it has finished.
- Select a programming language that is not susceptible to these issues.
- Check the results of all functions that return a value and verify that the value is non-null before acting upon it.
Timeline
- CVE record published.
- CISA published its SSVC assessment (exploitation: none, automatable: yes, technical impact: partial).
- Record last changed materially (score, affected products, status or references).
References
Patches and release notes
- git.kernel.org/stable/c/1263b0b26077b1183c3c45a0a2479573a351d423
- git.kernel.org/stable/c/2e8dc5cffc844dacfa79f056dea88002312f253f
- git.kernel.org/stable/c/3d90ca9145f6b97b38d0c2b6b30f6ca6af9c1801
- git.kernel.org/stable/c/5cf5337ef701830f173b4eec00a4f984adeb57a0
- git.kernel.org/stable/c/7aaee12b804c5e0374e7b132b6ec2158ff33dd64
- git.kernel.org/stable/c/7c6782ad4911cbee874e85630226ed389ff2e453
- git.kernel.org/stable/c/adf67a03af39095f05d82050f15813d6f700159d
- git.kernel.org/stable/c/de0139719cdda82806a47580ca0df06fc85e0bd2
Third-party and government advisories
- lists.debian.org/debian-lts-announce/2024/06/msg00017.htmlMailing List, Third Party Advisory
- lists.debian.org/debian-lts-announce/2024/06/msg00020.htmlMailing List, Third Party Advisory
Other references
Recent NULL Pointer Dereference vulnerabilities
- 7.8 High severity
- 7.5 High severity
- 7.5 High severity
- 7.5 High severity
- 7.8 High severity
- 7.5 High severity
Spotted an error? Tell us.