In the Linux kernel, the following vulnerability has been resolved: ixgbevf: fix use-after-free in VEPA multicast source pruning… (CVE-2026-64113)
In the Linux kernel, the following vulnerability has been resolved: ixgbevf: fix use-after-free in VEPA multicast source pruning ixgbevf_clean_rx_irq() prunes frames whose source MAC matches the VF's own address (VEPA multicast workaround) by freeing the skb and continuing to the next descriptor: dev_kfree_skb_irq(skb); continue; The skb pointer is declared outside the while loop and persists across iterations. Because the continue skips the "skb = NULL" reset at the bottom of the loop, the next iteration enters the "else if (skb)" path and calls ixgbevf_add_rx_frag() on the freed skb, dereferencing skb_shinfo(skb)->nr_frags - a use-after-free in NAPI softirq context. The sibling driver iavf already handles this correctly by nulling the pointer before continuing. Apply the same pattern here. I do not have ixgbevf hardware; the bug was found by static analysis (scan_drop_continue_loops.py + semgrep drop_continue_in_loop, multi-tool corroboration with the highest score in the scan). The UAF was confirmed under KASAN by loading a test module that reproduces the exact code pattern (alloc skb, kfree_skb, then read skb_shinfo(skb)->nr_frags): BUG: KASAN: slab-use-after-free in ixgbevf_uaf_test_init+0x100/0x1000 Read of size 8 at addr 000000006163ae78 by task insmod/30 freed 208-byte region [000000006163adc0, 000000006163ae90) QEMU emulates igb (82576) but not ixgbe (82599), and the igbvf VF driver does not include the VEPA source pruning path, so a full end-to-end reproduction with emulated hardware was not possible.
AI Analysis
Technical Summary
The Linux kernel's ixgbevf driver contained a use-after-free vulnerability in the VEPA multicast source pruning code path within the ixgbevf_clean_rx_irq() function. Specifically, when pruning frames whose source MAC matches the VF's own address, the skb is freed and the loop continues without resetting the skb pointer to NULL. This causes the next iteration to operate on a freed skb, leading to a use-after-free condition when ixgbevf_add_rx_frag() accesses skb_shinfo(skb)->nr_frags. The vulnerability was discovered through static analysis tools and confirmed by KASAN testing. The fix involved nullifying the skb pointer before continuing the loop, preventing use-after-free access.
Potential Impact
The vulnerability allows a use-after-free condition in kernel space within the ixgbevf driver, which could lead to kernel memory corruption or instability when processing network frames under specific conditions. No known exploits in the wild have been reported. The impact is limited to systems using the affected ixgbevf driver with VEPA multicast source pruning enabled.
Mitigation Recommendations
A fix for this use-after-free vulnerability has been implemented in the Linux kernel ixgbevf driver by nullifying the skb pointer before continuing the loop. Users should update to the Linux kernel version that includes this fix once it is released. Patch status is not yet confirmed from the vendor advisory; check the official Linux kernel release notes or vendor advisories for the exact fixed version and apply updates accordingly.
In the Linux kernel, the following vulnerability has been resolved: ixgbevf: fix use-after-free in VEPA multicast source pruning… (CVE-2026-64113)
Description
In the Linux kernel, the following vulnerability has been resolved: ixgbevf: fix use-after-free in VEPA multicast source pruning ixgbevf_clean_rx_irq() prunes frames whose source MAC matches the VF's own address (VEPA multicast workaround) by freeing the skb and continuing to the next descriptor: dev_kfree_skb_irq(skb); continue; The skb pointer is declared outside the while loop and persists across iterations. Because the continue skips the "skb = NULL" reset at the bottom of the loop, the next iteration enters the "else if (skb)" path and calls ixgbevf_add_rx_frag() on the freed skb, dereferencing skb_shinfo(skb)->nr_frags - a use-after-free in NAPI softirq context. The sibling driver iavf already handles this correctly by nulling the pointer before continuing. Apply the same pattern here. I do not have ixgbevf hardware; the bug was found by static analysis (scan_drop_continue_loops.py + semgrep drop_continue_in_loop, multi-tool corroboration with the highest score in the scan). The UAF was confirmed under KASAN by loading a test module that reproduces the exact code pattern (alloc skb, kfree_skb, then read skb_shinfo(skb)->nr_frags): BUG: KASAN: slab-use-after-free in ixgbevf_uaf_test_init+0x100/0x1000 Read of size 8 at addr 000000006163ae78 by task insmod/30 freed 208-byte region [000000006163adc0, 000000006163ae90) QEMU emulates igb (82576) but not ixgbe (82599), and the igbvf VF driver does not include the VEPA source pruning path, so a full end-to-end reproduction with emulated hardware was not possible.
CVSS v3.1
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The Linux kernel's ixgbevf driver contained a use-after-free vulnerability in the VEPA multicast source pruning code path within the ixgbevf_clean_rx_irq() function. Specifically, when pruning frames whose source MAC matches the VF's own address, the skb is freed and the loop continues without resetting the skb pointer to NULL. This causes the next iteration to operate on a freed skb, leading to a use-after-free condition when ixgbevf_add_rx_frag() accesses skb_shinfo(skb)->nr_frags. The vulnerability was discovered through static analysis tools and confirmed by KASAN testing. The fix involved nullifying the skb pointer before continuing the loop, preventing use-after-free access.
Potential Impact
The vulnerability allows a use-after-free condition in kernel space within the ixgbevf driver, which could lead to kernel memory corruption or instability when processing network frames under specific conditions. No known exploits in the wild have been reported. The impact is limited to systems using the affected ixgbevf driver with VEPA multicast source pruning enabled.
Mitigation Recommendations
A fix for this use-after-free vulnerability has been implemented in the Linux kernel ixgbevf driver by nullifying the skb pointer before continuing the loop. Users should update to the Linux kernel version that includes this fix once it is released. Patch status is not yet confirmed from the vendor advisory; check the official Linux kernel release notes or vendor advisories for the exact fixed version and apply updates accordingly.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- GHSA-gwhj-73cj-phr2
- Osv Schema Version
- 1.4.0
- Aliases
- ["CVE-2026-64113"]
- Ecosystems
- []
- Database Specific Severity
- null
- Cvss Version
- null
Threat ID: 6a5d27a82a4a8d598912b58c
Added to database: 07/19/2026, 19:38:16 UTC
Last enriched: 07/19/2026, 19:48:13 UTC
Last updated: 07/20/2026, 19:41:21 UTC
Views: 11
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.