In the Linux kernel, the following vulnerability has been resolved:
xfrm: defensively unhash xfrm_state lists in __xfrm_state_delete
KASAN reproduces a slab-use-after-free in __xfrm_state_delete()'s hlist_del_rcu calls under syzkaller load on linux-6.12.y stable (reproduced on 6.12.47, also reachable via the same code path on torvalds/master and on the ipsec tree). Nine unique signatures cluster in the xfrm_state lifecycle, the load-bearing one being:
BUG: KASAN: slab-use-after-free in __hlist_del include/linux/list.h:990 [inline] BUG: KASAN: slab-use-after-free in hlist_del_rcu include/linux/rculist.h:516 [inline] BUG: KASAN: slab-use-after-free in __xfrm_state_delete net/xfrm/xfrm_state.c Write of size 8 at addr ffff8881198bcb70 by task kworker/u8:9/435
Workqueue: netns cleanup_net Call Trace: __hlist_del / hlist_del_rcu __xfrm_state_delete xfrm_state_delete xfrm_state_flush xfrm_state_fini ops_exit_list cleanup_net
The other observed signatures hit the same slab object from __xfrm_state_lookup, xfrm_alloc_spi, __xfrm_state_insert and an OOB write variant of __xfrm_state_delete, all on the byseq/byspi hash chains.
__xfrm_state_delete() guards its byseq and byspi unhashes with value-based predicates:
if (x->km.seq) hlist_del_rcu(&x->byseq); if (x->id.spi) hlist_del_rcu(&x->byspi);
while everywhere else in the file (e.g. state_cache, state_cache_input) the safer hlist_unhashed() check is used. xfrm_alloc_spi() sets x->id.spi = newspi inside xfrm_state_lock and then immediately inserts into byspi, but a path that observes x->id.spi != 0 outside of xfrm_state_lock can still skip-or-hit the byspi unhash inconsistently with whether x is actually on the list. The same holds for x->km.seq versus byseq, and the bydst/bysrc unhashes have no predicate at all, so a second __xfrm_state_delete() on the same object writes through LIST_POISON pprev.
The defensive change here:
- Use hlist_del_init_rcu() instead of hlist_del_rcu() on bydst, bysrc, byseq and byspi so a second deletion is a no-op rather than a write through LIST_POISON pprev. The byseq/byspi nodes are already initialised in xfrm_state_alloc(). - Test hlist_unhashed() rather than the value predicate for byseq/byspi, so the unhash decision tracks list state rather than mutable scalar fields.
Empirical verification: applied this patch on top of v6.12.47, rebuilt, and re-ran the same syzkaller harness for 1h16m on a previously-crashy configuration that produced ~100 hits each of slab-use-after-free Read in xfrm_alloc_spi / Read in __xfrm_state_lookup / Write in __xfrm_state_delete. After the patch, 7.1M execs across 32 VMs at ~1550 exec/sec produced zero xfrm_state UAF/OOB hits. /proc/slabinfo confirms the xfrm_state slab is actively allocated and freed during the run (~143 KiB resident), so the fuzzer is still exercising those code paths -- they just no longer crash.
Reproduction:
- Linux 6.12.47 x86_64 + KASAN_GENERIC + KASAN_INLINE + KCOV - syzkaller @ 746545b8b1e4c3a128db8652b340d3df90ce61db - 32 QEMU/KVM VMs x 2 vCPU on AWS c5.metal bare metal - 9 unique signatures collected in ~9h, all within xfrm_state lifecycle
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-zfcpdump-modules-coreUpgrade kernel-rt-debug-modules-coreUpgrade kernel-modules-coreUpgrade kernel-rt-debug-develUpgrade kernel-64k-debugUpgrade kernel-zfcpdump-develUpgrade kernel-rt-modulesUpgrade kernel-uki-virtUpgrade kernel-modules-extraUpgrade perfUpgrade kernel-modulesUpgrade kernel-rt-debug-modulesUpgrade rvUpgrade kernel-64k-debug-modules-coreUpgrade kernel-debug-uki-virtUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-64k-debug-modules-extraUpgrade kernel-64k-modules-extraUpgrade kernel-64k-modules-coreUpgrade kernel-debug-develUpgrade kernel-docUpgrade kernel-rt-64k-debug-modules-coreUpgrade kernel-rt-64k-modulesUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-modules-coreUpgrade kernel-devel-matchedUpgrade kernel-toolsUpgrade kernel-zfcpdump-modulesUpgrade kernel-coreUpgrade kernel-debug-modules-extraUpgrade kernel-develUpgrade kernel-zfcpdumpUpgrade kernel-rtUpgrade libperfUpgrade kernel-64k-devel-matchedUpgrade kernel-rt-64k-modules-extraUpgrade kernel-64k-develUpgrade kernel-debug-devel-matchedUpgrade kernel-headersUpgrade kernel-debug-coreUpgrade rtlaUpgrade kernel-debugUpgrade kernel-uki-virt-addonsUpgrade kernel-64k-debug-devel-matchedUpgrade kernel-64kUpgrade kernel-zfcpdump-coreUpgrade kernel-64k-modulesUpgrade kernel-64k-coreUpgrade kernel-rt-64k-debug-coreUpgrade kernel-cross-headersUpgrade kernel-64k-debug-modulesUpgrade kernel-rt-64k-debug-modules-extraUpgrade kernel-rt-64kUpgrade kernel-rt-64k-coreUpgrade kernel-rt-64k-modules-coreUpgrade kernel-rt-develUpgrade python3-perfUpgrade kernel-64k-debug-develUpgrade kernel-rt-modules-extraUpgrade bpftoolUpgrade kernel-64k-debug-coreUpgrade kernel-rt-coreUpgrade kernel-debug-modules-coreUpgrade kernel-debug-modulesUpgrade kernel-rt-64k-develUpgrade kernel-rt-64k-debug-develUpgrade kernel-rt-64k-debug-modulesUpgrade kernel-tools-libsUpgrade kernel-rt-debug-coreUpgrade kernel-tools-libs-develUpgrade kernel-abi-stablelistsUpgrade kernel-rt-64k-debugUpgrade kernel-zfcpdump-devel-matchedUpgrade kernelUpgrade kernel-rt-debug | Jul 9, 2026 | Jul 6, 2026 |
| Amazon Linux Ami 2 | — | Upgrade perf-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-toolsUpgrade kernel-tools-develUpgrade kernel-headersUpgrade perfUpgrade kernel-debuginfoUpgrade kernel-develUpgrade kernel-livepatch-5.15.210-148.245Upgrade python-perfUpgrade python-perf-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-tools-debuginfoUpgrade kernelUpgrade kernel-livepatch-5.10.260-259.1053Upgrade bpftoolUpgrade kernel-debuginfo-common-x86_64 | Jul 21, 2026 | Jul 21, 2026 |
| Amazon_linux_2023 | — | Upgrade python3-perfUpgrade kernel-develUpgrade kernel-tools-debuginfoUpgrade kernel-toolsUpgrade kernel-modules-extraUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-tools-develUpgrade kernel6.18-modules-extra-commonUpgrade kernel6.18-toolsUpgrade kernel-livepatch-6.18.30-61.116Upgrade kernel6.18Upgrade kernel6.18-headersUpgrade perfUpgrade kernel-livepatch-6.1.176-220.358Upgrade perf-debuginfoUpgrade python3-perf-debuginfoUpgrade kernel6.18-modules-extraUpgrade kernel6.18-debuginfo-common-aarch64Upgrade kernel-debuginfoUpgrade kernel6.18-develUpgrade bpftoolUpgrade kernel-headersUpgrade kernelUpgrade python3-perf6.18-debuginfoUpgrade kernel6.18-debuginfo-common-x86_64Upgrade perf6.18-debuginfoUpgrade kernel6.18-debuginfoUpgrade bpftool6.18Upgrade kernel6.18-tools-debuginfoUpgrade kernel6.18-tools-develUpgrade kernel-modules-extra-commonUpgrade kernel-debuginfo-common-x86_64Upgrade bpftool6.18-debuginfoUpgrade python3-perf6.18Upgrade bpftool-debuginfoUpgrade perf6.18 | Jun 23, 2026 | May 28, 2026 |
| Debian | — | Upgrade linux-6.1Upgrade linux | Jul 5, 2026 | Jul 5, 2026 |
| Redhat_linux | — | Upgrade kernelUpgrade kernel-rtNo solution exists | Jul 8, 2026 | May 28, 2026 |
| Rocky_linux | — | Upgrade kernel-debug-modules-extraUpgrade kernel-rt-debuginfo-common-x86_64Upgrade kernel-toolsUpgrade kernel-rt-debug-debuginfoUpgrade kernel-debuginfo-common-s390xUpgrade kernel-rt-develUpgrade kernel-rt-kvmUpgrade kernel-tools-libsUpgrade kernel-develUpgrade kernel-uki-virt-addonsUpgrade kernel-rt-modules-extraUpgrade libperf-debuginfoUpgrade python3-perf-debuginfoUpgrade kernel-rt-debug-modules-coreUpgrade kernel-rt-modulesUpgrade kernel-rt-debuginfoUpgrade kernel-zfcpdump-coreUpgrade kernel-tools-libs-develUpgrade rvUpgrade kernel-rt-debug-coreUpgrade perfUpgrade bpftoolUpgrade bpftool-debuginfoUpgrade kernel-rtUpgrade kernel-debug-modules-coreUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-rt-debugUpgrade kernel-rt-modules-coreUpgrade kernel-zfcpdump-modulesUpgrade kernel-debug-debuginfoUpgrade kernel-modules-extra-matchedUpgrade kernel-rt-debug-develUpgrade kernel-zfcpdumpUpgrade python3-perfUpgrade kernel-zfcpdump-debuginfoUpgrade kernel-debug-modulesUpgrade kernel-debug-coreUpgrade kernel-debug-develUpgrade kernel-debug-devel-matchedUpgrade kernel-rt-debug-kvmUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-modules-extraUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-uki-virtUpgrade kernel-debugUpgrade kernel-rt-debug-modulesUpgrade kernel-tools-debuginfoUpgrade kernel-devel-matchedUpgrade kernelUpgrade libperfUpgrade kernel-zfcpdump-develUpgrade kernel-coreUpgrade kernel-rt-coreUpgrade rtlaUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-rt-debug-modules-extraUpgrade kernel-modulesUpgrade kernel-debug-uki-virtUpgrade kernel-modules-coreUpgrade kernel-debuginfoUpgrade perf-debuginfo | Jul 13, 2026 | Jul 11, 2026 |
| Ubuntu | — | Upgrade linux-image-raspi-realtimeUpgrade linux-image-aws-64k-lts-22.04Upgrade linux-image-fips-6.8Upgrade linux-image-6.8.0-1064-gcp-fipsUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-7.0.0-1003-gke-64kUpgrade linux-image-6.8.0-1064-gcp-64kUpgrade linux-image-7.0.0-1011-oracle-64kUpgrade linux-image-awsUpgrade linux-image-7.0.0-1009-awsUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-oem-24.04dUpgrade linux-image-ibm-6.8Upgrade linux-image-5.15.0-1109-intel-iot-realtimeUpgrade linux-image-gcp-7.0Upgrade linux-image-gkeUpgrade linux-image-5.15.0-1109-kvmUpgrade linux-image-ibm-classicUpgrade linux-image-oem-24.04bUpgrade linux-image-oracleUpgrade linux-image-oem-22.04aUpgrade linux-image-5.15.0-1117-aws-64kUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-nvidia-lowlatency-5.15Upgrade linux-image-5.15.0-1118-gcp-fipsUpgrade linux-image-5.15.0-1080-xilinx-zynqmpUpgrade linux-image-7.0.0-28-genericUpgrade linux-image-realtime-64kUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-lowlatency-64k-5.15Upgrade linux-image-azure-fde-7.0Upgrade linux-image-6.8.0-1059-nvidia-lowlatencyUpgrade linux-image-fips-5.15Upgrade linux-image-7.0.0-1008-oracle-64kUpgrade linux-image-6.8.0-1033-xilinxUpgrade linux-image-aws-lts-22.04Upgrade linux-image-generic-5.15Upgrade linux-image-generic-6.8Upgrade linux-image-gcp-5.15Upgrade linux-image-6.8.1-1056-realtimeUpgrade linux-image-azure-fipsUpgrade linux-image-6.8.0-1059-nvidia-64kUpgrade linux-image-7.0.0-1003-gkeUpgrade linux-image-6.8.0-1058-oracle-64kUpgrade linux-image-aws-5.15Upgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-virtual-7.0Upgrade linux-image-5.15.0-1117-awsUpgrade linux-image-aws-64k-5.15Upgrade linux-image-gcp-6.8Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-azure-fde-6.8Upgrade linux-image-gkeop-6.8Upgrade linux-image-nvidia-tegra-rtUpgrade linux-image-7.0.0-1011-oracleUpgrade linux-image-oem-24.04Upgrade linux-image-generic-lpaeUpgrade linux-image-ibmUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-6.8.0-2050-raspi-realtimeUpgrade linux-image-aws-64kUpgrade linux-image-xilinx-zynqmp-5.15Upgrade linux-image-oracle-64k-7.0Upgrade linux-image-oracle-7.0Upgrade linux-image-realtime-64k-7.0Upgrade linux-image-6.8.0-1059-gkeUpgrade linux-image-lowlatency-6.8Upgrade linux-image-generic-64k-hwe-26.04Upgrade linux-image-gke-64k-hwe-26.04Upgrade linux-image-azure-fips-6.8Upgrade linux-image-7.0.0-1011-gcpUpgrade linux-image-7.0.0-28-generic-64kUpgrade linux-image-aws-fipsUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-lowlatency-64kUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-6.8.0-1030-nvidia-tegraUpgrade linux-image-7.0.0-28-realtime-64kUpgrade linux-image-virtualUpgrade linux-image-realtimeUpgrade linux-image-7.0.0-1014-azureUpgrade linux-image-oem-22.04Upgrade linux-image-intel-iotg-5.15Upgrade linux-image-6.8.0-136-lowlatencyUpgrade linux-image-7.0.0-1010-azureUpgrade linux-image-6.8.0-1061-raspiUpgrade linux-image-7.0.0-28-realtimeUpgrade linux-image-xilinxUpgrade linux-image-5.15.0-1112-nvidia-lowlatencyUpgrade linux-image-6.8.0-1061-awsUpgrade linux-image-fipsUpgrade linux-image-gke-hwe-26.04Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-gcpUpgrade linux-image-gke-5.15Upgrade linux-image-oem-20.04Upgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-aws-64k-6.8Upgrade linux-image-aws-64k-7.0Upgrade linux-image-5.15.0-195-lowlatency-64kUpgrade linux-image-azure-6.8Upgrade linux-image-raspi-7.0Upgrade linux-image-5.15.0-1100-gkeopUpgrade linux-image-5.15.0-1111-ibmUpgrade linux-image-azure-cvmUpgrade linux-image-7.0.0-1015-raspi-realtimeUpgrade linux-image-7.0.0-2016-nvidia-bos-64kUpgrade linux-image-7.0.0-1009-oemUpgrade linux-image-7.0.0-1009-azure-fdeUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-azure-lts-24.04Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-lowlatencyUpgrade linux-image-intel-iot-realtime-5.15Upgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-5.15.0-198-generic-64kUpgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-7.0.0-1008-gcp-64kUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-generic-64k-5.15Upgrade linux-image-aws-fips-6.8Upgrade linux-image-6.8.0-1064-gcpUpgrade linux-image-7.0.0-1008-gcpUpgrade linux-image-oem-26.04Upgrade linux-image-5.15.0-1113-gkeUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-oem-22.04dUpgrade linux-image-oem-22.04bUpgrade linux-image-5.15.0-1122-azure-fdeUpgrade linux-image-gcp-64k-7.0Upgrade linux-image-azure-lts-22.04Upgrade linux-image-oem-22.04cUpgrade linux-image-virtual-hwe-26.04Upgrade linux-image-generic-lpae-5.15Upgrade linux-image-nvidia-tegraUpgrade linux-image-raspi-realtime-7.0Upgrade linux-image-raspi-6.8Upgrade linux-image-nvidia-bosUpgrade linux-image-lowlatency-5.15Upgrade linux-image-gke-64k-6.8Upgrade linux-image-genericUpgrade linux-image-aws-lts-24.04Upgrade linux-image-7.0.0-1011-gcp-64kUpgrade linux-image-6.8.0-1059-nvidiaUpgrade linux-image-5.15.0-1118-gcpUpgrade linux-image-5.15.0-1112-intel-iotgUpgrade linux-image-6.8.0-1059-gke-64kUpgrade linux-image-5.15.0-198-genericUpgrade linux-image-5.15.0-198-fipsUpgrade linux-image-realtime-7.0Upgrade linux-image-nvidia-hwe-26.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-7.0.0-2016-nvidia-bosUpgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-generic-64kUpgrade linux-image-gcp-64k-6.8Upgrade linux-image-azure-7.0Upgrade linux-image-azureUpgrade linux-image-7.0.0-1016-nvidiaUpgrade linux-image-7.0.0-1010-ibmUpgrade linux-image-gke-7.0Upgrade linux-image-7.0.0-1016-nvidia-64kUpgrade linux-image-nvidia-64kUpgrade linux-image-generic-hwe-26.04Upgrade linux-image-6.8.0-136-generic-64kUpgrade linux-image-5.15.0-1112-nvidiaUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-realtime-64k-hwe-26.04Upgrade linux-image-realtime-6.8.1Upgrade linux-image-raspi-realtime-6.8Upgrade linux-image-raspiUpgrade linux-image-nvidia-bos-64k-7.0Upgrade linux-image-nvidia-64k-hwe-26.04Upgrade linux-image-intel-iotgUpgrade linux-image-ibm-5.15Upgrade linux-image-gkeop-5.15Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-aws-6.8Upgrade linux-image-6.8.0-1063-azureUpgrade linux-image-5.15.0-1114-oracleUpgrade linux-image-virtual-6.8Upgrade linux-image-oracle-64kUpgrade linux-image-oracle-6.8Upgrade linux-image-oem-20.04bUpgrade linux-image-nvidia-7.0Upgrade linux-image-nvidia-6.8Upgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-aws-fips-5.15Upgrade linux-image-6.8.0-1062-azure-fdeUpgrade linux-image-realtime-hwe-26.04Upgrade linux-image-realtime-hwe-22.04Upgrade linux-image-realtime-5.15Upgrade linux-image-azure-5.15Upgrade linux-image-aws-7.0Upgrade linux-image-7.0.0-1009-aws-64kUpgrade linux-image-6.8.0-1063-azure-fipsUpgrade linux-image-6.8.0-1061-aws-64kUpgrade linux-image-6.8.0-1046-gkeopUpgrade linux-image-5.15.0-1117-aws-fipsUpgrade linux-image-5.15.0-1116-realtimeUpgrade linux-image-xilinx-6.8Upgrade linux-image-virtual-5.15Upgrade linux-image-oem-26.04aUpgrade linux-image-oem-24.04aUpgrade linux-image-nvidia-64k-7.0Upgrade linux-image-nvidiaUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-gke-64kUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-generic-7.0Upgrade linux-image-gcp-fips-6.8Upgrade linux-image-azure-fdeUpgrade linux-image-7.0.0-1008-oracleUpgrade linux-image-oem-20.04cUpgrade linux-image-gcp-fips-5.15Upgrade linux-image-6.8.0-1061-aws-fipsUpgrade linux-image-6.8.0-136-fipsUpgrade linux-image-oracle-5.15Upgrade linux-image-oracle-64k-6.8Upgrade linux-image-oem-7.0Upgrade linux-image-oem-20.04dUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-laptop-23.10Upgrade linux-image-kvm-5.15Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-kvmUpgrade linux-image-ibm-7.0Upgrade linux-image-azure-fips-5.15Upgrade linux-image-azure-fde-5.15Upgrade linux-image-gke-64k-7.0Upgrade linux-image-gcp-fipsUpgrade linux-image-5.15.0-1123-azure-fipsUpgrade linux-image-5.15.0-1123-azureUpgrade linux-image-6.8.0-136-lowlatency-64kUpgrade linux-image-6.8.0-1058-oracleUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-nvidia-bos-64kUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-oem-24.04cUpgrade linux-image-nvidia-5.15Upgrade linux-image-intelUpgrade linux-image-gke-6.8Upgrade linux-image-generic-64k-7.0Upgrade linux-image-generic-64k-6.8Upgrade linux-image-7.0.0-1015-raspiUpgrade linux-image-6.8.0-1061-ibmUpgrade linux-image-6.8.0-1059-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1030-nvidia-tegra-rtUpgrade linux-image-5.15.0-198-generic-lpaeUpgrade linux-image-nvidia-bos-7.0Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-gcp-64kUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-5.15.0-195-lowlatencyUpgrade linux-image-6.8.0-136-genericUpgrade linux-image-gkeop | Jul 20, 2026 | May 28, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jul 6, 2026 | May 28, 2026 |
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