In the Linux kernel, the following vulnerability has been resolved:
FS:JFS:UBSAN:array-index-out-of-bounds in dbAdjTree
Syzkaller reported the following issue:
UBSAN: array-index-out-of-bounds in fs/jfs/jfs_dmap.c:2867:6 index 196694 is out of range for type 's8[1365]' (aka 'signed char[1365]') CPU: 1 PID: 109 Comm: jfsCommit Not tainted 6.6.0-rc3-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/04/2023 Call Trace: <TASK> __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0x1e7/0x2d0 lib/dump_stack.c:106 ubsan_epilogue lib/ubsan.c:217 [inline] __ubsan_handle_out_of_bounds+0x11c/0x150 lib/ubsan.c:348 dbAdjTree+0x474/0x4f0 fs/jfs/jfs_dmap.c:2867 dbJoin+0x210/0x2d0 fs/jfs/jfs_dmap.c:2834 dbFreeBits+0x4eb/0xda0 fs/jfs/jfs_dmap.c:2331 dbFreeDmap fs/jfs/jfs_dmap.c:2080 [inline] dbFree+0x343/0x650 fs/jfs/jfs_dmap.c:402 txFreeMap+0x798/0xd50 fs/jfs/jfs_txnmgr.c:2534 txUpdateMap+0x342/0x9e0 txLazyCommit fs/jfs/jfs_txnmgr.c:2664 [inline] jfs_lazycommit+0x47a/0xb70 fs/jfs/jfs_txnmgr.c:2732 kthread+0x2d3/0x370 kernel/kthread.c:388 ret_from_fork+0x48/0x80 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:304 </TASK> ================================================================================ Kernel panic - not syncing: UBSAN: panic_on_warn set ... CPU: 1 PID: 109 Comm: jfsCommit Not tainted 6.6.0-rc3-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/04/2023 Call Trace: <TASK> __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0x1e7/0x2d0 lib/dump_stack.c:106 panic+0x30f/0x770 kernel/panic.c:340 check_panic_on_warn+0x82/0xa0 kernel/panic.c:236 ubsan_epilogue lib/ubsan.c:223 [inline] __ubsan_handle_out_of_bounds+0x13c/0x150 lib/ubsan.c:348 dbAdjTree+0x474/0x4f0 fs/jfs/jfs_dmap.c:2867 dbJoin+0x210/0x2d0 fs/jfs/jfs_dmap.c:2834 dbFreeBits+0x4eb/0xda0 fs/jfs/jfs_dmap.c:2331 dbFreeDmap fs/jfs/jfs_dmap.c:2080 [inline] dbFree+0x343/0x650 fs/jfs/jfs_dmap.c:402 txFreeMap+0x798/0xd50 fs/jfs/jfs_txnmgr.c:2534 txUpdateMap+0x342/0x9e0 txLazyCommit fs/jfs/jfs_txnmgr.c:2664 [inline] jfs_lazycommit+0x47a/0xb70 fs/jfs/jfs_txnmgr.c:2732 kthread+0x2d3/0x370 kernel/kthread.c:388 ret_from_fork+0x48/0x80 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:304 </TASK> Kernel Offset: disabled Rebooting in 86400 seconds..
The issue is caused when the value of lp becomes greater than CTLTREESIZE which is the max size of stree. Adding a simple check solves this issue.
Dave: As the function returns a void, good error handling would require a more intrusive code reorganization, so I modified Osama's patch at use WARN_ON_ONCE for lack of a cleaner option.
The patch is tested via syzbot.
CVSS Details
- CVSS 3.1 Base Score: 7.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | May 8, 2024 | Mar 6, 2024 |
| Suse | — | Upgrade dtb-amlogicUpgrade kernel-macrosUpgrade kernel-rt-livepatch-develUpgrade cluster-md-kmp-rtUpgrade kernel-sourceUpgrade kernel-obs-buildUpgrade dtb-apmUpgrade dtb-exynosUpgrade gfs2-kmp-64kbUpgrade kernel-azure-optionalUpgrade kernel-azure-develUpgrade kernel-kvmsmallUpgrade kernel-64kbUpgrade kernel-devel-azureUpgrade kernel-azure-vdsoUpgrade kernel-syms-rtUpgrade ocfs2-kmp-rtUpgrade kernel-kvmsmall-vdsoUpgrade kernel-rt-develUpgrade kernel-64kb-livepatch-develUpgrade kernel-rt-extraUpgrade kernel-rtUpgrade kselftests-kmp-azureUpgrade dtb-qcomUpgrade kernel-zfcpdumpUpgrade kernel-default-vdsoUpgrade kernel-source-rtUpgrade kernel-syms-azureUpgrade kernel-rt-livepatchUpgrade dtb-armUpgrade dlm-kmp-64kbUpgrade kernel-default-base-rebuildUpgrade kernel-obs-qaUpgrade kernel-azure-livepatch-develUpgrade dtb-alteraUpgrade cluster-md-kmp-defaultUpgrade kselftests-kmp-64kbUpgrade kernel-rt_debug-develUpgrade kernel-debug-livepatch-develUpgrade cluster-md-kmp-azureUpgrade kernel-rt_debug-vdsoUpgrade kernel-rt-vdsoUpgrade dtb-rockchipUpgrade kernel-source-azureUpgrade dtb-lgUpgrade reiserfs-kmp-azureUpgrade kernel-default-extraUpgrade dtb-mediatekUpgrade kernel-rt-optionalUpgrade kernel-kvmsmall-develUpgrade gfs2-kmp-rtUpgrade ocfs2-kmp-64kbUpgrade dtb-broadcomUpgrade dlm-kmp-azureUpgrade ocfs2-kmp-azureUpgrade kernel-rt_debugUpgrade kernel-64kb-optionalUpgrade ocfs2-kmp-defaultUpgrade kernel-symsUpgrade kernel-devel-rtUpgrade dtb-hisiliconUpgrade kernel-default-baseUpgrade kernel-defaultUpgrade kernel-develUpgrade kernel-debug-vdsoUpgrade dtb-sprdUpgrade kselftests-kmp-defaultUpgrade gfs2-kmp-defaultUpgrade kernel-64kb-develUpgrade kselftests-kmp-rtUpgrade dtb-socionextUpgrade dtb-renesasUpgrade kernel-docs-htmlUpgrade kernel-debug-develUpgrade dtb-nvidiaUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-default-optionalUpgrade kernel-default-develUpgrade dtb-marvellUpgrade dtb-freescaleUpgrade reiserfs-kmp-64kbUpgrade dtb-allwinnerUpgrade dlm-kmp-defaultUpgrade dtb-amazonUpgrade kernel-rt_debug-livepatch-develUpgrade dtb-xilinxUpgrade reiserfs-kmp-rtUpgrade dlm-kmp-rtUpgrade kernel-default-livepatchUpgrade kernel-azure-extraUpgrade reiserfs-kmp-defaultUpgrade kernel-source-vanillaUpgrade gfs2-kmp-azureUpgrade dtb-amdUpgrade kernel-64kb-extraUpgrade kernel-azureUpgrade cluster-md-kmp-64kbUpgrade kernel-default-livepatch-develUpgrade dtb-caviumUpgrade dtb-appleUpgrade kernel-docsUpgrade kernel-debug | Apr 18, 2024 | Mar 6, 2024 |
| Ubuntu | — | Upgrade linux-image-raspiUpgrade linux-image-6.5.0-1016-laptopUpgrade linux-image-aws-lts-20.04Upgrade linux-image-virtual-hwe-16.04Upgrade linux-image-nvidia-6.5Upgrade linux-image-oem-osp1Upgrade linux-image-6.5.0-1019-nvidiaUpgrade linux-image-4.4.0-254-genericUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-generic-64kUpgrade linux-image-aws-hweUpgrade linux-image-5.15.0-1059-gcpUpgrade linux-image-4.4.0-1131-awsUpgrade linux-image-aws-lts-22.04Upgrade linux-image-4.15.0-225-lowlatencyUpgrade linux-image-azureUpgrade linux-image-gkeop-5.4Upgrade linux-image-raspi2Upgrade linux-image-oem-22.04aUpgrade linux-image-oem-20.04cUpgrade linux-image-azure-lts-22.04Upgrade linux-image-lowlatencyUpgrade linux-image-4.15.0-1131-oracleUpgrade linux-image-ibm-lts-20.04Upgrade linux-image-azure-lts-20.04Upgrade linux-image-gkeopUpgrade linux-image-5.15.0-1061-awsUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-gcp-lts-20.04Upgrade linux-image-gke-5.15Upgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-oracle-lts-20.04Upgrade linux-image-5.4.0-1071-ibmUpgrade linux-image-generic-lpaeUpgrade linux-image-5.4.0-1108-raspiUpgrade linux-image-5.15.0-106-generic-lpaeUpgrade linux-image-5.15.0-1054-nvidia-lowlatencyUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-5.4.0-181-lowlatencyUpgrade linux-image-6.5.0-35-genericUpgrade linux-image-5.4.0-1129-azureUpgrade linux-image-intelUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-azure-lts-18.04Upgrade linux-image-oem-22.04Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-6.5.0-1020-gcpUpgrade linux-image-starfiveUpgrade linux-image-azure-fdeUpgrade linux-image-4.4.0-254-lowlatencyUpgrade linux-image-oem-22.04cUpgrade linux-image-gcp-lts-18.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-4.4.0-1169-awsUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-4.15.0-1168-awsUpgrade linux-image-ibmUpgrade linux-image-5.15.0-1058-intel-iotgUpgrade linux-image-oem-20.04bUpgrade linux-image-4.15.0-1152-kvmUpgrade linux-image-genericUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-6.5.0-35-lowlatencyUpgrade linux-image-5.4.0-1123-oracleUpgrade linux-image-lowlatency-64kUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-nvidiaUpgrade linux-image-5.4.0-1043-xilinx-zynqmpUpgrade linux-image-generic-lts-xenialUpgrade linux-image-5.15.0-106-lowlatencyUpgrade linux-image-gcpUpgrade linux-image-intel-iotgUpgrade linux-image-6.5.0-1017-raspiUpgrade linux-image-5.4.0-181-generic-lpaeUpgrade linux-image-oracle-lts-18.04Upgrade linux-image-5.15.0-1058-kvmUpgrade linux-image-5.15.0-1057-intel-iotgUpgrade linux-image-6.5.0-1021-azure-fdeUpgrade linux-image-5.4.0-1124-awsUpgrade linux-image-virtual-lts-xenialUpgrade linux-image-5.4.0-1036-iotUpgrade linux-image-6.5.0-1014-starfiveUpgrade linux-image-4.15.0-1177-azureUpgrade linux-image-4.4.0-1132-kvmUpgrade linux-image-lowlatency-lts-xenialUpgrade linux-image-5.15.0-106-lowlatency-64kUpgrade linux-image-oem-22.04bUpgrade linux-image-5.4.0-1084-bluefieldUpgrade linux-image-5.15.0-1054-nvidiaUpgrade linux-image-oem-20.04Upgrade linux-image-generic-hwe-16.04Upgrade linux-image-oemUpgrade linux-image-azure-cvmUpgrade linux-image-4.15.0-1162-gcpUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-6.5.0-35-generic-64kUpgrade linux-image-laptop-23.10Upgrade linux-image-virtual-hwe-18.04Upgrade linux-image-generic-hwe-20.04Upgrade linux-image-5.4.0-181-genericUpgrade linux-image-5.15.0-1063-azure-fdeUpgrade linux-image-5.15.0-106-genericUpgrade linux-image-gkeop-5.15Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-6.5.0-1021-azureUpgrade linux-image-oem-22.04dUpgrade linux-image-bluefieldUpgrade linux-image-4.15.0-225-genericUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-oracle-64kUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-oem-20.04dUpgrade linux-image-5.4.0-1128-gcpUpgrade linux-image-6.5.0-1023-oracle-64kUpgrade linux-image-awsUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-5.15.0-1054-raspiUpgrade linux-image-oracleUpgrade linux-image-6.1.0-1035-oemUpgrade linux-image-generic-hwe-18.04Upgrade linux-image-6.5.0-1019-nvidia-64kUpgrade linux-image-6.5.0-1020-awsUpgrade linux-image-5.15.0-1044-gkeopUpgrade linux-image-5.15.0-1058-gkeUpgrade linux-image-nvidia-64k-6.5Upgrade linux-image-aws-lts-18.04Upgrade linux-image-5.15.0-1054-ibmUpgrade linux-image-5.4.0-1112-kvmUpgrade linux-image-5.4.0-1091-gkeopUpgrade linux-image-lowlatency-hwe-16.04Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-6.5.0-35-lowlatency-64kUpgrade linux-image-raspi-hwe-18.04Upgrade linux-image-5.15.0-1063-azureUpgrade linux-image-virtualUpgrade linux-image-kvmUpgrade linux-image-6.5.0-1023-oracleUpgrade linux-image-raspi-nolpaeUpgrade linux-image-5.15.0-1059-oracleUpgrade linux-image-6.5.0-1023-oemUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-gkeUpgrade linux-image-5.15.0-106-generic-64k | Mar 12, 2024 | Mar 6, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | Mar 6, 2024 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub