CVE-2026-53112
N/A
Summary
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.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 0c8173385e549f95cd80c3fff5aab87b4f881d8d < ae10d4a1ab6bcaa1336abb171908a9a365761d3e | affected |
| Linux | Linux | 0c8173385e549f95cd80c3fff5aab87b4f881d8d < fac1079e0fdec6df6d7562c21941587236dc3def | affected |
| Linux | Linux | 0c8173385e549f95cd80c3fff5aab87b4f881d8d < e40873820c9d245ce482faa7ad514ebdb3b8d23d | affected |
| Linux | Linux | 0c8173385e549f95cd80c3fff5aab87b4f881d8d < 008c456b76e9070979bc0e763897a5d3b0fdd4dc | affected |
| Linux | Linux | 0c8173385e549f95cd80c3fff5aab87b4f881d8d < 7731b67bd59d1284d150cbe40a47e95a10613234 | affected |
| Linux | Linux | 0c8173385e549f95cd80c3fff5aab87b4f881d8d < aa10a452e34810987fb9f4a047995b30003fb53f | affected |
| Linux | Linux | 0c8173385e549f95cd80c3fff5aab87b4f881d8d < 3c0e8a3179e6325a7dc6ce221aef0e03d854ab4b | affected |
| Linux | Linux | 0c8173385e549f95cd80c3fff5aab87b4f881d8d < 039cd522dc70151da13329a5e3ae19b1736f468a | affected |
| Linux | Linux | 2.6.38 | affected |
| Linux | Linux | 0 < 2.6.38 | unaffected |
| Linux | Linux | 5.10.258 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.209 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.175 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.141 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.91 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.33 <= 6.18.* | unaffected |
| Linux | Linux | 7.0.10 <= 7.0.* | unaffected |
| Linux | Linux | 7.1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/ae10d4a1ab6bcaa1336abb171908a9a365761d3e
- https://git.kernel.org/stable/c/fac1079e0fdec6df6d7562c21941587236dc3def
- https://git.kernel.org/stable/c/e40873820c9d245ce482faa7ad514ebdb3b8d23d
- https://git.kernel.org/stable/c/008c456b76e9070979bc0e763897a5d3b0fdd4dc
- https://git.kernel.org/stable/c/7731b67bd59d1284d150cbe40a47e95a10613234
- https://git.kernel.org/stable/c/aa10a452e34810987fb9f4a047995b30003fb53f
- https://git.kernel.org/stable/c/3c0e8a3179e6325a7dc6ce221aef0e03d854ab4b
- https://git.kernel.org/stable/c/039cd522dc70151da13329a5e3ae19b1736f468a
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.