CVE-2024-50163
Description
In the Linux kernel, the following vulnerability has been resolved:
bpf: Make sure internal and UAPI bpf_redirect flags don't overlap
The bpf_redirect_info is shared between the SKB and XDP redirect paths, and the two paths use the same numeric flag values in the ri->flags field (specifically, BPF_F_BROADCAST == BPF_F_NEXTHOP). This means that if skb bpf_redirect_neigh() is used with a non-NULL params argument and, subsequently, an XDP redirect is performed using the same bpf_redirect_info struct, the XDP path will get confused and end up crashing, which syzbot managed to trigger.
With the stack-allocated bpf_redirect_info, the structure is no longer shared between the SKB and XDP paths, so the crash doesn't happen anymore. However, different code paths using identically-numbered flag values in the same struct field still seems like a bit of a mess, so this patch cleans that up by moving the flag definitions together and redefining the three flags in BPF_F_REDIRECT_INTERNAL to not overlap with the flags used for XDP. It also adds a BUILD_BUG_ON() check to make sure the overlap is not re-introduced by mistake.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Affected products
78- osv-coords72 versionspkg:linux/kernelpkg:deb/ubuntu/[email protected]?arch=source&distro=oracularpkg:rpm/suse/kernel-syms-coco&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Confidential%20Computing%20Technical%20Preview%2015%20SP6pkg:deb/ubuntu/[email protected]?arch=source&distro=oracularpkg:rpm/suse/kernel-64kb&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-zfcpdump&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/opensuse/kernel-source-azure&distro=openSUSE%20Leap%2015.6pkg:rpm/suse/kernel-syms-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:deb/ubuntu/[email protected]?arch=source&distro=oracularpkg:rpm/suse/kernel-obs-build&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/suse/kernel-coco&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Confidential%20Computing%20Technical%20Preview%2015%20SP6pkg:rpm/suse/kernel-coco_debug&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Confidential%20Computing%20Technical%20Preview%2015%20SP6pkg:rpm/suse/kernel-source-coco&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Confidential%20Computing%20Technical%20Preview%2015%20SP6pkg:deb/ubuntu/[email protected]?arch=source&distro=oracularpkg:rpm/opensuse/kernel-rt&distro=openSUSE%20Leap%2015.6pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-livepatch-MICRO-6-0_Update_7&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-kvmsmall&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-rt&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-kvmsmall&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-livepatch-MICRO-6-0-RT_Update_8&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-livepatch-MICRO-6-0_Update_7&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-livepatch-MICRO-6-0-RT_Update_8&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-rt&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Linux%20Micro%206.0pkg:deb/ubuntu/[email protected]?arch=source&distro=oracularpkg:deb/ubuntu/[email protected]?arch=source&distro=oracularpkg:deb/ubuntu/[email protected]?arch=source&distro=oracularpkg:deb/ubuntu/[email protected]?arch=source&distro=oracularpkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Legacy%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP6pkg:rpm/suse/kernel-livepatch-SLE15-SP6_Update_11&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Workstation%20Extension%2015%20SP6pkg:rpm/opensuse/dtb-aarch64&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-64kb&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-debug&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-default&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-default-base&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-kvmsmall&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-obs-build&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-obs-qa&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-source&distro=openSUSE%20Leap%2015.6pkg:rpm/suse/kernel-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP6pkg:rpm/suse/kernel-source-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP6pkg:rpm/suse/kernel-livepatch-SLE15-SP6-RT_Update_11&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP6pkg:rpm/suse/kernel-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:rpm/opensuse/kernel-source-rt&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-syms-rt&distro=openSUSE%20Leap%2015.6pkg:rpm/suse/kernel-syms&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/opensuse/kernel-docs&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-zfcpdump&distro=openSUSE%20Leap%2015.6pkg:rpm/suse/kernel-syms-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP6pkg:rpm/opensuse/kernel-azure&distro=openSUSE%20Leap%2015.6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20High%20Availability%20Extension%2015%20SP6pkg:rpm/opensuse/kernel-syms&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-rt_debug&distro=openSUSE%20Leap%2015.6pkg:rpm/suse/kernel-docs&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/opensuse/kernel-syms-azure&distro=openSUSE%20Leap%2015.6pkg:rpm/suse/kernel-rt_debug&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:rpm/opensuse/kernel-source&distro=openSUSE%20Tumbleweedpkg:rpm/opensuse/kernel-source-longterm&distro=openSUSE%20Tumbleweed
>= 5.14.0, < 5.15.170+ 71 more
- (no CPE)range: >= 5.14.0, < 5.15.170
- (no CPE)range: < 6.11.0-1009.9
- (no CPE)range: < 6.4.0-15061.21.coco15sp6.1
- (no CPE)range: < 6.11.0-18.18
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.8.37.1
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.11.0-1009.10
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-15061.21.coco15sp6.1
- (no CPE)range: < 6.4.0-15061.21.coco15sp6.1
- (no CPE)range: < 6.4.0-15061.21.coco15sp6.1
- (no CPE)range: < 6.11.0-1009.9
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.4.0-31.1
- (no CPE)range: < 1-1.2
- (no CPE)range: < 6.4.0-29.1
- (no CPE)range: < 6.4.0-29.1
- (no CPE)range: < 6.4.0-29.1
- (no CPE)range: < 6.4.0-29.1.21.7
- (no CPE)range: < 6.4.0-31.1
- (no CPE)range: < 6.4.0-29.1
- (no CPE)range: < 6.4.0-29.1.21.7
- (no CPE)range: < 6.4.0-29.1
- (no CPE)range: < 1-1.2
- (no CPE)range: < 1-1.2
- (no CPE)range: < 6.4.0-29.1
- (no CPE)range: < 1-1.2
- (no CPE)range: < 6.4.0-31.1
- (no CPE)range: < 6.4.0-31.1
- (no CPE)range: < 6.11.0-1010.11
- (no CPE)range: < 6.11.0-1011.12
- (no CPE)range: < 6.11.0-1005.5
- (no CPE)range: < 6.11.0-1008.8
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1.150600.12.22.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 1-150600.13.3.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1.150600.12.22.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.8.37.1
- (no CPE)range: < 6.4.0-150600.8.37.1
- (no CPE)range: < 1-150600.1.3.2
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.8.37.1
- (no CPE)range: < 6.4.0-150600.8.37.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.4.0-150600.23.50.1
- (no CPE)range: < 6.4.0-150600.8.37.1
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.11.8-1.1
- (no CPE)range: < 6.12.11-1.1
Patches
Vulnerability mechanics
References
6- git.kernel.org/stable/c/09d88791c7cd888d5195c84733caf9183dcfbd16nvdPatch
- git.kernel.org/stable/c/0fca5ed4be8e8bfbfb9bd97845af596bab7192d3nvdPatch
- git.kernel.org/stable/c/314dbee9fe4f5cee36435465de52c988d7caa466nvdPatch
- git.kernel.org/stable/c/4e1e428533845d48828bd3875c0e92e8565b9962nvdPatch
- git.kernel.org/stable/c/cec288e05ceac9a0d3a3a1fd279534b11844c826nvdPatch
- lists.debian.org/debian-lts-announce/2025/01/msg00001.htmlnvd
News mentions
0No linked articles in our index yet.