🛡️ UBUNTU-CVE-2024-26589
⚪ Unknown ✅ No Known Exploit OSV
N/A
CVSS Score
0 Low4 Medium7 High9 Critical10

Description

In the Linux kernel, the following vulnerability has been resolved: bpf: Reject variable offset alu on PTR_TO_FLOW_KEYS For PTR_TO_FLOW_KEYS, check_flow_keys_access() only uses fixed off for validation. However, variable offset ptr alu is not prohibited for this ptr kind. So the variable offset is not checked. The following prog is accepted: func#0 @0 0: R1=ctx() R10=fp0 0: (bf) r6 = r1 ; R1=ctx() R6_w=ctx() 1: (79) r7 = *(u64 *)(r6 +144) ; R6_w=ctx() R7_w=flow_keys() 2: (b7) r8 = 1024 ; R8_w=1024 3: (37) r8 /= 1 ; R8_w=scalar() 4: (57) r8 &= 1024 ; R8_w=scalar(smin=smin32=0, smax=umax=smax32=umax32=1024,var_off=(0x0; 0x400)) 5: (0f) r7 += r8 mark_precise: frame0: last_idx 5 first_idx 0 subseq_idx -1 mark_precise: frame0: regs=r8 stack= before 4: (57) r8 &= 1024 mark_precise: frame0: regs=r8 stack= before 3: (37) r8 /= 1 mark_precise: frame0: regs=r8 stack= before 2: (b7) r8 = 1024 6: R7_w=flow_keys(smin=smin32=0,smax=umax=smax32=umax32=1024,var_off =(0x0; 0x400)) R8_w=scalar(smin=smin32=0,smax=umax=smax32=umax32=1024, var_off=(0x0; 0x400)) 6: (79) r0 = *(u64 *)(r7 +0) ; R0_w=scalar() 7: (95) exit This prog loads flow_keys to r7, and adds the variable offset r8 to r7, and finally causes out-of-bounds access: BUG: unable to handle page fault for address: ffffc90014c80038 [...] Call Trace: bpf_dispatcher_nop_func include/linux/bpf.h:1231 [inline] __bpf_prog_run include/linux/filter.h:651 [inline] bpf_prog_run include/linux/filter.h:658 [inline] bpf_prog_run_pin_on_cpu include/linux/filter.h:675 [inline] bpf_flow_dissect+0x15f/0x350 net/core/flow_dissector.c:991 bpf_prog_test_run_flow_dissector+0x39d/0x620 net/bpf/test_run.c:1359 bpf_prog_test_run kernel/bpf/syscall.c:4107 [inline] __sys_bpf+0xf8f/0x4560 kernel/bpf/syscall.c:5475 __do_sys_bpf kernel/bpf/syscall.c:5561 [inline] __se_sys_bpf kernel/bpf/syscall.c:5559 [inline] __x64_sys_bpf+0x73/0xb0 kernel/bpf/syscall.c:5559 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0x3f/0x110 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x63/0x6b Fix this by rejecting ptr alu with variable offset on flow_keys. Applying the patch rejects the program with "R7 pointer arithmetic on flow_keys prohibited".

Details

Severity Unknown
CVSS Score N/A
CVSS Vector CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CWE N/A
Public Exploit ✅ No
Source OSV
Published 2024-02-22
Updated 2026-06-15
Modified 2026-06-04
Fix URL N/A

Affected Packages

Software From version Fixed in
linux 5.15.0-102.112
linux-allwinner-5.19
linux-aws 5.15.0-1057.63
linux-aws-5.0
linux-aws-5.11
linux-aws-5.13
linux-aws-5.15 5.15.0-1057.63~20.04.1
linux-aws-5.19
linux-aws-5.3
linux-aws-5.4 5.4.0-1123.133~18.04.1
linux-aws-5.8
linux-aws-6.2
linux-aws-6.5 6.5.0-1018.18~22.04.1
linux-aws-fips 5.15.0-1057.63+fips1
linux-azure 5.15.0-1060.69
linux-azure-5.11
linux-azure-5.13
linux-azure-5.15 5.15.0-1060.69~20.04.1
linux-azure-5.19
linux-azure-5.3
linux-azure-5.4 5.4.0-1128.135~18.04.1
linux-azure-5.8
linux-azure-6.2
linux-azure-6.5 6.5.0-1019.20~22.04.1
linux-azure-edge
linux-azure-fde
linux-azure-fde-5.19
linux-azure-fde-6.2
linux-azure-fde-6.8
linux-azure-fips 5.15.0-1060.69+fips1
linux-bluefield
linux-fips 5.15.0-102.112+fips1
linux-gcp 5.15.0-1055.63
linux-gcp-5.11
linux-gcp-5.13
linux-gcp-5.15 5.15.0-1055.63~20.04.1
linux-gcp-5.19
linux-gcp-5.3
linux-gcp-5.4 5.4.0-1127.136~18.04.1
linux-gcp-5.8
linux-gcp-6.2
linux-gcp-6.5 6.5.0-1018.18~22.04.1
linux-gcp-fips 5.15.0-1055.63+fips2
linux-gke 5.15.0-1054.59
linux-gke-4.15
linux-gke-5.15
linux-gke-5.4
linux-gkeop 5.15.0-1040.46
linux-gkeop-5.15 5.15.0-1040.46~20.04.1
linux-gkeop-5.4
linux-hwe
linux-hwe-5.11
linux-hwe-5.13
linux-hwe-5.15 5.15.0-102.112~20.04.1
linux-hwe-5.19
linux-hwe-5.4 5.4.0-177.197~18.04.1
linux-hwe-5.8
linux-hwe-6.2
linux-hwe-6.5 6.5.0-28.29~22.04.1
linux-hwe-edge
linux-ibm 5.15.0-1050.53
linux-ibm-5.15 5.15.0-1050.53~20.04.1
linux-ibm-5.4 5.4.0-1070.75~18.04.1
linux-intel-5.13
linux-intel-iot-realtime 5.15.0-1050.52
linux-intel-iotg 5.15.0-1052.58
linux-intel-iotg-5.15 5.15.0-1052.58~20.04.1
linux-iot 5.4.0-1035.36
linux-kvm 5.15.0-1054.59
linux-lowlatency 5.15.0-102.112
linux-lowlatency-hwe-5.15 5.15.0-102.112~20.04.1
linux-lowlatency-hwe-5.19
linux-lowlatency-hwe-6.2
linux-lowlatency-hwe-6.5 6.5.0-28.29.1~22.04.1
linux-nvidia 5.15.0-1048.48
linux-nvidia-6.2
linux-nvidia-6.5 6.5.0-1015.15
linux-nvidia-tegra 5.15.0-1025.25
linux-nvidia-tegra-5.15 5.15.0-1025.25~20.04.1
linux-nvidia-tegra-igx 5.15.0-1012.12
linux-oem
linux-oem-5.10
linux-oem-5.13
linux-oem-5.14
linux-oem-5.17
linux-oem-5.6
linux-oem-6.0
linux-oem-6.1 6.1.0-1035.35
linux-oem-6.5 6.5.0-1020.21
linux-oracle 5.15.0-1055.61
linux-oracle-5.0
linux-oracle-5.11
linux-oracle-5.13
linux-oracle-5.15 5.15.0-1055.61~20.04.1
linux-oracle-5.3
linux-oracle-5.4 5.4.0-1122.131~18.04.1
linux-oracle-5.8
linux-oracle-6.5 6.5.0-1021.21~22.04.1
linux-raspi 5.15.0-1050.53
linux-raspi-5.4 5.4.0-1107.119~18.04.1
linux-raspi-realtime 6.8.0-2001.1
linux-raspi2
linux-realtime 5.15.0-1058.66
linux-riscv
linux-riscv-5.11
linux-riscv-5.15 5.15.0-1053.57~20.04.1
linux-riscv-5.19
linux-riscv-5.8
linux-riscv-6.5 6.5.0-28.29.1~22.04.1
linux-starfive-5.19
linux-starfive-6.2
linux-starfive-6.5 6.5.0-1012.13~22.04.1
linux-xilinx-zynqmp 5.15.0-1030.34

References

Similar Threats

Patch Gap Protection

Running software with known vulnerabilities?

BotEraser can help reduce exposure by blocking IPs associated with exploit activity — even before a patch is available.

Start Free →

No credit card required  ·  Results in minutes

ⓘ Data Notice: The information presented above has been compiled from publicly available internet sources. Boteraser aggregates this data solely for informational purposes and does not independently classify, evaluate, or endorse any findings about the vulnerabilities listed. The accuracy and completeness of this information is the sole responsibility of the original publishers. Boteraser and its operators accept no liability for any decisions made based on this data.