In the Linux kernel, the following vulnerability has been resolved:
mlxsw: spectrum_acl_tcam: Fix stack corruption
When tc filters are first added to a net device, the corresponding local port gets bound to an ACL group in the device. The group contains a list of ACLs. In turn, each ACL points to a different TCAM region where the filters are stored. During forwarding, the ACLs are sequentially evaluated until a match is found.
One reason to place filters in different regions is when they are added with decreasing priorities and in an alternating order so that two consecutive filters can never fit in the same region because of their key usage.
In Spectrum-2 and newer ASICs the firmware started to report that the maximum number of ACLs in a group is more than 16, but the layout of the register that configures ACL groups (PAGT) was not updated to account for that. It is therefore possible to hit stack corruption [1] in the rare case where more than 16 ACLs in a group are required.
Fix by limiting the maximum ACL group size to the minimum between what the firmware reports and the maximum ACLs that fit in the PAGT register.
Add a test case to make sure the machine does not crash when this condition is hit.
[1] Kernel panic - not syncing: stack-protector: Kernel stack is corrupted in: mlxsw_sp_acl_tcam_group_update+0x116/0x120 [...] dump_stack_lvl+0x36/0x50 panic+0x305/0x330 __stack_chk_fail+0x15/0x20 mlxsw_sp_acl_tcam_group_update+0x116/0x120 mlxsw_sp_acl_tcam_group_region_attach+0x69/0x110 mlxsw_sp_acl_tcam_vchunk_get+0x492/0xa20 mlxsw_sp_acl_tcam_ventry_add+0x25/0xe0 mlxsw_sp_acl_rule_add+0x47/0x240 mlxsw_sp_flower_replace+0x1a9/0x1d0 tc_setup_cb_add+0xdc/0x1c0 fl_hw_replace_filter+0x146/0x1f0 fl_change+0xc17/0x1360 tc_new_tfilter+0x472/0xb90 rtnetlink_rcv_msg+0x313/0x3b0 netlink_rcv_skb+0x58/0x100 netlink_unicast+0x244/0x390 netlink_sendmsg+0x1e4/0x440 ____sys_sendmsg+0x164/0x260 ___sys_sendmsg+0x9a/0xe0 __sys_sendmsg+0x7a/0xc0 do_syscall_64+0x40/0xe0 entry_SYSCALL_64_after_hwframe+0x63/0x6b
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 |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-rt-debug-modules-extraUpgrade kernel-tools-libs-develUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-debug-modules-extraUpgrade kernel-debug-modules-coreUpgrade kernel-rt-debug-modulesUpgrade kernel-uki-virtUpgrade kernel-64k-debugUpgrade rvUpgrade kernel-zfcpdump-modulesUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-toolsUpgrade kernel-64k-debug-modules-coreUpgrade kernel-rt-modulesUpgrade kernel-zfcpdumpUpgrade kernel-debug-devel-matchedUpgrade kernel-tools-libsUpgrade kernel-modulesUpgrade kernel-rt-modules-coreUpgrade kernel-64k-coreUpgrade kernel-docUpgrade kernel-abi-stablelistsUpgrade kernel-64k-modules-extraUpgrade kernel-debug-modulesUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-rt-kvmUpgrade kernel-rtUpgrade kernel-rt-debug-modules-coreUpgrade kernel-64k-debug-modules-extraUpgrade kernel-zfcpdump-coreUpgrade kernel-modules-extraUpgrade kernel-rt-debug-coreUpgrade kernel-64k-devel-matchedUpgrade kernel-coreUpgrade kernel-64k-modules-coreUpgrade kernel-zfcpdump-develUpgrade kernel-debug-uki-virtUpgrade kernel-debug-develUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-debug-coreUpgrade kernelUpgrade kernel-debugUpgrade kernel-64k-debug-develUpgrade kernel-64kUpgrade kernel-cross-headersUpgrade kernel-devel-matchedUpgrade perfUpgrade libperfUpgrade kernel-64k-modulesUpgrade python3-perfUpgrade bpftoolUpgrade kernel-develUpgrade kernel-rt-develUpgrade kernel-rt-debug-develUpgrade kernel-64k-debug-modulesUpgrade kernel-64k-debug-coreUpgrade kernel-rt-coreUpgrade kernel-rt-debugUpgrade kernel-rt-modules-extraUpgrade kernel-modules-coreUpgrade kernel-headersUpgrade rtlaUpgrade kernel-rt-debug-kvmUpgrade kernel-64k-devel | Aug 12, 2024 | Feb 22, 2024 |
| Amazon Linux Ami 2 | — | Upgrade kernel-toolsUpgrade kernel-livepatch-5.15.148-97.158Upgrade kernel-debuginfo-common-x86_64Upgrade kernelUpgrade kernel-develUpgrade kernel-livepatch-5.10.209-198.812Upgrade bpftoolUpgrade kernel-tools-debuginfoUpgrade kernel-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-headersUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-tools-develUpgrade python-perf-debuginfoUpgrade python-perfUpgrade perf-debuginfoUpgrade perf | May 13, 2024 | Feb 22, 2024 |
| Debian | — | Upgrade linux | Jun 27, 2024 | Feb 22, 2024 |
| Huawei Euleros 2_0_sp10 | — | Upgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade kernelUpgrade kernel-toolsUpgrade python3-perf | May 13, 2024 | Feb 22, 2024 |
| Huawei Euleros 2_0_sp11 | — | Upgrade bpftoolUpgrade python3-perfUpgrade kernel-tools-libsUpgrade kernel-abi-stablelistsUpgrade kernel-toolsUpgrade kernel | Jun 3, 2024 | Feb 22, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade bpftoolUpgrade kernel-tools-libsUpgrade python3-perfUpgrade kernelUpgrade kernel-abi-stablelistsUpgrade kernel-tools | Jul 1, 2024 | Feb 22, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade kernel-tools-libsUpgrade kernel-toolsUpgrade kernelUpgrade python3-perf | Jul 17, 2024 | Feb 22, 2024 |
| Oracle_linux | — | Upgrade kernel | May 14, 2024 | Feb 22, 2024 |
| Redhat_linux | — | No solution existsUpgrade kernelUpgrade kernel-rt | Apr 19, 2024 | Feb 22, 2024 |
| Rocky_linux | — | Upgrade kernel-toolsUpgrade kernel-rt-kvmUpgrade perfUpgrade kernel-tools-libs-develUpgrade kernel-debugUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-coreUpgrade kernel-tools-debuginfoUpgrade kernel-develUpgrade kernel-modulesUpgrade kernel-debuginfoUpgrade kernel-rt-modulesUpgrade kernel-rt-debugUpgrade perf-debuginfoUpgrade kernel-rt-develUpgrade kernel-debug-coreUpgrade bpftoolUpgrade python3-perfUpgrade kernel-debug-develUpgrade kernel-rt-debug-kvmUpgrade kernel-coreUpgrade python3-perf-debuginfoUpgrade kernel-debug-modules-extraUpgrade kernelUpgrade kernel-tools-libsUpgrade kernel-headersUpgrade kernel-rt-debug-develUpgrade kernel-rt-debuginfo-common-x86_64Upgrade kernel-modules-extraUpgrade kernel-debug-modulesUpgrade kernel-rtUpgrade kernel-rt-modules-extraUpgrade kernel-rt-debug-modulesUpgrade kernel-debug-debuginfoUpgrade kernel-rt-debuginfoUpgrade kernel-rt-debug-coreUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-cross-headersUpgrade bpftool-debuginfoUpgrade kernel-rt-debug-debuginfo | Aug 22, 2024 | Feb 22, 2024 |
| Suse | — | Upgrade kernel-azureUpgrade kernel-debug-vdsoUpgrade kernel-docsUpgrade ocfs2-kmp-azureUpgrade dtb-nvidiaUpgrade dtb-socionextUpgrade dtb-appleUpgrade kernel-debugUpgrade dtb-allwinnerUpgrade kernel-preempt-develUpgrade dtb-amdUpgrade dlm-kmp-rtUpgrade kernel-azure-extraUpgrade dtb-renesasUpgrade kernel-rt-optionalUpgrade gfs2-kmp-defaultUpgrade kernel-devel-rtUpgrade reiserfs-kmp-64kbUpgrade kernel-source-rtUpgrade ocfs2-kmp-defaultUpgrade kernel-64kb-develUpgrade kernel-64kb-extraUpgrade kernel-azure-optionalUpgrade kernel-rt_debug-livepatch-develUpgrade gfs2-kmp-azureUpgrade reiserfs-kmp-defaultUpgrade dtb-sprdUpgrade kernel-rt_debug-develUpgrade dtb-alteraUpgrade cluster-md-kmp-64kbUpgrade kernel-default-livepatchUpgrade kernel-develUpgrade kernel-debug-develUpgrade kernel-default-baseUpgrade dtb-caviumUpgrade kernel-rt-develUpgrade kernel-rt-livepatchUpgrade kernel-default-livepatch-develUpgrade kernel-rt-extraUpgrade kernel-source-vanillaUpgrade ocfs2-kmp-64kbUpgrade cluster-md-kmp-rtUpgrade kernel-64kb-optionalUpgrade kernel-default-optionalUpgrade dlm-kmp-defaultUpgrade reiserfs-kmp-rtUpgrade dtb-mediatekUpgrade kselftests-kmp-azureUpgrade kernel-obs-buildUpgrade dtb-hisiliconUpgrade dtb-xilinxUpgrade kselftests-kmp-rtUpgrade kernel-defaultUpgrade kernel-rtUpgrade kernel-kvmsmall-vdsoUpgrade dtb-qcomUpgrade kernel-devel-azureUpgrade kernel-rt-vdsoUpgrade kernel-rt_debug-vdsoUpgrade kselftests-kmp-64kbUpgrade kernel-kvmsmall-livepatch-develUpgrade gfs2-kmp-rtUpgrade kernel-azure-vdsoUpgrade dtb-rockchipUpgrade dlm-kmp-azureUpgrade kernel-macrosUpgrade cluster-md-kmp-defaultUpgrade kernel-sourceUpgrade kernel-rt_debugUpgrade kernel-preemptUpgrade kernel-debug-livepatch-develUpgrade dtb-broadcomUpgrade dtb-amlogicUpgrade kernel-kvmsmallUpgrade kernel-azure-livepatch-develUpgrade gfs2-kmp-64kbUpgrade kernel-obs-qaUpgrade kernel-default-manUpgrade kernel-default-extraUpgrade kernel-syms-rtUpgrade kernel-default-base-rebuildUpgrade dlm-kmp-64kbUpgrade dtb-exynosUpgrade kernel-syms-azureUpgrade cluster-md-kmp-azureUpgrade kselftests-kmp-defaultUpgrade dtb-armUpgrade kernel-zfcpdumpUpgrade kernel-source-azureUpgrade kernel-kvmsmall-develUpgrade kernel-default-develUpgrade reiserfs-kmp-azureUpgrade kernel-64kbUpgrade kernel-azure-develUpgrade dtb-amazonUpgrade dtb-lgUpgrade dtb-freescaleUpgrade dtb-apmUpgrade kernel-default-vdsoUpgrade kernel-rt-livepatch-develUpgrade ocfs2-kmp-rtUpgrade kernel-docs-htmlUpgrade kernel-64kb-livepatch-develUpgrade kernel-symsUpgrade dtb-marvell | Mar 13, 2024 | Feb 22, 2024 |
| Ubuntu | — | Upgrade linux-image-oem-22.04cUpgrade linux-image-generic-hwe-18.04Upgrade linux-image-raspiUpgrade linux-image-raspi-nolpaeUpgrade linux-image-6.5.0-1015-starfiveUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-6.5.0-1017-laptopUpgrade linux-image-generic-lpaeUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-5.15.0-102-generic-lpaeUpgrade linux-image-5.15.0-1048-nvidiaUpgrade linux-image-5.4.0-189-genericUpgrade linux-image-oem-22.04Upgrade linux-image-5.4.0-189-lowlatencyUpgrade linux-image-aws-lts-22.04Upgrade linux-image-nvidiaUpgrade linux-image-oem-20.04cUpgrade linux-image-6.5.0-1022-azure-fdeUpgrade linux-image-5.4.0-1040-iotUpgrade linux-image-gkeop-5.4Upgrade linux-image-gke-5.15Upgrade linux-image-ibmUpgrade linux-image-6.5.0-1021-awsUpgrade linux-image-oem-22.04bUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-aws-lts-20.04Upgrade linux-image-5.15.0-102-lowlatencyUpgrade linux-image-oem-20.04bUpgrade linux-image-5.4.0-1047-xilinx-zynqmpUpgrade linux-image-5.4.0-189-generic-lpaeUpgrade linux-image-ibm-lts-20.04Upgrade linux-image-5.15.0-1057-awsUpgrade linux-image-starfiveUpgrade linux-image-nvidia-6.5Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-azure-lts-22.04Upgrade linux-image-6.5.0-1024-oracle-64kUpgrade linux-image-6.5.0-1018-raspiUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-6.5.0-1024-oracleUpgrade linux-image-oem-22.04aUpgrade linux-image-5.4.0-1075-ibmUpgrade linux-image-5.15.0-1040-gkeopUpgrade linux-image-5.4.0-1116-kvmUpgrade linux-image-6.5.0-41-genericUpgrade linux-image-5.4.0-1095-gkeopUpgrade linux-image-azureUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-generic-64kUpgrade linux-image-azure-fdeUpgrade linux-image-6.5.0-1024-oemUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-kvmUpgrade linux-image-lowlatencyUpgrade linux-image-5.4.0-1132-gcpUpgrade linux-image-6.5.0-1021-nvidia-64kUpgrade linux-image-lowlatency-64kUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-raspi2Upgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-5.15.0-102-generic-64kUpgrade linux-image-5.15.0-1055-oracleUpgrade linux-image-oem-20.04Upgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-virtualUpgrade linux-image-5.15.0-102-genericUpgrade linux-image-intelUpgrade linux-image-5.4.0-1127-oracleUpgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-5.15.0-1050-raspiUpgrade linux-image-gkeUpgrade linux-image-azure-cvmUpgrade linux-image-raspi-hwe-18.04Upgrade linux-image-laptop-23.10Upgrade linux-image-oem-osp1Upgrade linux-image-oem-20.04dUpgrade linux-image-genericUpgrade linux-image-5.15.0-102-lowlatency-64kUpgrade linux-image-6.5.0-1022-gcpUpgrade linux-image-gcpUpgrade linux-image-5.15.0-1050-ibmUpgrade linux-image-5.15.0-1054-kvmUpgrade linux-image-azure-lts-20.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-5.4.0-1088-bluefieldUpgrade linux-image-oracle-64kUpgrade linux-image-6.5.0-1022-azureUpgrade linux-image-nvidia-64k-6.5Upgrade linux-image-5.4.0-1128-awsUpgrade linux-image-5.15.0-1060-azure-fdeUpgrade linux-image-gcp-lts-20.04Upgrade linux-image-gkeop-5.15Upgrade linux-image-gkeopUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-virtual-hwe-18.04Upgrade linux-image-5.15.0-1055-gcpUpgrade linux-image-5.15.0-1060-azureUpgrade linux-image-oracleUpgrade linux-image-5.15.0-1048-nvidia-lowlatencyUpgrade linux-image-6.5.0-41-lowlatencyUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-oemUpgrade linux-image-6.5.0-41-generic-64kUpgrade linux-image-5.4.0-1133-azureUpgrade linux-image-oracle-lts-20.04Upgrade linux-image-6.5.0-41-lowlatency-64kUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-5.4.0-1112-raspiUpgrade linux-image-5.15.0-1054-gkeUpgrade linux-image-awsUpgrade linux-image-bluefieldUpgrade linux-image-oem-22.04dUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-5.15.0-1052-intel-iotgUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-6.5.0-1021-nvidiaUpgrade linux-image-intel-iotg | Apr 10, 2024 | Feb 22, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | Feb 22, 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