CVE-2026-74496: fou: Fix use-after-free in fou_create()
In the Linux kernel, the following vulnerability has been resolved:
fou: Fix use-after-free in foucreate()
foucreate() publishes struct fou through skuserdata before adding the new FOU port to the per-netns list. If fouaddtoportlist() fails, the error path frees fou while it is still reachable through skuserdata. A concurrent receive can then dereference the freed object in foufromsock().
This ordering issue was previously noted in the linked discussion.
The failure is reachable when local port 0 is requested. Each socket binds to a different ephemeral port, but foucfgcmp() compares the requested port 0 and reports -EALREADY once an entry already exists.
Release the tunnel socket before freeing fou so skuserdata is cleared first, and defer reclamation with kfreercu() to protect concurrent RCU readers. This matches the lifetime handling in fourelease().
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2026-74496?
CVE-2026-74496 has a risk score of 40, indicating a moderate severity level.
What type of vulnerability is CVE-2026-74496?
CVE-2026-74496 is categorized as a 'Use After Free' vulnerability in the Linux kernel.
How do I fix CVE-2026-74496?
To fix CVE-2026-74496, update your Linux kernel to the latest version where the vulnerability has been patched.
Which software is affected by CVE-2026-74496?
CVE-2026-74496 affects the Linux kernel and its associated components.
What does CVE-2026-74496 impact?
CVE-2026-74496 could potentially allow an attacker to exploit memory corruption in the kernel, leading to instability or unauthorized access.