In the Linux kernel, the following vulnerability has been resolved:
mlxsw: spectrum_router: Fix neighbour use-after-free
We sometimes observe use-after-free when dereferencing a neighbour [1]. The problem seems to be that the driver stores a pointer to the neighbour, but without holding a reference on it. A reference is only taken when the neighbour is used by a nexthop.
Fix by simplifying the reference counting scheme. Always take a reference when storing a neighbour pointer in a neighbour entry. Avoid taking a referencing when the neighbour is used by a nexthop as the neighbour entry associated with the nexthop already holds a reference.
Tested by running the test that uncovered the problem over 300 times. Without this patch the problem was reproduced after a handful of iterations.
[1] BUG: KASAN: slab-use-after-free in mlxsw_sp_neigh_entry_update+0x2d4/0x310 Read of size 8 at addr ffff88817f8e3420 by task ip/3929
CPU: 3 UID: 0 PID: 3929 Comm: ip Not tainted 6.18.0-rc4-virtme-g36b21a067510 #3 PREEMPT(full) Hardware name: Nvidia SN5600/VMOD0013, BIOS 5.13 05/31/2023 Call Trace: <TASK> dump_stack_lvl+0x6f/0xa0 print_address_description.constprop.0+0x6e/0x300 print_report+0xfc/0x1fb kasan_report+0xe4/0x110 mlxsw_sp_neigh_entry_update+0x2d4/0x310 mlxsw_sp_router_rif_gone_sync+0x35f/0x510 mlxsw_sp_rif_destroy+0x1ea/0x730 mlxsw_sp_inetaddr_port_vlan_event+0xa1/0x1b0 __mlxsw_sp_inetaddr_lag_event+0xcc/0x130 __mlxsw_sp_inetaddr_event+0xf5/0x3c0 mlxsw_sp_router_netdevice_event+0x1015/0x1580 notifier_call_chain+0xcc/0x150 call_netdevice_notifiers_info+0x7e/0x100 __netdev_upper_dev_unlink+0x10b/0x210 netdev_upper_dev_unlink+0x79/0xa0 vrf_del_slave+0x18/0x50 do_set_master+0x146/0x7d0 do_setlink.isra.0+0x9a0/0x2880 rtnl_newlink+0x637/0xb20 rtnetlink_rcv_msg+0x6fe/0xb90 netlink_rcv_skb+0x123/0x380 netlink_unicast+0x4a3/0x770 netlink_sendmsg+0x75b/0xc90 __sock_sendmsg+0xbe/0x160 ____sys_sendmsg+0x5b2/0x7d0 ___sys_sendmsg+0xfd/0x180 __sys_sendmsg+0x124/0x1c0 do_syscall_64+0xbb/0xfd0 entry_SYSCALL_64_after_hwframe+0x4b/0x53 [...]
Allocated by task 109: kasan_save_stack+0x30/0x50 kasan_save_track+0x14/0x30 __kasan_kmalloc+0x7b/0x90 __kmalloc_noprof+0x2c1/0x790 neigh_alloc+0x6af/0x8f0 ___neigh_create+0x63/0xe90 mlxsw_sp_nexthop_neigh_init+0x430/0x7e0 mlxsw_sp_nexthop_type_init+0x212/0x960 mlxsw_sp_nexthop6_group_info_init.constprop.0+0x81f/0x1280 mlxsw_sp_nexthop6_group_get+0x392/0x6a0 mlxsw_sp_fib6_entry_create+0x46a/0xfd0 mlxsw_sp_router_fib6_replace+0x1ed/0x5f0 mlxsw_sp_router_fib6_event_work+0x10a/0x2a0 process_one_work+0xd57/0x1390 worker_thread+0x4d6/0xd40 kthread+0x355/0x5b0 ret_from_fork+0x1d4/0x270 ret_from_fork_asm+0x11/0x20
Freed by task 154: kasan_save_stack+0x30/0x50 kasan_save_track+0x14/0x30 __kasan_save_free_info+0x3b/0x60 __kasan_slab_free+0x43/0x70 kmem_cache_free_bulk.part.0+0x1eb/0x5e0 kvfree_rcu_bulk+0x1f2/0x260 kfree_rcu_work+0x130/0x1b0 process_one_work+0xd57/0x1390 worker_thread+0x4d6/0xd40 kthread+0x355/0x5b0 ret_from_fork+0x1d4/0x270 ret_from_fork_asm+0x11/0x20
Last potentially related work creation: kasan_save_stack+0x30/0x50 kasan_record_aux_stack+0x8c/0xa0 kvfree_call_rcu+0x93/0x5b0 mlxsw_sp_router_neigh_event_work+0x67d/0x860 process_one_work+0xd57/0x1390 worker_thread+0x4d6/0xd40 kthread+0x355/0x5b0 ret_from_fork+0x1d4/0x270 ret_from_fork_asm+0x11/0x20
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 |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade python-perf-debuginfoUpgrade kernel-headersUpgrade kernel-livepatch-5.10.248-247.988Upgrade kernel-tools-develUpgrade kernel-debuginfo-common-aarch64Upgrade perfUpgrade perf-debuginfoUpgrade kernel-tools-debuginfoUpgrade kernel-debuginfoUpgrade kernel-develUpgrade kernelUpgrade kernel-debuginfo-common-x86_64Upgrade bpftoolUpgrade bpftool-debuginfoUpgrade python-perfUpgrade kernel-tools | May 20, 2026 | May 20, 2026 |
| Debian | — | Upgrade linux-6.1Upgrade linux | Feb 11, 2026 | Feb 11, 2026 |
| Huawei Euleros 2_0_sp12 | — | Upgrade python3-perfUpgrade kernelUpgrade kernel-abi-stablelistsUpgrade bpftoolUpgrade kernel-tools-libsUpgrade kernel-tools | Mar 17, 2026 | Mar 16, 2026 |
| Huawei Euleros 2_0_sp13 | — | Upgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade kernel-toolsUpgrade python3-perfUpgrade kernelUpgrade bpftool | Mar 10, 2026 | Mar 10, 2026 |
| Redhat_linux | — | No solution exists | Jul 17, 2026 | Jan 13, 2026 |
| Ubuntu | — | Upgrade linux-image-6.8.0-1054-azure-fipsUpgrade linux-image-aws-64k-5.15Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-generic-64k-5.15Upgrade linux-image-oem-24.04dUpgrade linux-image-5.15.0-1110-azureUpgrade linux-image-5.15.0-173-generic-lpaeUpgrade linux-image-6.17.0-22-generic-64kUpgrade linux-image-aws-64k-6.8Upgrade linux-image-gcp-5.15Upgrade linux-image-gcp-6.17Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-6.17.0-1010-realtimeUpgrade linux-image-oracle-64kUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-5.15.0-1103-awsUpgrade linux-image-azure-5.15Upgrade linux-image-aws-fips-5.15Upgrade linux-image-6.8.0-1051-nvidia-lowlatency-64kUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-6.8.0-110-fipsUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-xilinx-zynqmp-5.15Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-5.15.0-1095-kvmUpgrade linux-image-azure-6.8Upgrade linux-image-gcp-64kUpgrade linux-image-6.17.0-1013-azureUpgrade linux-image-awsUpgrade linux-image-6.8.0-1052-awsUpgrade linux-image-6.8.0-1054-gcp-fipsUpgrade linux-image-6.17.0-1012-gcpUpgrade linux-image-aws-fips-6.8Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-oem-20.04Upgrade linux-image-virtualUpgrade linux-image-generic-64k-6.17Upgrade linux-image-5.15.0-1103-gcp-fipsUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-5.15.0-173-fipsUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-aws-64k-6.17Upgrade linux-image-lowlatency-64k-5.15Upgrade linux-image-gke-64k-6.8Upgrade linux-image-oracle-64k-6.17Upgrade linux-image-raspi-6.17Upgrade linux-image-realtime-6.8.1Upgrade linux-image-raspi-5.15Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-azure-cvmUpgrade linux-image-5.15.0-1086-gkeopUpgrade linux-image-ibm-5.15Upgrade linux-image-5.15.0-1067-xilinx-zynqmpUpgrade linux-image-gkeUpgrade linux-image-6.17.0-1011-oracleUpgrade linux-image-oem-22.04bUpgrade linux-image-aws-64kUpgrade linux-image-oem-6.17Upgrade linux-image-6.17.0-1014-raspiUpgrade linux-image-6.8.0-110-generic-64kUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-6.8.0-1052-raspiUpgrade linux-image-6.8.1-1047-realtimeUpgrade linux-image-nvidia-6.8Upgrade linux-image-gcpUpgrade linux-image-realtimeUpgrade linux-image-generic-64k-6.8Upgrade linux-image-generic-hwe-20.04Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-6.8.0-1029-xilinxUpgrade linux-image-oem-20.04dUpgrade linux-image-oem-24.04Upgrade linux-image-oracleUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-aws-lts-24.04Upgrade linux-image-intel-iot-realtime-5.15Upgrade linux-image-lowlatency-5.15Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-6.17.0-1012-gcp-64kUpgrade linux-image-virtual-5.15Upgrade linux-image-5.15.0-173-lowlatency-64kUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-kvmUpgrade linux-image-oem-24.04cUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-raspi-6.8Upgrade linux-image-gcp-6.8Upgrade linux-image-gcp-64k-6.17Upgrade linux-image-gcp-fips-5.15Upgrade linux-image-raspi-nolpaeUpgrade linux-image-nvidia-64kUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-gkeop-5.15Upgrade linux-image-realtime-6.17Upgrade linux-image-5.15.0-1098-intel-iotgUpgrade linux-image-5.15.0-1102-realtimeUpgrade linux-image-6.8.0-1050-gke-64kUpgrade linux-image-5.15.0-1098-nvidia-lowlatencyUpgrade linux-image-aws-64k-lts-22.04Upgrade linux-image-oem-24.04aUpgrade linux-image-6.17.0-1012-aws-64kUpgrade linux-image-aws-5.15Upgrade linux-image-oracle-6.17Upgrade linux-image-6.8.0-1049-oracle-64kUpgrade linux-image-6.8.0-1051-ibmUpgrade linux-image-6.8.0-1059-azureUpgrade linux-image-oracle-6.8Upgrade linux-image-gcp-64k-6.8Upgrade linux-image-oem-22.04dUpgrade linux-image-nvidia-tegra-igxUpgrade linux-image-xilinx-6.8Upgrade linux-image-virtual-hwe-20.04Upgrade linux-image-5.15.0-1100-oracleUpgrade linux-image-azure-fipsUpgrade linux-image-realtime-5.15Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-virtual-6.8Upgrade linux-image-5.15.0-1055-nvidia-tegraUpgrade linux-image-virtual-6.17Upgrade linux-image-oem-22.04aUpgrade linux-image-nvidia-tegra-rt-5.15Upgrade linux-image-nvidia-lowlatency-5.15Upgrade linux-image-nvidiaUpgrade linux-image-intel-iotgUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-nvidia-tegra-rtUpgrade linux-image-azure-lts-22.04Upgrade linux-image-azure-fips-5.15Upgrade linux-image-fipsUpgrade linux-image-generic-6.17Upgrade linux-image-genericUpgrade linux-image-azure-6.17Upgrade linux-image-6.8.0-1054-gcp-64kUpgrade linux-image-6.8.0-1054-azureUpgrade linux-image-6.8.0-1049-oracleUpgrade linux-image-5.15.0-1055-nvidia-tegra-rtUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-oem-22.04cUpgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-5.15.0-1109-azure-fipsUpgrade linux-image-oem-22.04Upgrade linux-image-generic-5.15Upgrade linux-image-azureUpgrade linux-image-aws-lts-22.04Upgrade linux-image-5.15.0-173-generic-64kUpgrade linux-image-azure-fips-6.8Upgrade linux-image-aws-6.8Upgrade linux-image-6.17.0-1012-awsUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-6.8.0-1052-aws-64kUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-1054-gcpUpgrade linux-image-nvidia-tegra-igx-rt-5.15Upgrade linux-image-nvidia-tegraUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-lowlatency-64kUpgrade linux-image-kvm-5.15Upgrade linux-image-gkeopUpgrade linux-image-gke-64kUpgrade linux-image-generic-lpae-5.15Upgrade linux-image-generic-lpaeUpgrade linux-image-generic-64kUpgrade linux-image-6.17.0-22-genericUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-6.8.0-1051-nvidia-64kUpgrade linux-image-5.15.0-1109-azureUpgrade linux-image-5.15.0-1103-aws-fipsUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-xilinxUpgrade linux-image-6.8.0-1022-nvidia-tegra-rtUpgrade linux-image-generic-6.8Upgrade linux-image-oem-20.04bUpgrade linux-image-ibmUpgrade linux-image-gke-5.15Upgrade linux-image-gcp-fips-6.8Upgrade linux-image-fips-5.15Upgrade linux-image-6.17.0-1020-oemUpgrade linux-image-5.15.0-173-genericUpgrade linux-image-oracle-64k-6.8Upgrade linux-image-intel-iotg-5.15Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-nvidia-5.15Upgrade linux-image-5.15.0-1103-aws-64kUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-nvidia-tegra-5.15Upgrade linux-image-6.8.0-2042-raspi-realtimeUpgrade linux-image-raspiUpgrade linux-image-6.17.0-1011-oracle-64kUpgrade linux-image-oem-20.04cUpgrade linux-image-nvidia-tegra-igx-5.15Upgrade linux-image-ibm-classicUpgrade linux-image-ibm-6.8Upgrade linux-image-gkeop-6.8Upgrade linux-image-aws-fipsUpgrade linux-image-6.8.0-110-lowlatency-64kUpgrade linux-image-6.8.0-1051-nvidia-lowlatencyUpgrade linux-image-6.8.0-1022-nvidia-tegraUpgrade linux-image-5.15.0-1103-gcpUpgrade linux-image-5.15.0-1044-nvidia-tegra-igxUpgrade linux-image-oem-24.04bUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-lowlatency-6.8Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-gke-6.8Upgrade linux-image-6.8.0-110-genericUpgrade linux-image-intelUpgrade linux-image-fips-6.8Upgrade linux-image-azure-lts-24.04Upgrade linux-image-aws-6.17Upgrade linux-image-6.8.0-1051-nvidiaUpgrade linux-image-5.15.0-1099-gkeUpgrade linux-image-realtime-hwe-22.04Upgrade linux-image-5.15.0-1098-nvidiaUpgrade linux-image-5.15.0-1044-nvidia-tegra-igx-rtUpgrade linux-image-oracle-5.15Upgrade linux-image-raspi-realtimeUpgrade linux-image-gcp-fipsUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-6.8.0-1037-gkeopUpgrade linux-image-6.8.0-1050-gkeUpgrade linux-image-6.8.0-110-lowlatencyUpgrade linux-image-6.8.0-1052-aws-fipsUpgrade linux-image-5.15.0-173-lowlatencyUpgrade linux-image-5.15.0-1097-raspiUpgrade linux-image-5.15.0-1097-ibmUpgrade linux-image-5.15.0-1094-intel-iot-realtime | Mar 17, 2026 | Jan 13, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | May 27, 2026 | Jan 13, 2026 |
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