In the Linux kernel, the following vulnerability has been resolved:
RDMA/core: Don't expose hw_counters outside of init net namespace
Commit 467f432a521a ("RDMA/core: Split port and device counter sysfs attributes") accidentally almost exposed hw counters to non-init net namespaces. It didn't expose them fully, as an attempt to read any of those counters leads to a crash like this one:
[42021.807566] BUG: kernel NULL pointer dereference, address: 0000000000000028 [42021.814463] #PF: supervisor read access in kernel mode [42021.819549] #PF: error_code(0x0000) - not-present page [42021.824636] PGD 0 P4D 0 [42021.827145] Oops: 0000 [#1] SMP PTI [42021.830598] CPU: 82 PID: 2843922 Comm: switchto-defaul Kdump: loaded Tainted: G S W I XXX [42021.841697] Hardware name: XXX [42021.849619] RIP: 0010:hw_stat_device_show+0x1e/0x40 [ib_core] [42021.855362] Code: 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 0f 1f 44 00 00 49 89 d0 4c 8b 5e 20 48 8b 8f b8 04 00 00 48 81 c7 f0 fa ff ff <48> 8b 41 28 48 29 ce 48 83 c6 d0 48 c1 ee 04 69 d6 ab aa aa aa 48 [42021.873931] RSP: 0018:ffff97fe90f03da0 EFLAGS: 00010287 [42021.879108] RAX: ffff9406988a8c60 RBX: ffff940e1072d438 RCX: 0000000000000000 [42021.886169] RDX: ffff94085f1aa000 RSI: ffff93c6cbbdbcb0 RDI: ffff940c7517aef0 [42021.893230] RBP: ffff97fe90f03e70 R08: ffff94085f1aa000 R09: 0000000000000000 [42021.900294] R10: ffff94085f1aa000 R11: ffffffffc0775680 R12: ffffffff87ca2530 [42021.907355] R13: ffff940651602840 R14: ffff93c6cbbdbcb0 R15: ffff94085f1aa000 [42021.914418] FS: 00007fda1a3b9700(0000) GS:ffff94453fb80000(0000) knlGS:0000000000000000 [42021.922423] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [42021.928130] CR2: 0000000000000028 CR3: 00000042dcfb8003 CR4: 00000000003726f0 [42021.935194] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [42021.942257] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [42021.949324] Call Trace: [42021.951756] <TASK> [42021.953842] [<ffffffff86c58674>] ? show_regs+0x64/0x70 [42021.959030] [<ffffffff86c58468>] ? __die+0x78/0xc0 [42021.963874] [<ffffffff86c9ef75>] ? page_fault_oops+0x2b5/0x3b0 [42021.969749] [<ffffffff87674b92>] ? exc_page_fault+0x1a2/0x3c0 [42021.975549] [<ffffffff87801326>] ? asm_exc_page_fault+0x26/0x30 [42021.981517] [<ffffffffc0775680>] ? __pfx_show_hw_stats+0x10/0x10 [ib_core] [42021.988482] [<ffffffffc077564e>] ? hw_stat_device_show+0x1e/0x40 [ib_core] [42021.995438] [<ffffffff86ac7f8e>] dev_attr_show+0x1e/0x50 [42022.000803] [<ffffffff86a3eeb1>] sysfs_kf_seq_show+0x81/0xe0 [42022.006508] [<ffffffff86a11134>] seq_read_iter+0xf4/0x410 [42022.011954] [<ffffffff869f4b2e>] vfs_read+0x16e/0x2f0 [42022.017058] [<ffffffff869f50ee>] ksys_read+0x6e/0xe0 [42022.022073] [<ffffffff8766f1ca>] do_syscall_64+0x6a/0xa0 [42022.027441] [<ffffffff8780013b>] entry_SYSCALL_64_after_hwframe+0x78/0xe2
The problem can be reproduced using the following steps: ip netns add foo ip netns exec foo bash cat /sys/class/infiniband/mlx4_0/hw_counters/*
The panic occurs because of casting the device pointer into an ib_device pointer using container_of() in hw_stat_device_show() is wrong and leads to a memory corruption.
However the real problem is that hw counters should never been exposed outside of the non-init net namespace.
Fix this by saving the index of the corresponding attribute group (it might be 1 or 2 depending on the presence of driver-specific attributes) and zeroing the pointer to hw_counters group for compat devices during the initialization.
With this fix applied hw_counters are not available in a non-init net namespace: find /sys/class/infiniband/mlx4_0/ -name hw_counters /sys/class/infiniband/mlx4_0/ports/1/hw_counters /sys/class/infiniband/mlx4_0/ports/2/hw_counters /sys/class/infiniband/mlx4_0/hw_counters
ip netns add foo ip netns exec foo bash find /sys/class/infiniband/mlx4_0/ -name hw_counters
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 bpftoolUpgrade kernel-tools-develUpgrade python-perfUpgrade bpftool-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-toolsUpgrade kernelUpgrade kernel-develUpgrade perfUpgrade kernel-tools-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade perf-debuginfoUpgrade kernel-debuginfoUpgrade kernel-livepatch-5.15.180-122.191Upgrade python-perf-debuginfoUpgrade kernel-headers | Jun 23, 2025 | Apr 16, 2025 |
| Amazon_linux_2023 | — | Upgrade kernel6.12-modules-extraUpgrade kernel-tools-develUpgrade kernel6.12Upgrade kernel-livepatch-6.12.23-29.97Upgrade kernel-libbpf-debuginfoUpgrade kernel-debuginfoUpgrade perf6.12-debuginfoUpgrade kernel-headersUpgrade kernel-modules-extraUpgrade perfUpgrade kernel6.12-debuginfo-common-x86_64Upgrade kernel6.12-debuginfo-common-aarch64Upgrade python3-perf6.12Upgrade kernel-libbpfUpgrade perf-debuginfoUpgrade python3-perfUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-livepatch-6.1.134-150.224Upgrade python3-perf-debuginfoUpgrade kernel-libbpf-staticUpgrade kernel-develUpgrade bpftoolUpgrade kernel-libbpf-develUpgrade kernel-debuginfo-common-aarch64Upgrade bpftool-debuginfoUpgrade kernel-toolsUpgrade perf6.12Upgrade kernelUpgrade python3-perf6.12-debuginfoUpgrade kernel-modules-extra-commonUpgrade kernel6.12-debuginfoUpgrade kernel-tools-debuginfo | Jun 24, 2025 | Apr 16, 2025 |
| Debian | — | Upgrade linux-6.1Upgrade linux | Apr 29, 2025 | Apr 16, 2025 |
| Redhat_linux | — | No solution existsUpgrade kernel-rtUpgrade kernel | Jul 9, 2025 | Apr 16, 2025 |
| Suse | — | Upgrade kernel-obs-qaUpgrade dtb-lgUpgrade cluster-md-kmp-defaultUpgrade dtb-alteraUpgrade dtb-marvellUpgrade kernel-kvmsmall-vdsoUpgrade reiserfs-kmp-rtUpgrade dtb-renesasUpgrade ocfs2-kmp-rtUpgrade kernel-debugUpgrade dtb-socionextUpgrade kernel-rt_debugUpgrade kselftests-kmp-azureUpgrade kernel-debug-develUpgrade kernel-source-rtUpgrade ocfs2-kmp-azureUpgrade gfs2-kmp-64kbUpgrade kernel-rt-livepatch-develUpgrade kernel-docs-htmlUpgrade kernel-rt_debug-develUpgrade kernel-64kb-optionalUpgrade kernel-default-extraUpgrade kernel-azure-vdsoUpgrade kernel-default-livepatchUpgrade ocfs2-kmp-64kbUpgrade kernel-zfcpdumpUpgrade kernel-syms-rtUpgrade dtb-freescaleUpgrade kernel-azure-extraUpgrade kernel-rt-optionalUpgrade kernel-64kbUpgrade kernel-symsUpgrade kselftests-kmp-rtUpgrade kernel-default-baseUpgrade kernel-source-vanillaUpgrade dlm-kmp-64kbUpgrade dtb-broadcomUpgrade reiserfs-kmp-64kbUpgrade kernel-kvmsmall-develUpgrade cluster-md-kmp-azureUpgrade dtb-amdUpgrade dtb-amazonUpgrade kernel-rt_debug-vdsoUpgrade dtb-hisiliconUpgrade kernel-default-develUpgrade kernel-64kb-develUpgrade dtb-appleUpgrade kernel-default-livepatch-develUpgrade kernel-azure-optionalUpgrade dtb-apmUpgrade reiserfs-kmp-defaultUpgrade dlm-kmp-defaultUpgrade gfs2-kmp-rtUpgrade kernel-source-azureUpgrade kernel-rt-develUpgrade dtb-caviumUpgrade kernel-obs-buildUpgrade gfs2-kmp-azureUpgrade dtb-rockchipUpgrade kernel-defaultUpgrade kernel-debug-vdsoUpgrade dtb-sprdUpgrade reiserfs-kmp-azureUpgrade kernel-devel-rtUpgrade kernel-default-vdsoUpgrade kernel-macrosUpgrade kernel-kvmsmallUpgrade cluster-md-kmp-rtUpgrade kernel-default-base-rebuildUpgrade kernel-develUpgrade cluster-md-kmp-64kbUpgrade kselftests-kmp-64kbUpgrade dtb-nvidiaUpgrade kernel-azureUpgrade dtb-armUpgrade kernel-devel-azureUpgrade dtb-allwinnerUpgrade dlm-kmp-rtUpgrade kernel-docsUpgrade kernel-azure-develUpgrade kernel-rt-vdsoUpgrade kernel-default-optionalUpgrade kernel-64kb-extraUpgrade ocfs2-kmp-defaultUpgrade dtb-exynosUpgrade kernel-rtUpgrade gfs2-kmp-defaultUpgrade kernel-sourceUpgrade dlm-kmp-azureUpgrade dtb-amlogicUpgrade kernel-rt-extraUpgrade dtb-xilinxUpgrade kselftests-kmp-defaultUpgrade dtb-qcomUpgrade kernel-syms-azureUpgrade dtb-mediatek | Dec 5, 2025 | Jun 16, 2025 |
| Ubuntu | — | Upgrade linux-image-6.8.0-1041-nvidiaUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-azure-fdeUpgrade linux-image-gcp-fipsUpgrade linux-image-raspi-6.8Upgrade linux-image-6.14.0-1008-gcp-64kUpgrade linux-image-6.8.0-1038-oracle-64kUpgrade linux-image-6.8.0-1041-nvidia-lowlatencyUpgrade linux-image-6.11.0-28-generic-64kUpgrade linux-image-lowlatency-6.11Upgrade linux-image-ibmUpgrade linux-image-6.14.0-1008-gcpUpgrade linux-image-gcp-64kUpgrade linux-image-gcp-6.8Upgrade linux-image-aws-fipsUpgrade linux-image-aws-lts-22.04Upgrade linux-image-6.14.0-1007-raspiUpgrade linux-image-azure-fde-edgeUpgrade linux-image-oem-24.04bUpgrade linux-image-oem-22.04aUpgrade linux-image-raspiUpgrade linux-image-fipsUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-aws-64k-6.8Upgrade linux-image-5.15.0-142-fipsUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-azure-fde-6.11Upgrade linux-image-6.14.0-1007-oracle-64kUpgrade linux-image-ibm-6.8Upgrade linux-image-6.8.0-1038-oracleUpgrade linux-image-azure-lts-24.04Upgrade linux-image-6.14.0-22-genericUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-6.11.0-1017-oracle-64kUpgrade linux-image-6.8.0-2032-raspi-realtimeUpgrade linux-image-azure-fipsUpgrade linux-image-5.15.0-1083-gkeUpgrade linux-image-generic-lpaeUpgrade linux-image-6.8.0-86-genericUpgrade linux-image-6.8.0-86-lowlatency-64kUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-6.8.0-1042-gcpUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-gke-64kUpgrade linux-image-5.15.0-142-lowlatencyUpgrade linux-image-6.8.0-86-generic-64kUpgrade linux-image-oracleUpgrade linux-image-azure-nvidia-6.8Upgrade linux-image-lowlatency-6.8Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-nvidia-6.8Upgrade linux-image-oem-22.04dUpgrade linux-image-5.15.0-1083-intel-iotgUpgrade linux-image-5.15.0-1086-realtimeUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-awsUpgrade linux-image-6.11.0-1015-lowlatencyUpgrade linux-image-6.14.0-1007-aws-64kUpgrade linux-image-6.8.0-1041-nvidia-64kUpgrade linux-image-6.11.0-1015-lowlatency-64kUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-raspi-nolpaeUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-realtime-6.8.1Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-kvmUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-virtual-6.8Upgrade linux-image-gke-5.15Upgrade linux-image-5.15.0-1028-nvidia-tegra-igx-rtUpgrade linux-image-azureUpgrade linux-image-generic-64k-6.8Upgrade linux-image-aws-6.8Upgrade linux-image-gkeop-6.8Upgrade linux-image-5.15.0-1085-gcp-fipsUpgrade linux-image-nvidia-tegra-igxUpgrade linux-image-oracle-64k-6.8Upgrade linux-image-ibm-classicUpgrade linux-image-5.15.0-1050-xilinx-zynqmpUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-azure-cvmUpgrade linux-image-5.15.0-1086-aws-64kUpgrade linux-image-6.8.0-1039-ibmUpgrade linux-image-lowlatency-64k-6.11Upgrade linux-image-6.14.0-1007-awsUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-6.11.0-1017-oracleUpgrade linux-image-5.15.0-1091-azureUpgrade linux-image-5.15.0-1086-aws-fipsUpgrade linux-image-6.11.0-28-genericUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-6.14.0-22-generic-64kUpgrade linux-image-nvidia-tegraUpgrade linux-image-6.11.0-1016-gcp-64kUpgrade linux-image-6.8.0-1041-azureUpgrade linux-image-oem-20.04dUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-6.11.0-1018-azureUpgrade linux-image-6.14.0-1007-azure-fdeUpgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-6.8.0-1025-gkeopUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-oracle-64kUpgrade linux-image-5.15.0-142-genericUpgrade linux-image-generic-64kUpgrade linux-image-5.15.0-1079-intel-iot-realtimeUpgrade linux-image-6.8.0-1041-aws-64kUpgrade linux-image-6.11.0-1014-raspiUpgrade linux-image-azure-fips-6.8Upgrade linux-image-5.15.0-1085-gcpUpgrade linux-image-5.15.0-1068-gkeopUpgrade linux-image-aws-64k-lts-22.04Upgrade linux-image-aws-64kUpgrade linux-image-6.8.0-1042-gcp-64kUpgrade linux-image-6.11.0-1016-gcpUpgrade linux-image-oracle-6.8Upgrade linux-image-gcpUpgrade linux-image-5.15.0-1082-kvmUpgrade linux-image-oem-22.04Upgrade linux-image-oem-22.04cUpgrade linux-image-6.14.0-1007-azureUpgrade linux-image-raspi-realtimeUpgrade linux-image-oem-20.04bUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-6.8.0-1038-gke-64kUpgrade linux-image-gke-6.8Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-5.15.0-1083-oracleUpgrade linux-image-5.15.0-1080-raspiUpgrade linux-image-azure-lts-22.04Upgrade linux-image-virtualUpgrade linux-image-nvidiaUpgrade linux-image-realtime-hwe-22.04Upgrade linux-image-generic-hwe-20.04Upgrade linux-image-intelUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-azure-6.8Upgrade linux-image-5.15.0-1086-awsUpgrade linux-image-5.15.0-1080-nvidiaUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-azure-nvidia-lts-24.04Upgrade linux-image-gcp-64k-6.8Upgrade linux-image-6.8.0-1041-nvidia-lowlatency-64kUpgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-6.8.1-1036-realtimeUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-lowlatency-64kUpgrade linux-image-gkeop-5.15Upgrade linux-image-6.8.0-1041-raspiUpgrade linux-image-6.14.0-1004-realtimeUpgrade linux-image-6.11.0-1011-realtimeUpgrade linux-image-5.15.0-142-lowlatency-64kUpgrade linux-image-gkeopUpgrade linux-image-5.15.0-1078-ibmUpgrade linux-image-intel-iotg-5.15Upgrade linux-image-gkeUpgrade linux-image-6.8.0-86-lowlatencyUpgrade linux-image-6.8.0-1044-azure-fipsUpgrade linux-image-6.8.0-1041-awsUpgrade linux-image-6.8.0-1038-gkeUpgrade linux-image-5.15.0-142-generic-lpaeUpgrade linux-image-5.15.0-1091-azure-fipsUpgrade linux-image-oem-22.04bUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-nvidia-64kUpgrade linux-image-intel-iotgUpgrade linux-image-genericUpgrade linux-image-6.11.0-1015-awsUpgrade linux-image-6.8.0-1029-azure-nvidiaUpgrade linux-image-5.15.0-1080-nvidia-lowlatencyUpgrade linux-image-oem-20.04Upgrade linux-image-gke-64k-6.8Upgrade linux-image-azure-6.11Upgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-5.15.0-142-generic-64kUpgrade linux-image-5.15.0-1028-nvidia-tegra-igxUpgrade linux-image-5.15.0-1039-nvidia-tegraUpgrade linux-image-aws-lts-24.04Upgrade linux-image-realtimeUpgrade linux-image-oem-20.04cUpgrade linux-image-5.15.0-1081-intel-iotgUpgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-6.11.0-1024-oemUpgrade linux-image-5.15.0-1039-nvidia-tegra-rtUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-6.14.0-1007-oracleUpgrade linux-image-lowlatencyUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-6.11.0-1018-azure-fdeUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-generic-6.8 | Jun 20, 2025 | Apr 16, 2025 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jul 2, 2025 | Apr 16, 2025 |
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