CVE-2026-23011: ipv4: ip_gre: make ipgre_header() robust
In the Linux kernel, the following vulnerability has been resolved:
ipv4: ip_gre: make ipgre_header() robust
Analog to commit db5b4e39c4e6 ("ip6_gre: make ip6gre_header() robust")
Over the years, syzbot found many ways to crash the kernel
in ipgre_header() [1].
This involves team or bonding drivers ability to dynamically
change their dev->needed_headroom and/or dev->hard_header_len
In this particular crash mld_newpack() allocated an skb
with a too small reserve/headroom, and by the time mld_sendpack()
was called, syzbot managed to attach an ipgre device.
[1]
skbuff: skb_under_panic: text:ffffffff89ea3cb7 len:2030915468 put:2030915372 head:ffff888058b43000 data:ffff887fdfa6e194 tail:0x120 end:0x6c0 dev:team0
kernel BUG at net/core/skbuff.c:213 !
Oops: invalid opcode: 0000 [#1] SMP KASAN PTI
CPU: 1 UID: 0 PID: 1322 Comm: kworker/1:9 Not tainted syzkaller #0 PREEMPT(full)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025
Workqueue: mld mld_ifc_work
RIP: 0010:skb_panic+0x157/0x160 net/core/skbuff.c:213
Call Trace:
<TASK>
skb_under_panic net/core/skbuff.c:223 [inline]
skb_push+0xc3/0xe0 net/core/skbuff.c:2641
ipgre_header+0x67/0x290 net/ipv4/ip_gre.c:897
dev_hard_header include/linux/netdevice.h:3436 [inline]
neigh_connected_output+0x286/0x460 net/core/neighbour.c:1618
NF_HOOK_COND include/linux/netfilter.h:307 [inline]
ip6_output+0x340/0x550 net/ipv6/ip6_output.c:247
NF_HOOK+0x9e/0x380 include/linux/netfilter.h:318
mld_sendpack+0x8d4/0xe60 net/ipv6/mcast.c:1855
mld_send_cr net/ipv6/mcast.c:2154 [inline]
mld_ifc_work+0x83e/0xd60 net/ipv6/mcast.c:2693
process_one_work kernel/workqueue.c:3257 [inline]
process_scheduled_works+0xad1/0x1770 kernel/workqueue.c:3340
worker_thread+0x8a0/0xda0 kernel/workqueue.c:3421
kthread+0x711/0x8a0 kernel/kthread.c:463
ret_from_fork+0x510/0xa50 arch/x86/kernel/process.c:158
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:246
Security readout for executives and security teams
Plain-English summary
CVE-2026-23011 is a Linux kernel crash bug in GRE tunneling header handling. The public record describes syzbot-triggered kernel BUG crashes when network device headroom or header length changes dynamically. Business impact is mainly availability risk on exposed Linux systems, but the record does not provide CVSS, confirmed exploitation, or product-specific impact details.
Executive priority
Monitor and patch through normal kernel maintenance unless GRE plus team or bonding is used in production. Raise priority where a kernel crash would affect critical network services or appliances. No source confirms active exploitation or severity scoring.
Technical view
The issue is in ipv4 ip_gre ipgre_header(). A too-small skb reserve/headroom can reach skb_push(), causing skb_under_panic and a kernel BUG. The described crash involves MLD packet processing, team or bonding drivers changing needed_headroom or hard_header_len, and attachment of an ipgre device before send.
Likely exposure
Likely exposure is Linux systems using or able to load GRE tunneling with team or bonding networking. The source lists Linux kernel versions and stable commits, but version boundaries are not fully explained in the bundle. Embedded Linux products may need vendor confirmation.
Exploitation context
The evidence shows syzbot crash discovery and kernel fix references. The bundle says KEV is false and provides no cited evidence of active exploitation. Treat this as a potential denial-of-service condition until vendor advisories or distribution notices clarify reachability and prerequisites.
Researcher notes
Key uncertainty is exploitability outside syzbot conditions. The record describes a robustness fix analogous to an earlier ip6_gre change and a crash path through skb_push(). Avoid assuming remote reachability without testing vendor kernels and exact network prerequisites.
Mitigation direction
Check your Linux distribution or vendor advisory for fixed kernel packages.
Prioritize kernels using GRE with team or bonding networking.
Apply the relevant stable kernel update when available for your branch.
If patching is delayed, review whether GRE, team, or bonding are required.
Track downstream vendor advisories for embedded Linux products.
Validation and detection
Inventory kernel versions and enabled GRE, team, and bonding modules.
Compare running kernels with vendor-fixed package versions or listed stable commits.
Review network configurations for ip_gre devices with team or bonding interfaces.
Check logs for kernel BUG, skb_under_panic, or ipgre_header crashes.
Confirm vendor advisories for any appliance or embedded Linux exposure.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2026-23011 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.