CVE-2026-46069
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
wifi: mwifiex: fix use-after-free in mwifiex_adapter_cleanup()
The mwifiex_adapter_cleanup() function uses timer_delete() (non-synchronous) for the wakeup_timer before the adapter structure is freed. This is incorrect because timer_delete() does not wait for any running timer callback to complete.
If the wakeup_timer callback (wakeup_timer_fn) is executing when mwifiex_adapter_cleanup() is called, the callback will continue to access adapter fields (adapter->hw_status, adapter->if_ops.card_reset, etc.) which may be freed by mwifiex_free_adapter() called later in the mwifiex_remove_card() path.
Use timer_delete_sync() instead to ensure any running timer callback has completed before returning.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 4636187da60b6e33526050235c610409d9cc00e8 < c3508895450cca4aeaf5dbadbb5e582363005264 | affected |
| Linux | Linux | 4636187da60b6e33526050235c610409d9cc00e8 < 1958a92599b2653d730ccb6f5685fc3fbed21812 | affected |
| Linux | Linux | 4636187da60b6e33526050235c610409d9cc00e8 < a88f5391dc68f78cae5eb6a8cd341cafee795d3d | affected |
| Linux | Linux | 4636187da60b6e33526050235c610409d9cc00e8 < 11869ce402d95519d49b25a2a97741f68d69d103 | affected |
| Linux | Linux | 4636187da60b6e33526050235c610409d9cc00e8 < 63fe3389b3e092d6c0eeea9fc0318e7918b16618 | affected |
| Linux | Linux | 4636187da60b6e33526050235c610409d9cc00e8 < 4e179a60a60c0a5aea245e8e67768343c0f070b8 | affected |
| Linux | Linux | 4636187da60b6e33526050235c610409d9cc00e8 < 030abbae49cf9fd1fba7aa08e15ec81efbeb78cf | affected |
| Linux | Linux | 4636187da60b6e33526050235c610409d9cc00e8 < ae5e95d4157481693be2317e3ffcd84e36010cbb | affected |
| Linux | Linux | 4.0 | affected |
| Linux | Linux | 0 < 4.0 | unaffected |
| Linux | Linux | 5.10.259 <= 5.10.* | unaffected |
| Linux | Linux | 5.15.210 <= 5.15.* | unaffected |
| Linux | Linux | 6.1.176 <= 6.1.* | unaffected |
| Linux | Linux | 6.6.140 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.86 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.27 <= 6.18.* | unaffected |
| Linux | Linux | 7.0.4 <= 7.0.* | unaffected |
| Linux | Linux | 7.1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/c3508895450cca4aeaf5dbadbb5e582363005264
- https://git.kernel.org/stable/c/1958a92599b2653d730ccb6f5685fc3fbed21812
- https://git.kernel.org/stable/c/a88f5391dc68f78cae5eb6a8cd341cafee795d3d
- https://git.kernel.org/stable/c/11869ce402d95519d49b25a2a97741f68d69d103
- https://git.kernel.org/stable/c/63fe3389b3e092d6c0eeea9fc0318e7918b16618
- https://git.kernel.org/stable/c/4e179a60a60c0a5aea245e8e67768343c0f070b8
- https://git.kernel.org/stable/c/030abbae49cf9fd1fba7aa08e15ec81efbeb78cf
- https://git.kernel.org/stable/c/ae5e95d4157481693be2317e3ffcd84e36010cbb
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.