CVE-2024-53227·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: scsi: bfa: Fix use-after-free in bfad_im_module_exit() BUG: KASAN: slab-use-after-free in __lock_acquire+0x2aca/0x3a20 Read of size 8 at addr ffff8881082d80c8 by task modprobe/25303 Call Trace: <TASK> dump_stack_lvl+0x95/0xe0 print_report+0xcb/0x620 kasan_report+0xbd/0xf0 __lock_acquire+0x2aca/0x3a20 lock_acquire+0x19b/0x520 _raw_spin_lock+0x2b/0x40 attribute_container_unregister+0x30/0x160 fc_release_transport+0x19/0x90 [scsi_transport_fc] bfad_im_module_exit+0x23/0x60 [bfa] bfad_init+0xdb/0xff0 [bfa] do_one_initcall+0xdc/0x550 do_init_module+0x22d/0x6b0 load_module+0x4e96/0x5ff0 init_module_from_file+0xcd/0x130 idempotent_init_module+0x330/0x620 __x64_sys_finit_module+0xb3/0x110 do_syscall_64+0xc1/0x1d0 entry_SYSCALL_64_after_hwframe+0x77/0x7f </TASK> Allocated by task 25303: kasan_save_stack+0x24/0x50 kasan_save_track+0x14/0x30 __kasan_kmalloc+0x7f/0x90 fc_attach_transport+0x4f/0x4740 [scsi_transport_fc] bfad_im_module_init+0x17/0x80 [bfa] bfad_init+0x23/0xff0 [bfa] do_one_initcall+0xdc/0x550 do_init_module+0x22d/0x6b0 load_module+0x4e96/0x5ff0 init_module_from_file+0xcd/0x130 idempotent_init_module+0x330/0x620 __x64_sys_finit_module+0xb3/0x110 do_syscall_64+0xc1/0x1d0 entry_SYSCALL_64_after_hwframe+0x77/0x7f Freed by task 25303: kasan_save_stack+0x24/0x50 kasan_save_track+0x14/0x30 kasan_save_free_info+0x3b/0x60 __kasan_slab_free+0x38/0x50 kfree+0x212/0x480 bfad_im_module_init+0x7e/0x80 [bfa] bfad_init+0x23/0xff0 [bfa] do_one_initcall+0xdc/0x550 do_init_module+0x22d/0x6b0 load_module+0x4e96/0x5ff0 init_module_from_file+0xcd/0x130 idempotent_init_module+0x330/0x620 __x64_sys_finit_module+0xb3/0x110 do_syscall_64+0xc1/0x1d0 entry_SYSCALL_64_after_hwframe+0x77/0x7f Above issue happens as follows: bfad_init error = bfad_im_module_init() fc_release_transport(bfad_im_scsi_transport_template); if (error) goto ext; ext: bfad_im_module_exit(); fc_release_transport(bfad_im_scsi_transport_template); --> Trigger double release Don't call bfad_im_module_exit() if bfad_im_module_init() failed.
- Severity
- high
- Software
- Kernel
- Fixed in
- 6.12.2
- Published
- 2024-12-27
Affected versions
From: 6.12
Until: 6.12.2
Fixed in: 6.12.2
How to fix this CVE
Update your Linux kernel to version 6.12.2 or later to resolve this use-after-free vulnerability in the BFA SCSI driver. The issue occurs when module initialization fails, causing a double-release of transport resources during cleanup. Systems running kernel versions 6.12 through 6.12.1 should prioritize this patch to prevent kernel memory corruption and potential denial of service.
sudo dnf update kernel kernel-develDefensia detects this vulnerability
How to check if you are affected
- Check your kernel version: uname -r — ensure it is NOT in the 6.12.0 to 6.12.1 range
- Verify if BFA SCSI driver is loaded: lsmod | grep bfa — if present, the vulnerability affects your system
- Search kernel logs for KASAN warnings: sudo journalctl -b | grep -i 'use-after-free\|bfad_im_module' — look for memory safety violations
- Confirm the patch: grep -i 'bfad_im_module_exit' /boot/config-$(uname -r) — verify the fix is present in your kernel configuration
FAQ
What is CVE-2024-53227?
CVE-2024-53227 is a use-after-free vulnerability in the Linux kernel's BFA SCSI driver that occurs during module initialization failure, causing the cleanup routine to double-release transport resources and corrupt kernel memory.
Is CVE-2024-53227 being actively exploited?
No, this vulnerability is not listed in CISA's Known Exploited Vulnerabilities catalog and has no public exploit available, though it poses a high-severity memory safety risk.
What versions of Kernel are affected by CVE-2024-53227?
Linux kernel versions 6.12 through 6.12.1 are vulnerable; the fix is available in version 6.12.2 and later.
How do I check if my server is vulnerable to CVE-2024-53227?
Run 'uname -r' to check your kernel version — if it shows 6.12.0 or 6.12.1, you are vulnerable. Additionally, confirm the BFA driver is in use with 'lsmod | grep bfa'.
Does Defensia detect CVE-2024-53227?
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-2024-53227 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/0ceac8012d3ddea3317f0d82934293d05feb8af1
- https://git.kernel.org/stable/c/178b8f38932d635e90f5f0e9af1986c6f4a89271
- https://git.kernel.org/stable/c/1ffdde30a90bf8efe8f270407f486706962b3292
- https://git.kernel.org/stable/c/3932c753f805a02e9364a4c58b590f21901f8490
- https://git.kernel.org/stable/c/8f5a97443b547b4c83f876f1d6a11df0f1fd4efb
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2024-53227. Free for 1 server.
Get started free