blob: 795dec29f394e2a64caafc46e6bbb423ea07598e [file] [log] [blame]
From bippy-5f407fcff5a0 Mon Sep 17 00:00:00 2001
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: <linux-cve-announce@vger.kernel.org>
Reply-to: <cve@kernel.org>, <linux-kernel@vger.kernel.org>
Subject: CVE-2024-26993: fs: sysfs: Fix reference leak in sysfs_break_active_protection()
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
fs: sysfs: Fix reference leak in sysfs_break_active_protection()
The sysfs_break_active_protection() routine has an obvious reference
leak in its error path. If the call to kernfs_find_and_get() fails then
kn will be NULL, so the companion sysfs_unbreak_active_protection()
routine won't get called (and would only cause an access violation by
trying to dereference kn->parent if it was called). As a result, the
reference to kobj acquired at the start of the function will never be
released.
Fix the leak by adding an explicit kobject_put() call when kn is NULL.
The Linux kernel CVE team has assigned CVE-2024-26993 to this issue.
Affected and fixed versions
===========================
Issue introduced in 4.19 with commit 2afc9166f79b8f6da5f347f48515215ceee4ae37 and fixed in 4.19.313 with commit f28bba37fe244889b81bb5c508d3f6e5c6e342c5
Issue introduced in 4.19 with commit 2afc9166f79b8f6da5f347f48515215ceee4ae37 and fixed in 5.4.275 with commit 57baab0f376bec8f54b0fe6beb8f77a57c228063
Issue introduced in 4.19 with commit 2afc9166f79b8f6da5f347f48515215ceee4ae37 and fixed in 5.10.216 with commit 84bd4c2ae9c3d0a7d3a5c032ea7efff17af17e17
Issue introduced in 4.19 with commit 2afc9166f79b8f6da5f347f48515215ceee4ae37 and fixed in 5.15.157 with commit 43f00210cb257bcb0387e8caeb4b46375d67f30c
Issue introduced in 4.19 with commit 2afc9166f79b8f6da5f347f48515215ceee4ae37 and fixed in 6.1.88 with commit 5d43e072285e81b0b63cee7189b3357c7768a43b
Issue introduced in 4.19 with commit 2afc9166f79b8f6da5f347f48515215ceee4ae37 and fixed in 6.6.29 with commit ac107356aabc362aaeb77463e814fc067a5d3957
Issue introduced in 4.19 with commit 2afc9166f79b8f6da5f347f48515215ceee4ae37 and fixed in 6.8.8 with commit a4c99b57d43bab45225ba92d574a8683f9edc8e4
Issue introduced in 4.19 with commit 2afc9166f79b8f6da5f347f48515215ceee4ae37 and fixed in 6.9 with commit a90bca2228c0646fc29a72689d308e5fe03e6d78
Issue introduced in 3.16.62 with commit e8a37b2fd5b5087bec6cbbf6946ee3caa712953b
Issue introduced in 3.18.121 with commit a6abc93760dd07fcd29760b70e6e7520f22cb288
Issue introduced in 4.4.154 with commit 461a6385e58e8247e6ba2005aa5d1b8d980ee4a2
Issue introduced in 4.9.125 with commit 8a5e02a0f46ea33ed19e48e096a8e8d28e73d10a
Issue introduced in 4.14.68 with commit c984f4d1d40a2f349503b3faf946502ccbf02f9f
Issue introduced in 4.18.6 with commit 807d1d299a04e9ad9a9dac55419c1137a105254b
Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.
Unaffected versions might change over time as fixes are backported to
older supported kernel versions. The official CVE entry at
https://cve.org/CVERecord/?id=CVE-2024-26993
will be updated if fixes are backported, please check that for the most
up to date information about this issue.
Affected files
==============
The file(s) affected by this issue are:
fs/sysfs/file.c
Mitigation
==========
The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes. Individual
changes are never tested alone, but rather are part of a larger kernel
release. Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all. If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
https://git.kernel.org/stable/c/f28bba37fe244889b81bb5c508d3f6e5c6e342c5
https://git.kernel.org/stable/c/57baab0f376bec8f54b0fe6beb8f77a57c228063
https://git.kernel.org/stable/c/84bd4c2ae9c3d0a7d3a5c032ea7efff17af17e17
https://git.kernel.org/stable/c/43f00210cb257bcb0387e8caeb4b46375d67f30c
https://git.kernel.org/stable/c/5d43e072285e81b0b63cee7189b3357c7768a43b
https://git.kernel.org/stable/c/ac107356aabc362aaeb77463e814fc067a5d3957
https://git.kernel.org/stable/c/a4c99b57d43bab45225ba92d574a8683f9edc8e4
https://git.kernel.org/stable/c/a90bca2228c0646fc29a72689d308e5fe03e6d78