CVE-2026-68299
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Summary
In the Linux kernel, the following vulnerability has been resolved:
vmxnet3: fix BUG_ON in vmxnet3_get_hdr_len() for Geneve packets
vmxnet3_get_hdr_len() assumes gdesc->rcd.v4/v6/tcp always describe the outer header, but for a Geneve-encapsulated packet the device can set them based on the inner header instead, signalled by the VMXNET3_RCD_HDR_INNER_SHIFT bit in the completion descriptor. Since the function never skips the outer encapsulation, this mismatch triggers:
- BUG_ON(hdr.ipv4->protocol != IPPROTO_TCP), because the outer protocol is UDP (Geneve), not TCP.
- BUG_ON(hdr.eth->h_proto != …), when the tunnel's outer and inner IP versions differ (e.g. outer IPv6/inner IPv4 or vice versa).
Check VMXNET3_RCD_HDR_INNER_SHIFT up front and bail out, since the function cannot locate the inner header it would need to parse. Also convert the remaining BUG_ON()s in this function to return 0 defensively.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 45dac1d6ea045ae56e4df8d9c70c92c7412bd4fc < 667b6e52048eaf4dbcf1707ed87ffd44abb9cb38 | affected |
| Linux | Linux | 45dac1d6ea045ae56e4df8d9c70c92c7412bd4fc < 28cb5d8d13b4c1faf3f688f62e5df82fe7b438d8 | affected |
| Linux | Linux | 45dac1d6ea045ae56e4df8d9c70c92c7412bd4fc < 4fdb0f162ccdbe9626863b10003855703253fa29 | affected |
| Linux | Linux | 45dac1d6ea045ae56e4df8d9c70c92c7412bd4fc < b28596baf87e25a078789f1c05817c8a3bf71257 | affected |
| Linux | Linux | 45dac1d6ea045ae56e4df8d9c70c92c7412bd4fc < 34a71f5361fc3adb5b7138da78750b0d535a8252 | affected |
| Linux | Linux | 4.2 | affected |
| Linux | Linux | 0 < 4.2 | unaffected |
| Linux | Linux | 6.6.148 <= 6.6.* | unaffected |
| Linux | Linux | 6.12.101 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.42 <= 6.18.* | unaffected |
| Linux | Linux | 7.1.6 <= 7.1.* | unaffected |
| Linux | Linux | 7.2-rc5 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/667b6e52048eaf4dbcf1707ed87ffd44abb9cb38
- https://git.kernel.org/stable/c/28cb5d8d13b4c1faf3f688f62e5df82fe7b438d8
- https://git.kernel.org/stable/c/4fdb0f162ccdbe9626863b10003855703253fa29
- https://git.kernel.org/stable/c/b28596baf87e25a078789f1c05817c8a3bf71257
- https://git.kernel.org/stable/c/34a71f5361fc3adb5b7138da78750b0d535a8252
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.