Out-of-bounds Read in Linux

CVE-2022-48929

In the Linux kernel, the following vulnerability has been resolved: bpf: Fix crash due to out of bounds access into reg2btf_ids. When commit e6ac2450d6de ("bpf: Support bpf program calling kernel function") added kfunc support, it defined reg2btf_ids as a cheap way to translate the verifier reg type to the appropriate btf_vmlinux BTF ID, however commit c25b2ae13603 ("bpf: Replace PTR_TO_XXX_OR_NULL with PTR_TO_XXX | PTR_MAYBE_NULL") moved the __BPF_REG_TYPE_MAX from the last member of bpf_reg_type enum to after the base register types, and defined other variants using type flag composition. However, now, the direct usage of reg->type to index into reg2btf_ids may no longer fall into __BPF_REG_TYPE_MAX range, and hence lead to out of bounds access and kernel crash on dereference of bad pointer.

Vulnerability class: Buffer Overflow

EPSS: 0.002 (11.3th percentile) — read the EPSS interpretation.

CVSS v3 metric

CVSS v3 base score 5.5 (Medium). Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H.

Affected products

  • Linux — versions 8d38cde47a7e17b646401fa92d916503caa5375e, 77459bc4d5e2c6f24db845780b4d9d60cf82d06a, c25b2ae136039ffa820c26138ed4a5e5f3ab3841
  • Linux Linux_kernel

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2022-48929?
CVE-2022-48929 is a medium-severity vulnerability in Linux, classified under Out-of-bounds Read. CVSS score: 5.5/10. Published 2024-08-22.
How severe is CVE-2022-48929?
Medium severity. CVSS v3 base score is 5.5 out of 10.