CVE-2022-49470·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: btmtksdio: fix use-after-free at btmtksdio_recv_event We should not access skb buffer data anymore after hci_recv_frame was called. [ 39.634809] BUG: KASAN: use-after-free in btmtksdio_recv_event+0x1b0 [ 39.634855] Read of size 1 at addr ffffff80cf28a60d by task kworker [ 39.634962] Call trace: [ 39.634974] dump_backtrace+0x0/0x3b8 [ 39.634999] show_stack+0x20/0x2c [ 39.635016] dump_stack_lvl+0x60/0x78 [ 39.635040] print_address_description+0x70/0x2f0 [ 39.635062] kasan_report+0x154/0x194 [ 39.635079] __asan_report_load1_noabort+0x44/0x50 [ 39.635099] btmtksdio_recv_event+0x1b0/0x1c4 [ 39.635129] btmtksdio_txrx_work+0x6cc/0xac4 [ 39.635157] process_one_work+0x560/0xc5c [ 39.635177] worker_thread+0x7ec/0xcc0 [ 39.635195] kthread+0x2d0/0x3d0 [ 39.635215] ret_from_fork+0x10/0x20 [ 39.635247] Allocated by task 0: [ 39.635260] (stack is not available) [ 39.635281] Freed by task 2392: [ 39.635295] kasan_save_stack+0x38/0x68 [ 39.635319] kasan_set_track+0x28/0x3c [ 39.635338] kasan_set_free_info+0x28/0x4c [ 39.635357] ____kasan_slab_free+0x104/0x150 [ 39.635374] __kasan_slab_free+0x18/0x28 [ 39.635391] slab_free_freelist_hook+0x114/0x248 [ 39.635410] kfree+0xf8/0x2b4 [ 39.635427] skb_free_head+0x58/0x98 [ 39.635447] skb_release_data+0x2f4/0x410 [ 39.635464] skb_release_all+0x50/0x60 [ 39.635481] kfree_skb+0xc8/0x25c [ 39.635498] hci_event_packet+0x894/0xca4 [bluetooth] [ 39.635721] hci_rx_work+0x1c8/0x68c [bluetooth] [ 39.635925] process_one_work+0x560/0xc5c [ 39.635951] worker_thread+0x7ec/0xcc0 [ 39.635970] kthread+0x2d0/0x3d0 [ 39.635990] ret_from_fork+0x10/0x20 [ 39.636021] The buggy address belongs to the object at ffffff80cf28a600 which belongs to the cache kmalloc-512 of size 512 [ 39.636039] The buggy address is located 13 bytes inside of 512-byte region [ffffff80cf28a600, ffffff80cf28a800)
- Severity
- high
- Software
- Kernel
- Fixed in
- 5.18.3
- Published
- 2025-02-26
Affected versions
From: 5.18
Until: 5.18.3
Fixed in: 5.18.3
How to fix this CVE
Update your Linux kernel to version 5.18.3 or later to resolve this use-after-free vulnerability in the Bluetooth SDIO driver. This memory safety issue can cause kernel crashes when the btmtksdio driver processes Bluetooth events. Apply the patch immediately to systems running kernel versions 5.18.0 through 5.18.2 that depend on Bluetooth functionality.
sudo dnf update kernel kernel-develDefensia detects this vulnerability
How to check if you are affected
- Check your kernel version: uname -r
- Verify if the vulnerable kernel range is installed: grep -i version /proc/version | awk '{print $3}' and compare against 5.18.0-5.18.2
- Confirm Bluetooth SDIO driver is loaded: lsmod | grep btmtksdio
- After patching, verify the new kernel version: uname -r should show 5.18.3 or higher
- Check kernel logs for use-after-free errors: dmesg | grep -i 'use-after-free\|btmtksdio\|kasan'
FAQ
What is CVE-2022-49470?
CVE-2022-49470 is a use-after-free memory vulnerability in the Linux kernel's Bluetooth SDIO driver (btmtksdio). The driver incorrectly accesses SKB (socket buffer) data after passing it to hci_recv_frame(), which frees the buffer, resulting in a use-after-free condition that can crash the kernel.
Is CVE-2022-49470 being actively exploited?
No, CVE-2022-49470 is not listed on the CISA KEV catalog and has no known public exploits. However, it remains a critical stability issue for systems with Bluetooth SDIO hardware.
What versions of Kernel are affected by CVE-2022-49470?
Linux kernel versions 5.18.0 through 5.18.2 are affected. The vulnerability was fixed in kernel 5.18.3 and later stable releases.
How do I check if my server is vulnerable to CVE-2022-49470?
Run 'uname -r' and check if your kernel version falls within 5.18.0-5.18.2, then verify Bluetooth SDIO hardware is present with 'lsmod | grep btmtksdio'. If both conditions are true, your system is vulnerable.
Does Defensia detect CVE-2022-49470?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If the Linux kernel is installed on a monitored server, CVE-2022-49470 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2022-49470. Free for 1 server.
Get started free