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 perf-debuginfoUpgrade python-perf-debuginfoUpgrade kernel-headersUpgrade perfUpgrade kernel-livepatch-5.15.180-122.191Upgrade kernel-debuginfoUpgrade kernel-tools-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernelUpgrade bpftool-debuginfoUpgrade kernel-develUpgrade bpftoolUpgrade kernel-tools-develUpgrade python-perfUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-tools | Jun 23, 2025 | Apr 16, 2025 |
| Amazon_linux_2023 | — | Upgrade kernel-libbpf-debuginfoUpgrade kernel-livepatch-6.12.23-29.97Upgrade kernel-tools-develUpgrade perf6.12-debuginfoUpgrade kernel-headersUpgrade perf-debuginfoUpgrade python3-perf6.12Upgrade kernel6.12-debuginfo-common-aarch64Upgrade kernel6.12-modules-extraUpgrade kernel-modules-extraUpgrade kernel-debuginfoUpgrade kernel6.12-debuginfo-common-x86_64Upgrade kernel6.12Upgrade python3-perfUpgrade kernel-libbpfUpgrade perfUpgrade kernelUpgrade python3-perf6.12-debuginfoUpgrade kernel-toolsUpgrade kernel-libbpf-develUpgrade bpftoolUpgrade kernel-develUpgrade kernel-modules-extra-commonUpgrade perf6.12Upgrade kernel-debuginfo-common-x86_64Upgrade kernel6.12-debuginfoUpgrade kernel-tools-debuginfoUpgrade kernel-libbpf-staticUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-livepatch-6.1.134-150.224Upgrade bpftool-debuginfoUpgrade python3-perf-debuginfo | Jun 24, 2025 | Apr 16, 2025 |
| Debian | — | Upgrade linuxUpgrade linux-6.1 | Apr 29, 2025 | Apr 16, 2025 |
| Redhat_linux | — | Upgrade kernel-rtNo solution existsUpgrade kernel | Jul 9, 2025 | Apr 16, 2025 |
| Suse | — | Upgrade kernel-devel-azureUpgrade kernel-docsUpgrade kernel-azureUpgrade cluster-md-kmp-rtUpgrade dtb-nvidiaUpgrade kernel-obs-buildUpgrade kernel-rt-develUpgrade dtb-caviumUpgrade kselftests-kmp-64kbUpgrade dlm-kmp-rtUpgrade gfs2-kmp-azureUpgrade dtb-allwinnerUpgrade reiserfs-kmp-azureUpgrade dtb-rockchipUpgrade dtb-armUpgrade dtb-mediatekUpgrade kernel-default-vdsoUpgrade kernel-devel-rtUpgrade kernel-defaultUpgrade kernel-kvmsmallUpgrade kernel-debug-vdsoUpgrade kernel-macrosUpgrade dtb-sprdUpgrade dlm-kmp-azureUpgrade dtb-amlogicUpgrade dtb-qcomUpgrade kernel-rt-vdsoUpgrade gfs2-kmp-defaultUpgrade dtb-exynosUpgrade kernel-rtUpgrade kernel-default-base-rebuildUpgrade kernel-rt-extraUpgrade kernel-sourceUpgrade cluster-md-kmp-64kbUpgrade kernel-64kb-extraUpgrade kernel-default-optionalUpgrade kernel-develUpgrade ocfs2-kmp-defaultUpgrade kernel-syms-azureUpgrade dtb-xilinxUpgrade kernel-azure-develUpgrade kselftests-kmp-defaultUpgrade kernel-rt_debug-vdsoUpgrade kernel-kvmsmall-vdsoUpgrade gfs2-kmp-64kbUpgrade kernel-obs-qaUpgrade kernel-source-vanillaUpgrade dtb-marvellUpgrade dtb-lgUpgrade dtb-freescaleUpgrade kernel-debug-develUpgrade dtb-renesasUpgrade kselftests-kmp-azureUpgrade kernel-default-livepatchUpgrade kernel-debugUpgrade kernel-rt_debugUpgrade dtb-socionextUpgrade dlm-kmp-defaultUpgrade kernel-default-develUpgrade reiserfs-kmp-defaultUpgrade kernel-kvmsmall-develUpgrade kernel-azure-optionalUpgrade kernel-64kb-develUpgrade dtb-broadcomUpgrade dtb-amdUpgrade cluster-md-kmp-azureUpgrade kernel-docs-htmlUpgrade dtb-hisiliconUpgrade ocfs2-kmp-azureUpgrade reiserfs-kmp-64kbUpgrade kernel-zfcpdumpUpgrade kernel-syms-rtUpgrade ocfs2-kmp-64kbUpgrade kselftests-kmp-rtUpgrade kernel-symsUpgrade kernel-rt-optionalUpgrade kernel-azure-extraUpgrade kernel-64kbUpgrade gfs2-kmp-rtUpgrade dtb-amazonUpgrade dtb-apmUpgrade kernel-default-extraUpgrade kernel-64kb-optionalUpgrade ocfs2-kmp-rtUpgrade kernel-azure-vdsoUpgrade reiserfs-kmp-rtUpgrade kernel-default-baseUpgrade dtb-appleUpgrade dlm-kmp-64kbUpgrade kernel-source-rtUpgrade kernel-source-azureUpgrade kernel-rt_debug-develUpgrade kernel-default-livepatch-develUpgrade dtb-alteraUpgrade cluster-md-kmp-defaultUpgrade kernel-rt-livepatch-devel | Dec 5, 2025 | Jun 16, 2025 |
| Ubuntu | — | Upgrade linux-image-nvidia-6.8Upgrade linux-image-5.15.0-1083-intel-iotgUpgrade linux-image-5.15.0-142-lowlatencyUpgrade linux-image-6.8.0-86-lowlatency-64kUpgrade linux-image-ibmUpgrade linux-image-oem-22.04dUpgrade linux-image-virtual-6.8Upgrade linux-image-raspi-nolpaeUpgrade linux-image-lowlatency-6.11Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-5.15.0-1085-gcp-fipsUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-awsUpgrade linux-image-6.14.0-1007-aws-64kUpgrade linux-image-kvmUpgrade linux-image-gke-64kUpgrade linux-image-generic-64k-6.8Upgrade linux-image-gkeop-6.8Upgrade linux-image-6.11.0-1015-lowlatency-64kUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-oracleUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-5.15.0-1086-realtimeUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-6.8.0-86-generic-64kUpgrade linux-image-azure-nvidia-6.8Upgrade linux-image-6.8.0-86-genericUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-6.8.0-1041-nvidiaUpgrade linux-image-lowlatency-6.8Upgrade linux-image-realtime-6.8.1Upgrade linux-image-lowlatency-64k-6.11Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-6.8.0-1041-nvidia-64kUpgrade linux-image-6.11.0-1015-lowlatencyUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-5.15.0-1083-gkeUpgrade linux-image-5.15.0-1091-azureUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-6.11.0-1017-oracleUpgrade linux-image-azure-fdeUpgrade linux-image-gcp-6.8Upgrade linux-image-6.8.0-1038-oracle-64kUpgrade linux-image-6.8.0-1042-gcpUpgrade linux-image-fipsUpgrade linux-image-6.8.0-1039-ibmUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-6.14.0-1007-awsUpgrade linux-image-oem-22.04aUpgrade linux-image-6.11.0-1017-oracle-64kUpgrade linux-image-aws-64k-6.8Upgrade linux-image-azure-fde-edgeUpgrade linux-image-azureUpgrade linux-image-gke-5.15Upgrade linux-image-nvidia-tegra-igxUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-oracle-64k-6.8Upgrade linux-image-aws-6.8Upgrade linux-image-azure-cvmUpgrade linux-image-ibm-classicUpgrade linux-image-5.15.0-1028-nvidia-tegra-igx-rtUpgrade linux-image-5.15.0-1050-xilinx-zynqmpUpgrade linux-image-6.14.0-22-genericUpgrade linux-image-5.15.0-1086-aws-64kUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-generic-lpaeUpgrade linux-image-ibm-6.8Upgrade linux-image-5.15.0-1086-aws-fipsUpgrade linux-image-6.8.0-1038-oracleUpgrade linux-image-6.8.0-2032-raspi-realtimeUpgrade linux-image-6.14.0-1007-oracle-64kUpgrade linux-image-azure-fde-6.11Upgrade linux-image-5.15.0-142-fipsUpgrade linux-image-azure-fipsUpgrade linux-image-6.11.0-28-genericUpgrade linux-image-6.14.0-1007-raspiUpgrade linux-image-aws-lts-22.04Upgrade linux-image-nvidia-tegra-rtUpgrade linux-image-gcp-64kUpgrade linux-image-gcp-fipsUpgrade linux-image-aws-fipsUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-6.11.0-28-generic-64kUpgrade linux-image-6.14.0-1008-gcp-64kUpgrade linux-image-6.8.0-1041-nvidia-lowlatencyUpgrade linux-image-6.14.0-1008-gcpUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-azure-lts-24.04Upgrade linux-image-raspi-6.8Upgrade linux-image-oem-24.04bUpgrade linux-image-raspiUpgrade linux-image-aws-64kUpgrade linux-image-6.8.0-1042-gcp-64kUpgrade linux-image-6.11.0-1014-raspiUpgrade linux-image-5.15.0-1085-gcpUpgrade linux-image-5.15.0-1068-gkeopUpgrade linux-image-oem-20.04cUpgrade linux-image-oracle-6.8Upgrade linux-image-5.15.0-1082-kvmUpgrade linux-image-gcpUpgrade linux-image-6.14.0-22-generic-64kUpgrade linux-image-gke-64k-6.8Upgrade linux-image-5.15.0-142-generic-64kUpgrade linux-image-6.8.0-86-lowlatencyUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-gkeUpgrade linux-image-6.8.0-1038-gkeUpgrade linux-image-nvidia-64kUpgrade linux-image-6.8.0-1044-azure-fipsUpgrade linux-image-5.15.0-142-generic-lpaeUpgrade linux-image-intel-iotg-5.15Upgrade linux-image-gkeopUpgrade linux-image-6.8.0-1041-awsUpgrade linux-image-5.15.0-1091-azure-fipsUpgrade linux-image-5.15.0-1078-ibmUpgrade linux-image-oem-22.04bUpgrade linux-image-oem-22.04cUpgrade linux-image-oem-22.04Upgrade linux-image-virtualUpgrade linux-image-realtimeUpgrade linux-image-oem-20.04Upgrade linux-image-gke-6.8Upgrade linux-image-genericUpgrade linux-image-aws-lts-24.04Upgrade linux-image-6.11.0-1015-awsUpgrade linux-image-5.15.0-1080-nvidia-lowlatencyUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-6.8.0-1025-gkeopUpgrade linux-image-6.14.0-1007-azure-fdeUpgrade linux-image-generic-64kUpgrade linux-image-generic-6.8Upgrade linux-image-6.8.0-1041-aws-64kUpgrade linux-image-5.15.0-1080-nvidiaUpgrade linux-image-5.15.0-1079-intel-iot-realtimeUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-lowlatencyUpgrade linux-image-6.14.0-1007-azureUpgrade linux-image-5.15.0-1039-nvidia-tegra-rtUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-5.15.0-1086-awsUpgrade linux-image-6.8.0-1041-azureUpgrade linux-image-nvidia-tegraUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-5.15.0-1081-intel-iotgUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-intelUpgrade linux-image-azure-6.8Upgrade linux-image-raspi-realtime-6.8Upgrade linux-image-6.11.0-1024-oemUpgrade linux-image-oem-20.04dUpgrade linux-image-azure-nvidia-lts-24.04Upgrade linux-image-6.11.0-1018-azureUpgrade linux-image-realtime-hwe-22.04Upgrade linux-image-oracle-64kUpgrade linux-image-6.11.0-1016-gcp-64kUpgrade linux-image-6.11.0-1018-azure-fdeUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-6.14.0-1007-oracleUpgrade linux-image-azure-lts-22.04Upgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-azure-6.11Upgrade linux-image-6.8.0-1038-gke-64kUpgrade linux-image-5.15.0-1083-oracleUpgrade linux-image-5.15.0-1028-nvidia-tegra-igxUpgrade linux-image-raspi-realtimeUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-oem-20.04bUpgrade linux-image-nvidiaUpgrade linux-image-5.15.0-1080-raspiUpgrade linux-image-6.8.0-1029-azure-nvidiaUpgrade linux-image-5.15.0-1039-nvidia-tegraUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-5.15.0-142-genericUpgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-lowlatency-64kUpgrade linux-image-intel-iotgUpgrade linux-image-6.8.1-1036-realtimeUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-gkeop-5.15Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-6.14.0-1004-realtimeUpgrade linux-image-6.11.0-1011-realtimeUpgrade linux-image-6.8.0-1041-raspiUpgrade linux-image-6.8.0-1041-nvidia-lowlatency-64kUpgrade linux-image-5.15.0-142-lowlatency-64kUpgrade linux-image-aws-64k-lts-22.04Upgrade linux-image-6.11.0-1016-gcpUpgrade linux-image-gcp-64k-6.8Upgrade linux-image-azure-fips-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