CVE-2024-58100

CVE-2024-58100

High · published May 5, 2025

CVSS v3.1
7.8
EPSS
0%
Percentile
8.8
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

bpf: check changes_pkt_data property for extension programs

When processing calls to global sub-programs, verifier decides whether

to invalidate all packet pointers in current state depending on the

changes_pkt_data property of the global sub-program.

Because of this, an extension program replacing a global sub-program

must be compatible with changes_pkt_data property of the sub-program

being replaced.

This commit:

- adds changes_pkt_data flag to struct bpf_prog_aux:

- this flag is set in check_cfg() for main sub-program;

- in jit_subprogs() for other sub-programs;

- modifies bpf_check_attach_btf_id() to check changes_pkt_data flag;

- moves call to check_attach_btf_id() after the call to check_cfg(),

because it needs changes_pkt_data flag to be set:

bpf_check:

... ...

- check_attach_btf_id resolve_pseudo_ldimm64

resolve_pseudo_ldimm64 --> bpf_prog_is_offloaded

bpf_prog_is_offloaded check_cfg

check_cfg + check_attach_btf_id

... ...

The following fields are set by check_attach_btf_id():

- env->ops

- prog->aux->attach_btf_trace

- prog->aux->attach_func_name

- prog->aux->attach_func_proto

- prog->aux->dst_trampoline

- prog->aux->mod

- prog->aux->saved_dst_attach_type

- prog->aux->saved_dst_prog_type

- prog->expected_attach_type

Neither of these fields are used by resolve_pseudo_ldimm64() or

bpf_prog_offload_verifier_prep() (for netronome and netdevsim

drivers), so the reordering is safe.

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00196 · 8.8th percentile
Published
2025-05-05T19:15Z
Affected products (4)
ProductVersionsFixed in
linux/linux_kernel≥ 5.6, < 6.6.906.6.90
linux/linux_kernel≥ 6.7, < 6.12.256.12.25
linux/linux_kernelall versions—
linux/linux_kernelall versions—
References (3)
EPSS history
Timeline
  • 05 MAY 14:53Z
    bpf: check changes_pkt_data property for extension programs
    cvelistv5