In the Linux kernel, the following vulnerability has been resolved:
net: batman-adv: fix error handling
Syzbot reported ODEBUG warning in batadv_nc_mesh_free(). The problem was in wrong error handling in batadv_mesh_init().
Before this patch batadv_mesh_init() was calling batadv_mesh_free() in case of any batadv_*_init() calls failure. This approach may work well, when there is some kind of indicator, which can tell which parts of batadv are initialized; but there isn't any.
All written above lead to cleaning up uninitialized fields. Even if we hide ODEBUG warning by initializing bat_priv->nc.work, syzbot was able to hit GPF in batadv_nc_purge_paths(), because hash pointer in still NULL. [1]
To fix these bugs we can unwind batadv_*_init() calls one by one. It is good approach for 2 reasons: 1) It fixes bugs on error handling path 2) It improves the performance, since we won't call unneeded batadv_*_free() functions.
So, this patch makes all batadv_*_init() clean up all allocated memory before returning with an error to no call correspoing batadv_*_free() and open-codes batadv_mesh_free() with proper order to avoid touching uninitialized fields.
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | Jul 30, 2024 | May 22, 2024 |
| Suse | — | Upgrade gfs2-kmp-defaultUpgrade kernel-default-baseUpgrade kernel-docsUpgrade kernel-defaultUpgrade kernel-rt-extraUpgrade kernel-azure-develUpgrade kernel-rt_debug-livepatch-develUpgrade dtb-socionextUpgrade dtb-allwinnerUpgrade dtb-alteraUpgrade dtb-caviumUpgrade kselftests-kmp-azureUpgrade dtb-renesasUpgrade kernel-azure-optionalUpgrade kernel-rt-optionalUpgrade dlm-kmp-rtUpgrade kernel-preempt-develUpgrade kernel-debug-vdsoUpgrade cluster-md-kmp-64kbUpgrade dlm-kmp-defaultUpgrade kernel-default-base-rebuildUpgrade kernel-azureUpgrade kernel-kvmsmall-vdsoUpgrade kernel-rt_debug-develUpgrade dtb-qcomUpgrade dtb-sprdUpgrade kernel-source-rtUpgrade ocfs2-kmp-64kbUpgrade cluster-md-kmp-rtUpgrade kernel-source-vanillaUpgrade kernel-rtUpgrade ocfs2-kmp-azureUpgrade kernel-default-livepatch-develUpgrade dtb-broadcomUpgrade reiserfs-kmp-64kbUpgrade kernel-docs-htmlUpgrade dtb-nvidiaUpgrade dtb-marvellUpgrade kernel-64kb-extraUpgrade dtb-rockchipUpgrade reiserfs-kmp-rtUpgrade gfs2-kmp-azureUpgrade kselftests-kmp-rtUpgrade ocfs2-kmp-defaultUpgrade reiserfs-kmp-azureUpgrade kernel-obs-buildUpgrade kernel-rt-vdsoUpgrade kernel-rt-livepatchUpgrade kernel-kvmsmall-develUpgrade dtb-xilinxUpgrade dtb-exynosUpgrade dtb-apmUpgrade dlm-kmp-64kbUpgrade kernel-debug-develUpgrade kernel-source-azureUpgrade kernel-default-develUpgrade kernel-default-livepatchUpgrade dtb-mediatekUpgrade kernel-symsUpgrade kernel-azure-livepatch-develUpgrade dtb-appleUpgrade kernel-default-vdsoUpgrade kernel-syms-rtUpgrade dtb-lgUpgrade dtb-amlogicUpgrade kernel-default-optionalUpgrade kernel-64kbUpgrade reiserfs-kmp-defaultUpgrade kernel-rt-develUpgrade kernel-default-extraUpgrade kernel-zfcpdumpUpgrade gfs2-kmp-rtUpgrade kernel-preemptUpgrade kernel-devel-azureUpgrade kselftests-kmp-defaultUpgrade kernel-64kb-optionalUpgrade kernel-azure-extraUpgrade ocfs2-kmp-rtUpgrade kselftests-kmp-64kbUpgrade kernel-rt_debug-vdsoUpgrade dlm-kmp-azureUpgrade gfs2-kmp-64kbUpgrade kernel-kvmsmallUpgrade kernel-syms-azureUpgrade kernel-debugUpgrade dtb-amdUpgrade dtb-armUpgrade kernel-develUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-64kb-develUpgrade cluster-md-kmp-azureUpgrade kernel-devel-rtUpgrade cluster-md-kmp-defaultUpgrade dtb-freescaleUpgrade kernel-rt-livepatch-develUpgrade kernel-sourceUpgrade dtb-hisiliconUpgrade kernel-rt_debugUpgrade kernel-macrosUpgrade kernel-obs-qaUpgrade kernel-azure-vdsoUpgrade dtb-amazonUpgrade kernel-debug-livepatch-develUpgrade kernel-64kb-livepatch-devel | Aug 9, 2024 | May 22, 2024 |
| Ubuntu | — | Upgrade linux-oracle-5.4Upgrade linux-fipsUpgrade linux-aws-hweUpgrade linux-aws-5.4Upgrade linux-oracleUpgrade linux-kvmUpgrade linux-raspiUpgrade linux-azure-fipsUpgrade linux-gkeopUpgrade linux-gcp-fipsUpgrade linux-gcp-4.15Upgrade linux-azure-5.4Upgrade linux-aws-fipsUpgrade linux-azure-4.15Upgrade linux-hwe-5.4Upgrade linux-hweUpgrade linux-bluefieldUpgrade linux-azureUpgrade linux-awsUpgrade linuxUpgrade linux-ibmUpgrade linux-raspi-5.4Upgrade linux-gcp-5.4Upgrade linux-gcp | Nov 19, 2024 | May 22, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | May 22, 2024 |
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