CVE-2021-47036
Last modified
CVE-2021-47036 is a medium-severity vulnerability rated 5.5/10 on the CVSS scale. In the Linux kernel, the following vulnerability has been resolved: udp: skip L4 aggregation for UDP tunnel packets If NETIF_F_GRO_FRAGLIST or NETIF_F_GRO_UDP_FWD are enabled, and there are UDP tunnels available in the system, udp_gro_receive() could end-up doing L4 aggregation (either SKB_GSO_UDP_L4 or SKB_GSO_FRAGLIST) at the outer UDP tunnel level for packets effectively carrying and UDP tunnel header. That could cause inner protocol corruption. If e.g. EPSS estimates a 0.21% chance of exploitation in the next 30 days.
Description
In the Linux kernel, the following vulnerability has been resolved: udp: skip L4 aggregation for UDP tunnel packets If NETIF_F_GRO_FRAGLIST or NETIF_F_GRO_UDP_FWD are enabled, and there are UDP tunnels available in the system, udp_gro_receive() could end-up doing L4 aggregation (either SKB_GSO_UDP_L4 or SKB_GSO_FRAGLIST) at the outer UDP tunnel level for packets effectively carrying and UDP tunnel header. That could cause inner protocol corruption. If e.g. the relevant packets carry a vxlan header, different vxlan ids will be ignored/ aggregated to the same GSO packet. Inner headers will be ignored, too, so that e.g. TCP over vxlan push packets will be held in the GRO engine till the next flush, etc. Just skip the SKB_GSO_UDP_L4 and SKB_GSO_FRAGLIST code path if the current packet could land in a UDP tunnel, and let udp_gro_receive() do GRO via udp_sk(sk)->gro_receive. The check implemented in this patch is broader than what is strictly needed, as the existing UDP tunnel could be e.g. configured on top of a different device: we could end-up skipping GRO at-all for some packets. Anyhow, that is a very thin corner case and covering it will add quite a bit of complexity. v1 -> v2: - hopefully clarify the commit message
Metrics
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Affected Software
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux Kernel | >= 5.6, < 5.12.4 |
References
Timeline
- Published
- Last Modified
- Status
- Modified
Frequently Asked Questions
What is CVE-2021-47036?
How severe is CVE-2021-47036?
How do I fix CVE-2021-47036?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2021
- CVE-2021-47030In the Linux kernel, the following vulnerability has been re…5.5
- CVE-2021-47031In the Linux kernel, the following vulnerability has been re…4.3
- CVE-2021-47032In the Linux kernel, the following vulnerability has been re…5.5
- CVE-2021-47033In the Linux kernel, the following vulnerability has been re…5.5
- CVE-2021-47034In the Linux kernel, the following vulnerability has been re…4.4
- CVE-2021-47035In the Linux kernel, the following vulnerability has been re…5.5
- CVE-2021-47037In the Linux kernel, the following vulnerability has been re…5.5
- CVE-2021-47038In the Linux kernel, the following vulnerability has been re…5.5
- CVE-2021-47039In the Linux kernel, the following vulnerability has been re…7.1
- CVE-2021-47040In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2021-47041In the Linux kernel, the following vulnerability has been re…5.5
- CVE-2021-47042In the Linux kernel, the following vulnerability has been re…5.5
Are you affected by CVE-2021-47036?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
