In the Linux kernel, the following vulnerability has been resolved:
mac80211-hwsim: fix late beacon hrtimer handling
Thomas explained in https://lore.kernel.org/r/87mtoeb4hb.ffs@tglx that our handling of the hrtimer here is wrong: If the timer fires late (e.g. due to vCPU scheduling, as reported by Dmitry/syzbot) then it tries to actually rearm the timer at the next deadline, which might be in the past already:
1 2 3 N N+1 | | | ... | |
^ intended to fire here (1) ^ next deadline here (2) ^ actually fired here
The next time it fires, it's later, but will still try to schedule for the next deadline (now 3), etc. until it catches up with N, but that might take a long time, causing stalls etc.
Now, all of this is simulation, so we just have to fix it, but note that the behaviour is wrong even per spec, since there's no value then in sending all those beacons unaligned - they should be aligned to the TBTT (1, 2, 3, ... in the picture), and if we're a bit (or a lot) late, then just resume at that point.
Therefore, change the code to use hrtimer_forward_now() which will ensure that the next firing of the timer would be at N+1 (in the picture), i.e. the next interval point after the current time.
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 |
|---|---|---|---|---|
| Debian | — | Upgrade linux | Jul 30, 2024 | May 21, 2024 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | May 21, 2024 |
| Suse | — | Upgrade kselftests-kmp-defaultUpgrade kernel-source-azureUpgrade kernel-kvmsmall-vdsoUpgrade kernel-zfcpdumpUpgrade kernel-rt-livepatch-develUpgrade kernel-kvmsmall-develUpgrade kernel-azure-livepatch-develUpgrade kernel-kvmsmallUpgrade cluster-md-kmp-azureUpgrade kernel-obs-qaUpgrade kernel-sourceUpgrade kernel-docsUpgrade kernel-preemptUpgrade dtb-lgUpgrade kernel-obs-buildUpgrade kernel-syms-azureUpgrade kernel-azure-vdsoUpgrade kernel-rt_debugUpgrade kernel-default-extraUpgrade cluster-md-kmp-defaultUpgrade ocfs2-kmp-rtUpgrade kernel-docs-htmlUpgrade kernel-syms-rtUpgrade kernel-rtUpgrade reiserfs-kmp-64kbUpgrade dtb-exynosUpgrade kernel-source-rtUpgrade dlm-kmp-azureUpgrade ocfs2-kmp-64kbUpgrade dtb-broadcomUpgrade kernel-rt-extraUpgrade kernel-rt-optionalUpgrade gfs2-kmp-rtUpgrade kernel-default-base-rebuildUpgrade kernel-debug-livepatch-develUpgrade kernel-default-livepatchUpgrade dtb-socionextUpgrade kernel-debug-vdsoUpgrade dlm-kmp-defaultUpgrade kselftests-kmp-azureUpgrade dtb-rockchipUpgrade kernel-devel-azureUpgrade kernel-macrosUpgrade kernel-rt-vdsoUpgrade kernel-rt_debug-vdsoUpgrade dtb-amlogicUpgrade dtb-apmUpgrade kernel-azure-develUpgrade dtb-qcomUpgrade dtb-marvellUpgrade kernel-source-vanillaUpgrade reiserfs-kmp-rtUpgrade kernel-default-develUpgrade dtb-caviumUpgrade dtb-amazonUpgrade dtb-xilinxUpgrade kselftests-kmp-64kbUpgrade dlm-kmp-64kbUpgrade gfs2-kmp-64kbUpgrade kernel-64kb-livepatch-develUpgrade kernel-azure-extraUpgrade kernel-symsUpgrade reiserfs-kmp-defaultUpgrade kernel-debugUpgrade kernel-preempt-develUpgrade kernel-devel-rtUpgrade gfs2-kmp-defaultUpgrade gfs2-kmp-azureUpgrade dtb-nvidiaUpgrade cluster-md-kmp-64kbUpgrade dtb-appleUpgrade kselftests-kmp-rtUpgrade kernel-defaultUpgrade kernel-rt-develUpgrade dtb-sprdUpgrade dlm-kmp-rtUpgrade dtb-amdUpgrade kernel-rt_debug-livepatch-develUpgrade reiserfs-kmp-azureUpgrade kernel-default-optionalUpgrade kernel-rt-livepatchUpgrade kernel-default-vdsoUpgrade kernel-kvmsmall-livepatch-develUpgrade ocfs2-kmp-azureUpgrade dtb-armUpgrade cluster-md-kmp-rtUpgrade kernel-debug-develUpgrade ocfs2-kmp-defaultUpgrade dtb-freescaleUpgrade dtb-hisiliconUpgrade kernel-develUpgrade kernel-64kb-develUpgrade kernel-azure-optionalUpgrade dtb-mediatekUpgrade dtb-renesasUpgrade kernel-64kbUpgrade kernel-azureUpgrade dtb-alteraUpgrade kernel-default-baseUpgrade kernel-default-livepatch-develUpgrade kernel-64kb-extraUpgrade kernel-rt_debug-develUpgrade kernel-64kb-optionalUpgrade dtb-allwinner | Aug 9, 2024 | May 21, 2024 |
| Ubuntu | — | Upgrade linux-raspiUpgrade linux-ibmUpgrade linux-aws-5.4Upgrade linux-azure-fipsUpgrade linux-gkeopUpgrade linux-azure-5.4Upgrade linux-awsUpgrade linux-azureUpgrade linuxUpgrade linux-aws-fipsUpgrade linux-hwe-5.4Upgrade linux-oracle-5.4Upgrade linux-gcp-5.4Upgrade linux-raspi-5.4Upgrade linux-gcp-fipsUpgrade linux-kvmUpgrade linux-bluefieldUpgrade linux-fipsUpgrade linux-oracleUpgrade linux-gcp | Nov 19, 2024 | May 21, 2024 |
Prioritize 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