CVE Details
Description
In the Linux kernel, the following vulnerability has been resolved:\njfs: Fix uaf in dbFreeBits\n[syzbot reported]\n==================================================================\nBUG: KASAN: slab-use-after-free in __mutex_lock_common kernel/locking/mutex.c:587 [inline]\nBUG: KASAN: slab-use-after-free in __mutex_lock+0xfe/0xd70 kernel/locking/mutex.c:752\nRead of size 8 at addr ffff8880229254b0 by task syz-executor357/5216\nCPU: 0 UID: 0 PID: 5216 Comm: syz-executor357 Not tainted 6.11.0-rc3-syzkaller-00156-gd7a5aa4b3c00 #0\nHardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/27/2024\nCall Trace:\n\n__dump_stack lib/dump_stack.c:93 [inline]\ndump_stack_lvl+0x241/0x360 lib/dump_stack.c:119\nprint_address_description mm/kasan/report.c:377 [inline]\nprint_report+0x169/0x550 mm/kasan/report.c:488\nkasan_report+0x143/0x180 mm/kasan/report.c:601\n__mutex_lock_common kernel/locking/mutex.c:587 [inline]\n__mutex_lock+0xfe/0xd70 kernel/locking/mutex.c:752\ndbFreeBits+0x7ea/0xd90 fs/jfs/jfs_dmap.c:2390\ndbFreeDmap fs/jfs/jfs_dmap.c:2089 [inline]\ndbFree+0x35b/0x680 fs/jfs/jfs_dmap.c:409\ndbDiscardAG+0x8a9/0xa20 fs/jfs/jfs_dmap.c:1650\njfs_ioc_trim+0x433/0x670 fs/jfs/jfs_discard.c:100\njfs_ioctl+0x2d0/0x3e0 fs/jfs/ioctl.c:131\nvfs_ioctl fs/ioctl.c:51 [inline]\n__do_sys_ioctl fs/ioctl.c:907 [inline]\n__se_sys_ioctl+0xfc/0x170 fs/ioctl.c:893\ndo_syscall_x64 arch/x86/entry/common.c:52 [inline]\ndo_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83\nFreed by task 5218:\nkasan_save_stack mm/kasan/common.c:47 [inline]\nkasan_save_track+0x3f/0x80 mm/kasan/common.c:68\nkasan_save_free_info+0x40/0x50 mm/kasan/generic.c:579\npoison_slab_object+0xe0/0x150 mm/kasan/common.c:240\n__kasan_slab_free+0x37/0x60 mm/kasan/common.c:256\nkasan_slab_free include/linux/kasan.h:184 [inline]\nslab_free_hook mm/slub.c:2252 [inline]\nslab_free mm/slub.c:4473 [inline]\nkfree+0x149/0x360 mm/slub.c:4594\ndbUnmount+0x11d/0x190 fs/jfs/jfs_dmap.c:278\njfs_mount_rw+0x4ac/0x6a0 fs/jfs/jfs_mount.c:247\njfs_remount+0x3d1/0x6b0 fs/jfs/super.c:454\nreconfigure_super+0x445/0x880 fs/super.c:1083\nvfs_cmd_reconfigure fs/fsopen.c:263 [inline]\nvfs_fsconfig_locked fs/fsopen.c:292 [inline]\n__do_sys_fsconfig fs/fsopen.c:473 [inline]\n__se_sys_fsconfig+0xb6e/0xf80 fs/fsopen.c:345\ndo_syscall_x64 arch/x86/entry/common.c:52 [inline]\ndo_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83\nentry_SYSCALL_64_after_hwframe+0x77/0x7f\n[Analysis]\nThere are two paths (dbUnmount and jfs_ioc_trim) that generate race\ncondition when accessing bmap, which leads to the occurrence of uaf.\nUse the lock s_umount to synchronize them, in order to avoid uaf caused\nby race condition.
See more information about CVE-2024-49903 from MITRE CVE dictionary and NIST NVD
NOTE: The following CVSS metrics and score provided are preliminary and subject to review.
CVSS v3 metrics
Base Score: | 7.0 |
Vector String: | CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H |
Version: | 3.1 |
Attack Vector: | Local |
Attack Complexity: | High |
Privileges Required: | Low |
User Interaction: | None |
Scope: | Unchanged |
Confidentiality: | High |
Integrity: | High |
Availability: | High |
Errata information