Description
In the Linux kernel, the following vulnerability has been resolved: wifi: rtlwifi: pci: fix possible use-after-free caused by unfinished irq_prepare_bcn_tasklet The irq_prepare_bcn_tasklet is initialized in rtl_pci_init() and scheduled when RTL_IMR_BCNINT interrupt is triggered by hardware. But it is never killed in rtl_pci_deinit(). When the rtlwifi card probe fails or is being detached, the ieee80211_hw is deallocated. However, irq_prepare_bcn_tasklet may still be running or pending, leading to use-after-free when the freed ieee80211_hw is accessed in _rtl_pci_prepare_bcn_tasklet(). Similar to irq_tasklet, add tasklet_kill() in rtl_pci_deinit() to ensure that irq_prepare_bcn_tasklet is properly terminated before the ieee80211_hw is released. The issue was identified through static analysis.
Product status
0c8173385e549f95cd80c3fff5aab87b4f881d8d (git) before ae10d4a1ab6bcaa1336abb171908a9a365761d3e
0c8173385e549f95cd80c3fff5aab87b4f881d8d (git) before fac1079e0fdec6df6d7562c21941587236dc3def
0c8173385e549f95cd80c3fff5aab87b4f881d8d (git) before e40873820c9d245ce482faa7ad514ebdb3b8d23d
0c8173385e549f95cd80c3fff5aab87b4f881d8d (git) before 008c456b76e9070979bc0e763897a5d3b0fdd4dc
0c8173385e549f95cd80c3fff5aab87b4f881d8d (git) before 7731b67bd59d1284d150cbe40a47e95a10613234
0c8173385e549f95cd80c3fff5aab87b4f881d8d (git) before aa10a452e34810987fb9f4a047995b30003fb53f
0c8173385e549f95cd80c3fff5aab87b4f881d8d (git) before 3c0e8a3179e6325a7dc6ce221aef0e03d854ab4b
0c8173385e549f95cd80c3fff5aab87b4f881d8d (git) before 039cd522dc70151da13329a5e3ae19b1736f468a
2.6.38
Any version before 2.6.38
5.10.258 (semver)
5.15.209 (semver)
6.1.175 (semver)
6.6.141 (semver)
6.12.91 (semver)
6.18.33 (semver)
7.0.10 (semver)
7.1 (original_commit_for_fix)
References
git.kernel.org/...c/ae10d4a1ab6bcaa1336abb171908a9a365761d3e
git.kernel.org/...c/fac1079e0fdec6df6d7562c21941587236dc3def
git.kernel.org/...c/e40873820c9d245ce482faa7ad514ebdb3b8d23d
git.kernel.org/...c/008c456b76e9070979bc0e763897a5d3b0fdd4dc
git.kernel.org/...c/7731b67bd59d1284d150cbe40a47e95a10613234
git.kernel.org/...c/aa10a452e34810987fb9f4a047995b30003fb53f
git.kernel.org/...c/3c0e8a3179e6325a7dc6ce221aef0e03d854ab4b
git.kernel.org/...c/039cd522dc70151da13329a5e3ae19b1736f468a