In the Linux kernel, the following vulnerability has been resolved:
ext4: fix uninitialized ratelimit_state->lock access in __ext4_fill_super()
In the following concurrency we will access the uninitialized rs->lock:
ext4_fill_super ext4_register_sysfs // sysfs registered msg_ratelimit_interval_ms // Other processes modify rs->interval to // non-zero via msg_ratelimit_interval_ms ext4_orphan_cleanup ext4_msg(sb, KERN_INFO, "Errors on filesystem, " __ext4_msg ___ratelimit(&(EXT4_SB(sb)->s_msg_ratelimit_state) if (!rs->interval) // do nothing if interval is 0 return 1; raw_spin_trylock_irqsave(&rs->lock, flags) raw_spin_trylock(lock) _raw_spin_trylock __raw_spin_trylock spin_acquire(&lock->dep_map, 0, 1, _RET_IP_) lock_acquire __lock_acquire register_lock_class assign_lock_key dump_stack(); ratelimit_state_init(&sbi->s_msg_ratelimit_state, 5 * HZ, 10); raw_spin_lock_init(&rs->lock); // init rs->lock here
and get the following dump_stack:
========================================================= INFO: trying to register non-static key. The code is fine but needs lockdep annotation, or maybe you didn't initialize this object before use? turning off the locking correctness validator. CPU: 12 PID: 753 Comm: mount Tainted: G E 6.7.0-rc6-next-20231222 #504 [...] Call Trace: dump_stack_lvl+0xc5/0x170 dump_stack+0x18/0x30 register_lock_class+0x740/0x7c0 __lock_acquire+0x69/0x13a0 lock_acquire+0x120/0x450 _raw_spin_trylock+0x98/0xd0 ___ratelimit+0xf6/0x220 __ext4_msg+0x7f/0x160 [ext4] ext4_orphan_cleanup+0x665/0x740 [ext4] __ext4_fill_super+0x21ea/0x2b10 [ext4] ext4_fill_super+0x14d/0x360 [ext4] [...] =========================================================
Normally interval is 0 until s_msg_ratelimit_state is initialized, so ___ratelimit() does nothing. But registering sysfs precedes initializing rs->lock, so it is possible to change rs->interval to a non-zero value via the msg_ratelimit_interval_ms interface of sysfs while rs->lock is uninitialized, and then a call to ext4_msg triggers the problem by accessing an uninitialized rs->lock. Therefore register sysfs after all initializations are complete to avoid such problems.
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-64kUpgrade kernel-uki-virtUpgrade rtlaUpgrade kernel-modulesUpgrade kernel-64k-modulesUpgrade kernel-rt-debug-develUpgrade kernel-tools-libsUpgrade kernel-headersUpgrade kernel-debug-uki-virtUpgrade kernel-debug-develUpgrade kernel-modules-coreUpgrade python3-perfUpgrade kernel-modules-extraUpgrade kernel-zfcpdump-develUpgrade kernel-64k-debug-modulesUpgrade kernel-cross-headersUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-debug-modules-coreUpgrade kernel-debug-coreUpgrade kernelUpgrade kernel-64k-debug-develUpgrade kernel-rt-debug-modules-extraUpgrade kernel-64k-develUpgrade kernel-64k-modules-coreUpgrade libperfUpgrade kernel-develUpgrade kernel-coreUpgrade kernel-zfcpdumpUpgrade kernel-rt-coreUpgrade kernel-rt-debug-kvmUpgrade kernel-rt-debug-modulesUpgrade kernel-debugUpgrade kernel-rt-debugUpgrade kernel-rt-develUpgrade kernel-64k-debug-coreUpgrade kernel-devel-matchedUpgrade kernel-64k-debug-modules-coreUpgrade kernel-64k-debugUpgrade kernel-64k-debug-modules-extraUpgrade kernel-docUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-rt-modulesUpgrade kernel-64k-devel-matchedUpgrade kernel-zfcpdump-coreUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-rt-debug-coreUpgrade rvUpgrade kernel-rtUpgrade kernel-64k-coreUpgrade kernel-debug-devel-matchedUpgrade kernel-zfcpdump-modulesUpgrade kernel-debug-modules-extraUpgrade kernel-tools-libs-develUpgrade kernel-rt-modules-coreUpgrade bpftoolUpgrade kernel-64k-modules-extraUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-rt-modules-extraUpgrade kernel-rt-debug-modules-coreUpgrade kernel-abi-stablelistsUpgrade kernel-toolsUpgrade perfUpgrade kernel-debug-modulesUpgrade kernel-rt-kvm | Sep 26, 2024 | Jul 12, 2024 |
| Debian | — | No solution existsUpgrade linux | May 15, 2025 | Jul 12, 2024 |
| Huawei Euleros 2_0_sp10 | — | Upgrade kernel-toolsUpgrade kernel-abi-stablelistsUpgrade kernelUpgrade python3-perfUpgrade kernel-tools-libs | Oct 8, 2024 | Jul 12, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernelUpgrade python3-perfUpgrade bpftoolUpgrade kernel-tools-libsUpgrade kernel-abi-stablelistsUpgrade kernel-tools | Oct 9, 2024 | Jul 12, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade kernelUpgrade python3-perfUpgrade kernel-toolsUpgrade kernel-tools-libs | Oct 8, 2024 | Jul 12, 2024 |
| Oracle_linux | — | Upgrade kernel | Oct 16, 2024 | Jul 12, 2024 |
| Redhat_linux | — | Upgrade kernelNo solution existsUpgrade kernel-rt | Sep 25, 2024 | Jul 12, 2024 |
| Rocky_linux | — | Upgrade kernel-rt-debuginfoUpgrade kernel-rt-debuginfo-common-x86_64Upgrade kernel-rt-debug-modulesUpgrade kernel-zfcpdump-develUpgrade kernel-tools-libsUpgrade kernel-debug-coreUpgrade rvUpgrade perf-debuginfoUpgrade kernel-rt-modulesUpgrade kernel-debug-uki-virtUpgrade kernel-rt-debug-kvmUpgrade kernel-modules-coreUpgrade kernel-zfcpdump-coreUpgrade kernel-zfcpdump-modulesUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-zfcpdumpUpgrade kernel-debug-modules-coreUpgrade bpftool-debuginfoUpgrade kernel-modulesUpgrade kernel-toolsUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-rt-debug-modules-coreUpgrade kernel-coreUpgrade kernel-tools-debuginfoUpgrade kernel-rt-debugUpgrade kernel-debug-debuginfoUpgrade kernel-uki-virtUpgrade kernel-rt-modules-coreUpgrade kernel-rt-debug-modules-extraUpgrade kernel-modules-extraUpgrade kernel-rtUpgrade kernel-debug-modules-extraUpgrade kernel-rt-debug-debuginfoUpgrade python3-perf-debuginfoUpgrade kernel-debugUpgrade kernel-debug-modulesUpgrade kernel-rt-debug-develUpgrade kernel-rt-develUpgrade libperf-debuginfoUpgrade kernel-zfcpdump-debuginfoUpgrade perfUpgrade kernel-headersUpgrade libperfUpgrade kernel-debug-devel-matchedUpgrade python3-perfUpgrade bpftoolUpgrade kernel-tools-libs-develUpgrade kernel-rt-coreUpgrade rtlaUpgrade kernel-debuginfoUpgrade kernel-rt-debug-coreUpgrade kernel-devel-matchedUpgrade kernel-rt-kvmUpgrade kernel-debug-develUpgrade kernel-rt-modules-extraUpgrade kernelUpgrade kernel-develUpgrade kernel-cross-headers | Oct 2, 2024 | Jul 12, 2024 |
| Suse | — | Upgrade dtb-amlogicUpgrade kernel-default-base-rebuildUpgrade dlm-kmp-azureUpgrade kernel-zfcpdumpUpgrade ocfs2-kmp-rtUpgrade dtb-lgUpgrade kernel-azure-livepatch-develUpgrade kernel-default-develUpgrade cluster-md-kmp-azureUpgrade kernel-kvmsmall-develUpgrade kernel-default-extraUpgrade kernel-sourceUpgrade dtb-marvellUpgrade kernel-64kbUpgrade kernel-azure-baseUpgrade dtb-armUpgrade kernel-devel-azureUpgrade kernel-macrosUpgrade kernel-syms-rtUpgrade kselftests-kmp-64kbUpgrade dtb-amazonUpgrade kernel-64kb-livepatch-develUpgrade kernel-azure-develUpgrade kernel-debug-livepatch-develUpgrade dtb-exynosUpgrade dtb-apmUpgrade dtb-rockchipUpgrade dtb-freescaleUpgrade gfs2-kmp-64kbUpgrade kernel-rt_debug-vdsoUpgrade kernel-kvmsmall-vdsoUpgrade kernel-source-azureUpgrade dlm-kmp-64kbUpgrade kernel-azure-vdsoUpgrade kernel-obs-qaUpgrade kernel-rt_debugUpgrade kernel-default-manUpgrade reiserfs-kmp-azureUpgrade dtb-qcomUpgrade kernel-docs-htmlUpgrade dtb-broadcomUpgrade cluster-md-kmp-defaultUpgrade kselftests-kmp-defaultUpgrade kernel-syms-azureUpgrade kernel-symsUpgrade kernel-rtUpgrade kernel-rt-livepatch-develUpgrade kernel-rt-vdsoUpgrade gfs2-kmp-rtUpgrade kernel-kvmsmallUpgrade kselftests-kmp-azureUpgrade kernel-default-vdsoUpgrade kernel-rt_debug-develUpgrade kernel-default-baseUpgrade kernel-azureUpgrade dtb-amdUpgrade kernel-source-rtUpgrade kernel-docsUpgrade kernel-default-livepatchUpgrade kernel-64kb-extraUpgrade dtb-appleUpgrade cluster-md-kmp-64kbUpgrade kselftests-kmp-rtUpgrade dtb-xilinxUpgrade reiserfs-kmp-64kbUpgrade dlm-kmp-rtUpgrade dtb-caviumUpgrade dtb-alteraUpgrade kernel-debug-vdsoUpgrade kernel-debug-develUpgrade kernel-debugUpgrade kernel-azure-extraUpgrade dtb-hisiliconUpgrade reiserfs-kmp-rtUpgrade kernel-rt_debug-livepatch-develUpgrade ocfs2-kmp-64kbUpgrade dtb-nvidiaUpgrade cluster-md-kmp-rtUpgrade kernel-source-vanillaUpgrade kernel-azure-optionalUpgrade gfs2-kmp-azureUpgrade kernel-rt-develUpgrade dtb-mediatekUpgrade ocfs2-kmp-defaultUpgrade kernel-64kb-develUpgrade dtb-socionextUpgrade kernel-default-optionalUpgrade kernel-defaultUpgrade dtb-allwinnerUpgrade dlm-kmp-defaultUpgrade kernel-rt-optionalUpgrade kernel-rt-extraUpgrade kernel-obs-buildUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-devel-rtUpgrade kernel-default-livepatch-develUpgrade gfs2-kmp-defaultUpgrade reiserfs-kmp-defaultUpgrade ocfs2-kmp-azureUpgrade kernel-develUpgrade dtb-renesasUpgrade kernel-rt-livepatchUpgrade kernel-64kb-optionalUpgrade dtb-sprd | Aug 8, 2024 | Jul 12, 2024 |
| Ubuntu | — | Upgrade linux-image-6.8.0-45-generic-64kUpgrade linux-image-6.8.0-1014-azure-fdeUpgrade linux-image-ibmUpgrade linux-image-6.8.0-1013-nvidiaUpgrade linux-image-6.8.0-44-genericUpgrade linux-image-nvidiaUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-raspiUpgrade linux-image-azureUpgrade linux-image-6.8.0-1014-gcpUpgrade linux-image-6.8.0-1015-awsUpgrade linux-image-oem-22.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-6.8.0-1013-nvidia-lowlatencyUpgrade linux-image-6.8.0-44-lowlatency-64kUpgrade linux-image-oem-22.04bUpgrade linux-image-oem-22.04cUpgrade linux-image-ibm-classicUpgrade linux-image-generic-64kUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-oracle-64kUpgrade linux-image-genericUpgrade linux-image-nvidia-64kUpgrade linux-image-gcpUpgrade linux-image-6.8.0-45-genericUpgrade linux-image-oem-22.04aUpgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-1012-oemUpgrade linux-image-lowlatency-64kUpgrade linux-image-oem-22.04dUpgrade linux-image-6.8.0-1013-nvidia-64kUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-gkeUpgrade linux-image-6.8.0-44-generic-64kUpgrade linux-image-6.8.0-44-lowlatencyUpgrade linux-image-6.8.0-1011-raspiUpgrade linux-image-nvidia-6.8Upgrade linux-image-awsUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1012-oracleUpgrade linux-image-generic-lpaeUpgrade linux-image-virtualUpgrade linux-image-azure-fdeUpgrade linux-image-oracleUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-6.8.0-1014-azureUpgrade linux-image-6.8.0-1013-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1010-gkeUpgrade linux-image-6.8.0-1012-oracle-64kUpgrade linux-image-6.8.0-1012-ibmUpgrade linux-image-kvmUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-nvidia-lowlatency | Sep 12, 2024 | Jul 12, 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