In the Linux kernel, the following vulnerability has been resolved:
udp: do not accept non-tunnel GSO skbs landing in a tunnel
When rx-udp-gro-forwarding is enabled UDP packets might be GROed when being forwarded. If such packets might land in a tunnel this can cause various issues and udp_gro_receive makes sure this isn't the case by looking for a matching socket. This is performed in udp4/6_gro_lookup_skb but only in the current netns. This is an issue with tunneled packets when the endpoint is in another netns. In such cases the packets will be GROed at the UDP level, which leads to various issues later on. The same thing can happen with rx-gro-list.
We saw this with geneve packets being GROed at the UDP level. In such case gso_size is set; later the packet goes through the geneve rx path, the geneve header is pulled, the offset are adjusted and frag_list skbs are not adjusted with regard to geneve. When those skbs hit skb_fragment, it will misbehave. Different outcomes are possible depending on what the GROed skbs look like; from corrupted packets to kernel crashes.
One example is a BUG_ON[1] triggered in skb_segment while processing the frag_list. Because gso_size is wrong (geneve header was pulled) skb_segment thinks there is "geneve header size" of data in frag_list, although it's in fact the next packet. The BUG_ON itself has nothing to do with the issue. This is only one of the potential issues.
Looking up for a matching socket in udp_gro_receive is fragile: the lookup could be extended to all netns (not speaking about performances) but nothing prevents those packets from being modified in between and we could still not find a matching socket. It's OK to keep the current logic there as it should cover most cases but we also need to make sure we handle tunnel packets being GROed too early.
This is done by extending the checks in udp_unexpected_gso: GSO packets lacking the SKB_GSO_UDP_TUNNEL/_CSUM bits and landing in a tunnel must be segmented.
[1] kernel BUG at net/core/skbuff.c:4408! RIP: 0010:skb_segment+0xd2a/0xf70 __udp_gso_segment+0xaa/0x560
CVSS Details
- CVSS 3.1 Base Score: 9.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-docUpgrade bpftoolUpgrade kernel-toolsUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-modulesUpgrade kernel-rt-coreUpgrade kernel-rt-modulesUpgrade kernel-rt-develUpgrade kernel-develUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-debugUpgrade perfUpgrade kernel-debug-develUpgrade kernel-rt-kvmUpgrade kernel-tools-libs-develUpgrade kernel-debugUpgrade kernel-debug-coreUpgrade python3-perfUpgrade kernelUpgrade kernel-rt-debug-develUpgrade kernel-zfcpdumpUpgrade kernel-debug-modulesUpgrade kernel-rt-debug-kvmUpgrade kernel-zfcpdump-develUpgrade kernel-debug-modules-extraUpgrade kernel-headersUpgrade kernel-rt-modules-extraUpgrade kernel-coreUpgrade kernel-tools-libsUpgrade kernel-cross-headersUpgrade kernel-zfcpdump-coreUpgrade kernel-abi-stablelistsUpgrade kernel-zfcpdump-modulesUpgrade kernel-rt-debug-modulesUpgrade kernel-modules-extraUpgrade kernel-rt-debug-coreUpgrade kernel-rt | Sep 26, 2024 | May 19, 2024 |
| Amazon Linux Ami 2 | — | Upgrade kernel-livepatch-5.15.156-102.160Upgrade bpftool-debuginfoUpgrade python-perfUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-toolsUpgrade bpftoolUpgrade perf-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-headersUpgrade kernel-debuginfoUpgrade kernel-tools-develUpgrade kernel-develUpgrade perfUpgrade kernelUpgrade python-perf-debuginfoUpgrade kernel-livepatch-5.10.215-203.850Upgrade kernel-tools-debuginfo | Apr 10, 2025 | May 19, 2024 |
| Amazon_linux_2023 | — | Upgrade kernel-debuginfo-common-aarch64Upgrade kernel-libbpfUpgrade kernel-develUpgrade kernel-modules-extraUpgrade kernel-livepatch-6.1.87-99.174Upgrade perfUpgrade bpftool-debuginfoUpgrade perf-debuginfoUpgrade kernel-toolsUpgrade kernel-libbpf-staticUpgrade kernel-libbpf-develUpgrade kernel-modules-extra-commonUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-tools-develUpgrade kernel-debuginfoUpgrade kernel-tools-debuginfoUpgrade python3-perfUpgrade bpftoolUpgrade python3-perf-debuginfoUpgrade kernel-headersUpgrade kernel | Mar 27, 2025 | May 19, 2024 |
| Debian | — | Upgrade linux | Jun 27, 2024 | May 19, 2024 |
| Huawei Euleros 2_0_sp11 | — | Upgrade python3-perfUpgrade kernelUpgrade kernel-toolsUpgrade kernel-abi-stablelistsUpgrade bpftoolUpgrade kernel-tools-libs | Oct 9, 2024 | May 19, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernel-toolsUpgrade python3-perfUpgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade kernelUpgrade bpftool | Nov 5, 2024 | May 19, 2024 |
| Oracle_linux | — | Upgrade kernel | Oct 16, 2024 | May 19, 2024 |
| Redhat_linux | — | Upgrade kernel-rtNo solution existsUpgrade kernel | Sep 25, 2024 | May 19, 2024 |
| Rocky_linux | — | Upgrade kernel-tools-libs-develUpgrade kernel-headersUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-debug-kvmUpgrade perf-debuginfoUpgrade kernel-toolsUpgrade kernel-rt-debuginfoUpgrade perfUpgrade kernel-rtUpgrade kernel-rt-debug-develUpgrade kernel-debug-modules-extraUpgrade kernel-debuginfo-common-x86_64Upgrade kernelUpgrade kernel-debug-debuginfoUpgrade bpftoolUpgrade kernel-rt-debuginfo-common-x86_64Upgrade kernel-debuginfoUpgrade kernel-debug-modulesUpgrade kernel-coreUpgrade python3-perf-debuginfoUpgrade kernel-tools-debuginfoUpgrade kernel-rt-develUpgrade kernel-modules-extraUpgrade kernel-rt-coreUpgrade kernel-debug-develUpgrade kernel-rt-modulesUpgrade kernel-rt-kvmUpgrade kernel-rt-debug-debuginfoUpgrade kernel-rt-debug-coreUpgrade kernel-debugUpgrade bpftool-debuginfoUpgrade kernel-tools-libsUpgrade kernel-modulesUpgrade kernel-debug-coreUpgrade kernel-rt-debug-modulesUpgrade kernel-rt-debugUpgrade kernel-develUpgrade kernel-cross-headersUpgrade python3-perfUpgrade kernel-rt-modules-extra | Oct 2, 2024 | May 19, 2024 |
| Suse | — | Upgrade ocfs2-kmp-rtUpgrade kernel-default-vdsoUpgrade kernel-devel-azureUpgrade dtb-caviumUpgrade cluster-md-kmp-azureUpgrade ocfs2-kmp-defaultUpgrade kernel-debug-livepatch-develUpgrade kernel-default-base-rebuildUpgrade kernel-obs-buildUpgrade kernel-develUpgrade kernel-default-optionalUpgrade dtb-rockchipUpgrade kernel-rt-vdsoUpgrade kernel-default-extraUpgrade dtb-mediatekUpgrade dlm-kmp-64kbUpgrade dtb-apmUpgrade kernel-obs-qaUpgrade kernel-azure-optionalUpgrade kernel-macrosUpgrade dtb-amlogicUpgrade kernel-sourceUpgrade kernel-syms-azureUpgrade gfs2-kmp-64kbUpgrade kernel-azure-develUpgrade gfs2-kmp-azureUpgrade kernel-kvmsmallUpgrade kselftests-kmp-64kbUpgrade dtb-exynosUpgrade dtb-lgUpgrade kernel-kvmsmall-develUpgrade dtb-alteraUpgrade kernel-64kbUpgrade cluster-md-kmp-rtUpgrade kernel-rt-livepatchUpgrade kernel-azure-livepatch-develUpgrade kernel-rt_debug-develUpgrade kernel-rtUpgrade kernel-rt-extraUpgrade kernel-rt-develUpgrade dtb-qcomUpgrade kernel-source-azureUpgrade reiserfs-kmp-azureUpgrade kernel-devel-rtUpgrade kernel-zfcpdumpUpgrade dtb-armUpgrade dtb-xilinxUpgrade gfs2-kmp-rtUpgrade kernel-64kb-livepatch-develUpgrade kernel-default-develUpgrade dtb-sprdUpgrade dtb-nvidiaUpgrade cluster-md-kmp-defaultUpgrade kernel-syms-rtUpgrade kernel-kvmsmall-vdsoUpgrade kernel-docsUpgrade kernel-debugUpgrade kernel-debug-develUpgrade dtb-hisiliconUpgrade dtb-amazonUpgrade cluster-md-kmp-64kbUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-docs-htmlUpgrade dtb-freescaleUpgrade kernel-rt-optionalUpgrade kernel-64kb-optionalUpgrade dtb-broadcomUpgrade kselftests-kmp-azureUpgrade kernel-source-rtUpgrade kernel-symsUpgrade kernel-default-livepatch-develUpgrade kernel-debug-vdsoUpgrade dtb-allwinnerUpgrade kernel-default-livepatchUpgrade kernel-azure-extraUpgrade kernel-defaultUpgrade dlm-kmp-defaultUpgrade dtb-socionextUpgrade ocfs2-kmp-64kbUpgrade reiserfs-kmp-64kbUpgrade dtb-appleUpgrade reiserfs-kmp-rtUpgrade dlm-kmp-rtUpgrade kselftests-kmp-defaultUpgrade kernel-rt_debug-vdsoUpgrade kernel-azure-vdsoUpgrade dtb-marvellUpgrade kernel-default-baseUpgrade kernel-kvmsmall-livepatch-develUpgrade gfs2-kmp-defaultUpgrade kselftests-kmp-rtUpgrade kernel-64kb-develUpgrade dlm-kmp-azureUpgrade ocfs2-kmp-azureUpgrade dtb-amdUpgrade reiserfs-kmp-defaultUpgrade kernel-source-vanillaUpgrade kernel-rt_debugUpgrade kernel-azureUpgrade kernel-64kb-extraUpgrade dtb-renesasUpgrade kernel-rt-livepatch-devel | Jul 10, 2024 | May 19, 2024 |
| Ubuntu | — | Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-oracleUpgrade linux-image-6.8.0-1006-gkeUpgrade linux-image-5.15.0-1060-nvidia-lowlatencyUpgrade linux-image-virtualUpgrade linux-image-gcpUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-gkeUpgrade linux-image-5.15.0-1058-ibmUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-raspi-nolpaeUpgrade linux-image-6.8.0-38-generic-64kUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-6.8.0-1011-awsUpgrade linux-image-6.8.0-1010-azure-fdeUpgrade linux-image-5.15.0-1048-gkeopUpgrade linux-image-6.8.0-1007-raspiUpgrade linux-image-6.8.0-1008-oracleUpgrade linux-image-6.8.0-1008-ibmUpgrade linux-image-oem-20.04Upgrade linux-image-generic-lpaeUpgrade linux-image-6.8.0-38-lowlatency-64kUpgrade linux-image-azure-cvmUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-6.8.0-1010-azureUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-5.15.0-116-generic-64kUpgrade linux-image-gke-5.15Upgrade linux-image-awsUpgrade linux-image-6.8.0-1007-intelUpgrade linux-image-5.15.0-1035-xilinx-zynqmpUpgrade linux-image-5.15.0-1062-gkeUpgrade linux-image-6.8.0-38-lowlatencyUpgrade linux-image-oem-24.04Upgrade linux-image-kvmUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-5.15.0-1068-azureUpgrade linux-image-5.15.0-116-genericUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-6.8.0-1008-oracle-64kUpgrade linux-image-aws-lts-22.04Upgrade linux-image-6.8.0-1009-nvidia-64kUpgrade linux-image-oem-24.04aUpgrade linux-image-5.15.0-1058-raspiUpgrade linux-image-5.15.0-1064-gcpUpgrade linux-image-intel-iotgUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-oracle-64kUpgrade linux-image-5.15.0-1060-nvidiaUpgrade linux-image-5.15.0-1068-azure-fdeUpgrade linux-image-nvidia-64kUpgrade linux-image-azure-fdeUpgrade linux-image-azureUpgrade linux-image-genericUpgrade linux-image-ibmUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-generic-64kUpgrade linux-image-lowlatency-64kUpgrade linux-image-gkeop-5.15Upgrade linux-image-virtual-hwe-20.04Upgrade linux-image-5.15.0-1060-intel-iotgUpgrade linux-image-6.8.0-38-genericUpgrade linux-image-ibm-classicUpgrade linux-image-raspiUpgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-1008-oemUpgrade linux-image-nvidiaUpgrade linux-image-oem-20.04bUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-azure-lts-22.04Upgrade linux-image-5.15.0-1065-gcpUpgrade linux-image-5.15.0-1062-kvmUpgrade linux-image-5.15.0-1063-oracleUpgrade linux-image-5.15.0-116-generic-lpaeUpgrade linux-image-6.8.0-1010-gcpUpgrade linux-image-intelUpgrade linux-image-5.15.0-116-lowlatency-64kUpgrade linux-image-5.15.0-116-lowlatencyUpgrade linux-image-oem-20.04cUpgrade linux-image-6.8.0-1009-nvidiaUpgrade linux-image-oem-20.04dUpgrade linux-image-5.15.0-1065-awsUpgrade linux-image-gkeop | Jul 12, 2024 | May 19, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | May 19, 2024 |
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