In the Linux kernel, the following vulnerability has been resolved:
netfilter: ctnetlink: ensure safe access to master conntrack
Holding reference on the expectation is not sufficient, the master conntrack object can just go away, making exp->master invalid.
To access exp->master safely:
- Grab the nf_conntrack_expect_lock, this gets serialized with clean_from_lists() which also holds this lock when the master conntrack goes away.
- Hold reference on master conntrack via nf_conntrack_find_get(). Not so easy since the master tuple to look up for the master conntrack is not available in the existing problematic paths.
This patch goes for extending the nf_conntrack_expect_lock section to address this issue for simplicity, in the cases that are described below this is just slightly extending the lock section.
The add expectation command already holds a reference to the master conntrack from ctnetlink_create_expect().
However, the delete expectation command needs to grab the spinlock before looking up for the expectation. Expand the existing spinlock section to address this to cover the expectation lookup. Note that, the nf_ct_expect_iterate_net() calls already grabs the spinlock while iterating over the expectation table, which is correct.
The get expectation command needs to grab the spinlock to ensure master conntrack does not go away. This also expands the existing spinlock section to cover the expectation lookup too. I needed to move the netlink skb allocation out of the spinlock to keep it GFP_KERNEL.
For the expectation events, the IPEXP_DESTROY event is already delivered under the spinlock, just move the delivery of IPEXP_NEW under the spinlock too because the master conntrack event cache is reached through exp->master.
While at it, add lockdep notations to help identify what codepaths need to grab the spinlock.
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-64k-debug-modules-coreUpgrade kernel-debug-coreUpgrade kernel-rt-develUpgrade python3-perfUpgrade kernel-modules-extraUpgrade kernel-uki-virtUpgrade kernel-rt-debug-modules-coreUpgrade kernel-rt-64k-develUpgrade kernel-rt-64k-modulesUpgrade kernel-develUpgrade kernel-rt-64k-debug-develUpgrade kernel-debug-uki-virtUpgrade kernel-debugUpgrade kernel-rt-debugUpgrade bpftoolUpgrade rtlaUpgrade kernel-64k-debug-modulesUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-coreUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-rt-64k-debug-modules-coreUpgrade kernel-64k-modules-extraUpgrade kernel-coreUpgrade kernel-64k-develUpgrade kernel-rt-64k-debug-modules-extraUpgrade kernel-debug-develUpgrade perfUpgrade kernel-docUpgrade kernel-64k-modules-coreUpgrade kernel-64k-debug-develUpgrade kernel-modulesUpgrade kernel-rt-modules-coreUpgrade kernel-64k-modulesUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-toolsUpgrade kernel-debug-modules-extraUpgrade kernel-zfcpdump-coreUpgrade kernel-rt-modulesUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-rt-64kUpgrade kernel-rt-debug-coreUpgrade kernel-debug-devel-matchedUpgrade kernel-cross-headersUpgrade kernel-headersUpgrade kernel-zfcpdump-develUpgrade kernel-debug-modulesUpgrade kernel-modules-coreUpgrade kernelUpgrade kernel-rt-64k-debug-coreUpgrade libperfUpgrade rvUpgrade kernel-rt-64k-coreUpgrade kernel-devel-matchedUpgrade kernel-64k-debug-modules-extraUpgrade kernel-rt-debug-modulesUpgrade kernel-abi-stablelistsUpgrade kernel-64k-devel-matchedUpgrade kernel-tools-libsUpgrade kernel-64k-debug-coreUpgrade kernel-64k-coreUpgrade kernel-64kUpgrade kernel-debug-modules-coreUpgrade kernel-rt-64k-modules-extraUpgrade kernel-rtUpgrade kernel-rt-64k-debugUpgrade kernel-rt-64k-debug-modulesUpgrade kernel-rt-debug-develUpgrade kernel-tools-libs-develUpgrade kernel-uki-virt-addonsUpgrade kernel-zfcpdump-modulesUpgrade kernel-rt-64k-modules-coreUpgrade kernel-zfcpdumpUpgrade kernel-64k-debugUpgrade kernel-rt-modules-extra | Jun 16, 2026 | Jun 11, 2026 |
| Amazon Linux Ami 2 | — | Upgrade kernel-debuginfoUpgrade kernel-develUpgrade kernel-debuginfo-common-aarch64Upgrade kernelUpgrade python-perf-debuginfoUpgrade kernel-headersUpgrade perfUpgrade bpftoolUpgrade kernel-tools-debuginfoUpgrade kernel-tools-develUpgrade perf-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-toolsUpgrade python-perfUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-livepatch-5.10.258-257.1041 | Jun 23, 2026 | Jun 23, 2026 |
| Amazon_linux_2023 | — | Upgrade bpftool6.12-debuginfoUpgrade kernel6.12-headersUpgrade kernel-livepatch-6.12.92-122.166Upgrade perf6.12Upgrade kernel6.12Upgrade bpftool6.12Upgrade kernel6.12-develUpgrade kernel6.12-debuginfo-common-aarch64Upgrade perf6.12-debuginfoUpgrade kernel6.12-toolsUpgrade python3-perf6.12Upgrade kernel6.12-debuginfo-common-x86_64Upgrade kernel6.12-tools-debuginfoUpgrade python3-perf6.12-debuginfoUpgrade kernel6.12-tools-develUpgrade kernel6.12-debuginfoUpgrade kernel6.12-modules-extra-commonUpgrade kernel6.12-modules-extra | Jun 23, 2026 | May 6, 2026 |
| Debian | — | Upgrade linuxUpgrade linux-6.1 | Jul 5, 2026 | Jul 5, 2026 |
| Redhat_linux | — | No solution existsUpgrade kernel-rtUpgrade kernel | Jun 3, 2026 | May 6, 2026 |
| Rocky_linux | — | Upgrade kernel-rt-modules-coreUpgrade libperf-debuginfoUpgrade kernel-debuginfo-common-s390xUpgrade kernel-rt-modules-extraUpgrade kernel-zfcpdump-coreUpgrade kernel-rt-debuginfoUpgrade kernel-rtUpgrade kernel-rt-debug-debuginfoUpgrade kernel-rt-debuginfo-common-x86_64Upgrade kernel-rt-kvmUpgrade kernel-develUpgrade kernel-debug-uki-virtUpgrade kernel-debug-modules-coreUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-uki-virt-addonsUpgrade kernel-tools-libs-develUpgrade kernel-rt-debug-coreUpgrade kernel-modules-extra-matchedUpgrade python3-perfUpgrade python3-perf-debuginfoUpgrade kernel-rt-modulesUpgrade kernel-rt-debugUpgrade bpftoolUpgrade rvUpgrade kernel-tools-libsUpgrade kernel-toolsUpgrade kernel-zfcpdump-debuginfoUpgrade kernel-debug-modulesUpgrade kernel-rt-debug-modules-coreUpgrade kernelUpgrade kernel-rt-develUpgrade kernel-debuginfoUpgrade kernel-uki-virtUpgrade kernel-debug-devel-matchedUpgrade kernel-rt-debug-kvmUpgrade kernel-debug-develUpgrade kernel-rt-coreUpgrade kernel-modulesUpgrade kernel-tools-debuginfoUpgrade kernel-debug-coreUpgrade perfUpgrade kernel-zfcpdumpUpgrade kernel-zfcpdump-develUpgrade perf-debuginfoUpgrade kernel-modules-extraUpgrade kernel-modules-coreUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-debugUpgrade libperfUpgrade kernel-rt-debug-develUpgrade kernel-devel-matchedUpgrade kernel-coreUpgrade bpftool-debuginfoUpgrade kernel-debug-debuginfoUpgrade kernel-rt-debug-modulesUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-zfcpdump-modulesUpgrade kernel-rt-debug-modules-extraUpgrade rtlaUpgrade kernel-debug-modules-extra | Jun 8, 2026 | Jun 4, 2026 |
| Ubuntu | — | Upgrade linux-image-6.8.0-1035-nvidia-tegraUpgrade linux-image-nvidia-tegraUpgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-nvidia-tegra-rtUpgrade linux-image-6.8.0-1035-nvidia-tegra-rtNo solution existsUpgrade linux-image-nvidia-tegra-rt-6.8 | Sep 21, 2026 | Sep 18, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jul 22, 2026 | May 6, 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