CVE-2026-23276: net: add xmit recursion limit to tunnel xmit functions
In the Linux kernel, the following vulnerability has been resolved:
net: add xmit recursion limit to tunnel xmit functions
Tunnel xmit functions (iptunnelxmit, ip6tunnelxmit) lack their own recursion limit. When a bond device in broadcast mode has GRE tap interfaces as slaves, and those GRE tunnels route back through the bond, multicast/broadcast traffic triggers infinite recursion between bondxmitbroadcast() and iptunnelxmit()/ip6tnlxmit(), causing kernel stack overflow.
The existing XMITRECURSIONLIMIT (8) in the no-qdisc path is not sufficient because tunnel recursion involves route lookups and full IP output, consuming much more stack per level. Use a lower limit of 4 (IPTUNNELRECURSIONLIMIT) to prevent overflow.
Add recursion detection using devxmitrecursion helpers directly in iptunnelxmit() and ip6tunnelxmit() to cover all IPv4/IPv6 tunnel paths including UDP encapsulated tunnels (VXLAN, Geneve, etc.).
Move devxmitrecursion helpers from net/core/dev.h to public header include/linux/netdevice.h so they can be used by tunnel code.
BUG: KASAN: stack-out-of-bounds in blake2s.constprop.0+0xe7/0x160 Write of size 32 at addr ffff88810033fed0 by task kworker/0:1/11 Workqueue: mld mldifcwork Call Trace: <TASK> buildflowkey.constprop.0 (net/ipv4/route.c:515) iprtupdatepmtu (net/ipv4/route.c:1073) iptunnelxmit (net/ipv4/iptunnelcore.c:84) iptunnelxmit (net/ipv4/iptunnel.c:847) gretapxmit (net/ipv4/ipgre.c:779) devhardstartxmit (net/core/dev.c:3887) schdirectxmit (net/sched/schgeneric.c:347) devqueuexmit (net/core/dev.c:4802) bonddevqueuexmit (drivers/net/bonding/bondmain.c:312) bondxmitbroadcast (drivers/net/bonding/bondmain.c:5279) bondstartxmit (drivers/net/bonding/bondmain.c:5530) devhardstartxmit (net/core/dev.c:3887) devqueuexmit (net/core/dev.c:4841) ipfinishoutput2 (net/ipv4/ipoutput.c:237) ipoutput (net/ipv4/ipoutput.c:438) iptunnelxmit (net/ipv4/iptunnelcore.c:86) gretapxmit (net/ipv4/ipgre.c:779) devhardstartxmit (net/core/dev.c:3887) schdirectxmit (net/sched/schgeneric.c:347) devqueuexmit (net/core/dev.c:4802) bonddevqueuexmit (drivers/net/bonding/bondmain.c:312) bondxmitbroadcast (drivers/net/bonding/bondmain.c:5279) bondstartxmit (drivers/net/bonding/bondmain.c:5530) devhardstartxmit (net/core/dev.c:3887) devqueuexmit (net/core/dev.c:4841) ipfinishoutput2 (net/ipv4/ipoutput.c:237) ipoutput (net/ipv4/ipoutput.c:438) iptunnelxmit (net/ipv4/iptunnelcore.c:86) iptunnelxmit (net/ipv4/iptunnel.c:847) gretapxmit (net/ipv4/ipgre.c:779) devhardstartxmit (net/core/dev.c:3887) schdirectxmit (net/sched/schgeneric.c:347) devqueuexmit (net/core/dev.c:4802) bonddevqueuexmit (drivers/net/bonding/bondmain.c:312) bondxmitbroadcast (drivers/net/bonding/bondmain.c:5279) bondstartxmit (drivers/net/bonding/bondmain.c:5530) devhardstartxmit (net/core/dev.c:3887) devqueuexmit (net/core/dev.c:4841) mldsendpack mldifcwork processonework workerthread </TASK>
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
debian/linuxto a version that resolves this vulnerability.Fixed in 6.12.107-1Fixed in 6.12.115-2Fixed in 7.2.12-1Fixed in 7.2.15-1 - Upgrade
Upgrade
linux/Kernelto a version that resolves this vulnerability.Fixed in 6.6.160 - Upgrade
Upgrade
linux/Kernelto a version that resolves this vulnerability.Fixed in 6.12.78 - Upgrade
Upgrade
linux/Kernelto a version that resolves this vulnerability.Fixed in 6.18.19 - Upgrade
Upgrade
linux/Kernelto a version that resolves this vulnerability.Fixed in 6.19.9 - Upgrade
Upgrade
debian/linuxto a version that resolves this vulnerability.Fixed in 6.12.85-1 - Upgrade
Upgrade
debian/linuxto a version that resolves this vulnerability.Fixed in 6.19.10-1 - Upgrade
Upgrade
ubuntu/linux-aws-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1061.64~22.04.1 - Upgrade
Upgrade
ubuntu/linux-azure-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1063.71~22.04.1 - Upgrade
Upgrade
ubuntu/linux-azure-fde-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1062.69~22.04.1 - Upgrade
Upgrade
ubuntu/linux-gcp-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1064.72~22.04.1 - Upgrade
Upgrade
ubuntu/linux-hwe-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-136.136~22.04.1 - Upgrade
Upgrade
ubuntu/linux-ibm-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1061.62~22.04.1 - Upgrade
Upgrade
ubuntu/linux-lowlatency-hwe-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-136.136.2~22.04.1 - Upgrade
Upgrade
ubuntu/linux-nvidia-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1059.62~22.04.1 - Upgrade
Upgrade
ubuntu/linux-oracle-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1058.61~22.04.1 - Upgrade
Upgrade
ubuntu/linux-riscv-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-136.136~22.04.3 - Upgrade
Upgrade
ubuntu/linux-realtime-6.8to a version that resolves this vulnerability.Fixed in 6.8.1-1056.57~22.04.2 - Upgrade
Upgrade
ubuntu/linuxto a version that resolves this vulnerability.Fixed in 6.8.0-136.136 - Upgrade
Upgrade
ubuntu/linux-awsto a version that resolves this vulnerability.Fixed in 6.8.0-1061.64 - Upgrade
Upgrade
ubuntu/linux-azureto a version that resolves this vulnerability.Fixed in 6.8.0-1063.71 - Upgrade
Upgrade
ubuntu/linux-azure-fdeto a version that resolves this vulnerability.Fixed in 6.8.0-1062.69 - Upgrade
Upgrade
ubuntu/linux-gcpto a version that resolves this vulnerability.Fixed in 6.8.0-1064.72 - Upgrade
Upgrade
ubuntu/linux-gketo a version that resolves this vulnerability.Fixed in 6.8.0-1059.67 - Upgrade
Upgrade
ubuntu/linux-gkeopto a version that resolves this vulnerability.Fixed in 6.8.0-1046.50 - Upgrade
Upgrade
ubuntu/linux-ibmto a version that resolves this vulnerability.Fixed in 6.8.0-1061.62 - Upgrade
Upgrade
ubuntu/linux-lowlatencyto a version that resolves this vulnerability.Fixed in 6.8.0-136.136.2 - Upgrade
Upgrade
ubuntu/linux-nvidiato a version that resolves this vulnerability.Fixed in 6.8.0-1059.62 - Upgrade
Upgrade
ubuntu/linux-nvidia-lowlatencyto a version that resolves this vulnerability.Fixed in 6.8.0-1059.62.1 - Upgrade
Upgrade
ubuntu/linux-nvidia-tegrato a version that resolves this vulnerability.Fixed in 6.8.0-1030.31 - Upgrade
Upgrade
ubuntu/linux-oracleto a version that resolves this vulnerability.Fixed in 6.8.0-1058.61 - Upgrade
Upgrade
ubuntu/linux-raspito a version that resolves this vulnerability.Fixed in 6.8.0-1061.65 - Upgrade
Upgrade
ubuntu/linux-vmwareto a version that resolves this vulnerability.Fixed in 6.8.0-1008.8 - Upgrade
Upgrade
ubuntu/linux-xilinxto a version that resolves this vulnerability.Fixed in 6.8.0-1033.34 - Upgrade
Upgrade
ubuntu/linux-bluefieldto a version that resolves this vulnerability.Fixed in 6.8.0-1028.33 - Upgrade
Upgrade
ubuntu/linux-raspi-realtimeto a version that resolves this vulnerability.Fixed in 6.8.0-2050.52 - Upgrade
Upgrade
ubuntu/linux-realtimeto a version that resolves this vulnerability.Fixed in 6.8.1-1056.57 - Upgrade
Upgrade
ubuntu/linux-aws-fipsto a version that resolves this vulnerability.Fixed in 6.8.0-1061.64+fips1 - Upgrade
Upgrade
ubuntu/linux-azure-fipsto a version that resolves this vulnerability.Fixed in 6.8.0-1063.71+fips2 - Upgrade
Upgrade
ubuntu/linux-fipsto a version that resolves this vulnerability.Fixed in 6.8.0-136.136+fips2 - Upgrade
Upgrade
ubuntu/linux-gcp-fipsto a version that resolves this vulnerability.Fixed in 6.8.0-1064.72+fips1 - Configuration
Add recursion detection using the dev_xmit_recursion helpers directly in iptunnel_xmit() and ip6tunnel_xmit(), using IP_TUNNEL_RECURSION_LIMIT set to 4; make the helpers available from include/linux/netdevice.h so all IPv4/IPv6 tunnel paths, including UDP-encapsulated tunnels such as VXLAN and Geneve, are covered.
Linux kernel tunnel transmit functions IP_TUNNEL_RECURSION_LIMIT = 4
Event History
Frequently Asked Questions
What is the severity of CVE-2026-23276?
CVE-2026-23276 has been assigned a moderate severity rating due to potential denial-of-service risks.
How do I fix CVE-2026-23276?
To fix CVE-2026-23276, update your Linux kernel to the latest stable version where the vulnerability has been patched.
What systems are affected by CVE-2026-23276?
CVE-2026-23276 affects various versions of the Linux kernel that utilize the tunnel xmit functions without recursion limits.
Can CVE-2026-23276 lead to a denial-of-service attack?
Yes, CVE-2026-23276 can potentially be exploited to launch denial-of-service attacks on affected systems.
Is there a workaround for CVE-2026-23276?
Currently, the recommended approach for CVE-2026-23276 is to apply the kernel update, as there is no known reliable workaround.