CVE-2026-23254
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
net: gro: fix outer network offset
The udp GRO complete stage assumes that all the packets inserted the RX
have the encapsulation flag zeroed. Such assumption is not true, as a
few H/W NICs can set such flag when H/W offloading the checksum for
an UDP encapsulated traffic, the tun driver can inject GSO packets with
UDP encapsulation and the problematic layout can also be created via
a veth based setup.
Due to the above, in the problematic scenarios, udp4_gro_complete() uses the wrong network offset (inner instead of outer) to compute the outer UDP header pseudo checksum, leading to csum validation errors later on in packet processing.
Address the issue always clearing the encapsulation flag at GRO completion time. Such flag will be set again as needed for encapsulated packets by udp_gro_complete().
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | af276a5ac8e938c8b058e3e124073cc1e322d98b < 9d40a85138568696387ef04cd004c64612a70874 | affected |
| Linux | Linux | 5ef31ea5d053a8f493a772ebad3f3ce82c35d845 < b83557bc6f560433fe5d727e241069f8db5ba709 | affected |
| Linux | Linux | 5ef31ea5d053a8f493a772ebad3f3ce82c35d845 < 2e5edb69e5d0e23ef248c56fc977039268c77a7b | affected |
| Linux | Linux | 5ef31ea5d053a8f493a772ebad3f3ce82c35d845 < 5c2c3c38be396257a6a2e55bd601a12bb9781507 | affected |
| Linux | Linux | dbd9466d323a72e22efe09151253d195d36d3bf6 | affected |
| Linux | Linux | 6.6.31 < 6.6.124 | affected |
| Linux | Linux | 6.8.10 < 6.9 | affected |
| Linux | Linux | 6.9 | affected |
| Linux | Linux | 0 < 6.9 | unaffected |
| Linux | Linux | 6.6.124 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.70 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.10 <= 6.18.* | unaffected |
| Linux | Linux | 6.19 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/9d40a85138568696387ef04cd004c64612a70874
- https://git.kernel.org/stable/c/b83557bc6f560433fe5d727e241069f8db5ba709
- https://git.kernel.org/stable/c/2e5edb69e5d0e23ef248c56fc977039268c77a7b
- https://git.kernel.org/stable/c/5c2c3c38be396257a6a2e55bd601a12bb9781507
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.