CVE-2026-74478: um: vector: fix use-after-free in vector_mmsg_rx()
In the Linux kernel, the following vulnerability has been resolved:
um: vector: fix use-after-free in vector_mmsg_rx()
When vector_mmsg_rx() discards a packet whose overlay header fails
verify_header(), it frees the skb and continues the loop:
if (header_check < 0) {
dev_kfree_skb_irq(skb);
vp->estats.rx_encaps_errors++;
continue;
}
The normal and short-packet paths fall through to the bottom of the
loop body, which clears the consumed slot and advances the cursors:
(*skbuff_vector) = NULL;
mmsg_vector++;
skbuff_vector++;
The verify_header() < 0 path skips that via continue, so the freed skb
is left in skbuff_vector[] and the cursors do not advance. The next
iteration reads the same slot, gets the freed skb, and frees it again,
producing a refcount underflow / use-after-free in the RX path.
Discard the slot the same way the other paths do before continuing.
Only transports whose verify_header() can return negative are affected:
GRE and L2TPv3 do so on a cookie/session-id mismatch (raw/tap do not),
so any peer on such a transport can trigger it without authentication.
Security readout for executives and security teams
Plain-English summary
A remote, unauthenticated peer may trigger a kernel memory-safety failure when Linux's um vector receive path uses GRE or L2TPv3. The flaw can cause repeated freeing of the same network buffer, potentially crashing or corrupting the affected system. Raw and tap transports are not affected according to the record.
Executive priority
Prioritize immediate investigation for exposed GRE or L2TPv3 um vector deployments, followed by expedited patching or isolation. Other Linux systems are not shown to be exposed merely because they run Linux. Treat confirmed reachable deployments as critical, while avoiding assumptions that the CVSS impact guarantees code execution.
Technical view
When GRE or L2TPv3 header verification returns a negative result, vector_mmsg_rx() frees the skb but skips clearing its slot and advancing both cursors. The next loop iteration reuses and frees the stale pointer, causing refcount underflow and use-after-free in the receive path.
Likely exposure
Exposure appears limited to systems using the Linux um vector receive path with GRE or L2TPv3 and reachable peers. Raw and tap configurations are unaffected. The supplied version information does not provide clear branch-specific vulnerable boundaries, so version strings alone should not determine safety.
Exploitation context
The CVSS vector describes network-reachable, low-complexity, unauthenticated exploitation requiring no user interaction. A peer can trigger the bug through a GRE cookie or L2TPv3 session-ID mismatch. The bundle marks KEV false, and no cited source establishes active exploitation, public weaponization, or reliable code execution.
Researcher notes
The defective continue path differs from normal and short-packet handling because it bypasses slot nulling and cursor advancement. Reachability depends on verify_header() returning negative, which the record limits to GRE and L2TPv3 mismatch cases. The supplied affected-version entries are ambiguous; validate remediation through branch-specific commits or documented backports.
Mitigation direction
Update each affected kernel branch to a release containing its cited Linux stable fix.
Disable unused GRE or L2TPv3 vector transports until updates are applied.
Restrict untrusted peers from reaching required GRE or L2TPv3 transport endpoints.
Consult Linux or distribution guidance to confirm the correct fixed build for each branch.
Validation and detection
Inventory running kernels and identify systems using the um vector network receive path.
Confirm whether GRE or L2TPv3 vector transports are configured; exclude raw-only and tap-only deployments.
Map each kernel build to its applicable cited stable fix or distribution backport.
After updating, verify the deployed kernel includes the slot-clearing and cursor-advancement correction.
Review kernel diagnostics for use-after-free, refcount underflow, or receive-path crashes.
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-74478 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.
1CVSS vectors
3Timeline events
0ADP providers
9Source links
CVSS vector scores
1 official score
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.