| 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-58063: wifi: rtlwifi: fix memory leaks and invalid access at probe error path |
| |
| Description |
| =========== |
| |
| In the Linux kernel, the following vulnerability has been resolved: |
| |
| wifi: rtlwifi: fix memory leaks and invalid access at probe error path |
| |
| Deinitialize at reverse order when probe fails. |
| |
| When init_sw_vars fails, rtl_deinit_core should not be called, specially |
| now that it destroys the rtl_wq workqueue. |
| |
| And call rtl_pci_deinit and deinit_sw_vars, otherwise, memory will be |
| leaked. |
| |
| Remove pci_set_drvdata call as it will already be cleaned up by the core |
| driver code and could lead to memory leaks too. cf. commit 8d450935ae7f |
| ("wireless: rtlwifi: remove unnecessary pci_set_drvdata()") and |
| commit 3d86b93064c7 ("rtlwifi: Fix PCI probe error path orphaned memory"). |
| |
| The Linux kernel CVE team has assigned CVE-2024-58063 to this issue. |
| |
| |
| Affected and fixed versions |
| =========================== |
| |
| Issue introduced in 2.6.38 with commit 0c8173385e549f95cd80c3fff5aab87b4f881d8d and fixed in 5.4.291 with commit 85b67b4c4a0f8a6fb20cf4ef7684ff2b0cf559df |
| Issue introduced in 2.6.38 with commit 0c8173385e549f95cd80c3fff5aab87b4f881d8d and fixed in 5.10.235 with commit 455e0f40b5352186a9095f2135d5c89255e7c39a |
| Issue introduced in 2.6.38 with commit 0c8173385e549f95cd80c3fff5aab87b4f881d8d and fixed in 5.15.179 with commit b96371339fd9cac90f5ee4ac17ee5c4cbbdfa6f7 |
| Issue introduced in 2.6.38 with commit 0c8173385e549f95cd80c3fff5aab87b4f881d8d and fixed in 6.1.129 with commit ee0b0d7baa8a6d42c7988f6e50c8f164cdf3fa47 |
| Issue introduced in 2.6.38 with commit 0c8173385e549f95cd80c3fff5aab87b4f881d8d and fixed in 6.6.76 with commit 624cea89a0865a2bc3e00182a6b0f954a94328b4 |
| Issue introduced in 2.6.38 with commit 0c8173385e549f95cd80c3fff5aab87b4f881d8d and fixed in 6.12.13 with commit 32acebca0a51f5e372536bfdc0d7d332ab749013 |
| Issue introduced in 2.6.38 with commit 0c8173385e549f95cd80c3fff5aab87b4f881d8d and fixed in 6.13.2 with commit 6b76bab5c257463302c9e97f5d84d524457468eb |
| Issue introduced in 2.6.38 with commit 0c8173385e549f95cd80c3fff5aab87b4f881d8d and fixed in 6.14 with commit e7ceefbfd8d447abc8aca8ab993a942803522c06 |
| |
| 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-58063 |
| 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: |
| drivers/net/wireless/realtek/rtlwifi/pci.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/85b67b4c4a0f8a6fb20cf4ef7684ff2b0cf559df |
| https://git.kernel.org/stable/c/455e0f40b5352186a9095f2135d5c89255e7c39a |
| https://git.kernel.org/stable/c/b96371339fd9cac90f5ee4ac17ee5c4cbbdfa6f7 |
| https://git.kernel.org/stable/c/ee0b0d7baa8a6d42c7988f6e50c8f164cdf3fa47 |
| https://git.kernel.org/stable/c/624cea89a0865a2bc3e00182a6b0f954a94328b4 |
| https://git.kernel.org/stable/c/32acebca0a51f5e372536bfdc0d7d332ab749013 |
| https://git.kernel.org/stable/c/6b76bab5c257463302c9e97f5d84d524457468eb |
| https://git.kernel.org/stable/c/e7ceefbfd8d447abc8aca8ab993a942803522c06 |