CVE-2022-48929: bpf: Fix crash due to out of bounds access into reg2btf_ids.
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.
Security readout for executives and security teams
Plain-English summary
This is a Linux kernel BPF verifier bug that can crash the kernel when an internal register type is used as an array index after a type-system change. The source bundle describes a kernel crash, not data theft or remote code execution.
Executive priority
Treat this as a kernel stability and local denial-of-service risk. Prioritize normal kernel patching, with faster action for multi-tenant or developer systems where BPF access is more plausible.
Technical view
The bug is an out-of-bounds access into reg2btf_ids in BPF kfunc handling. After PTR_TO_XXX_OR_NULL was replaced with PTR_TO_XXX plus PTR_MAYBE_NULL flags, direct reg->type indexing could exceed __BPF_REG_TYPE_MAX and dereference an invalid pointer.
Likely exposure
Exposure is likely limited to Linux kernels containing the referenced BPF kfunc and register-type changes before the stable fixes. Practical risk depends on whether local users or workloads can load BPF programs and on distribution backports. The bundle does not provide complete affected version ranges.
Exploitation context
The source bundle does not cite active exploitation, and KEV is false. The described impact is a kernel crash from bad pointer dereference during BPF verification. No public exploit status is provided in the supplied sources.
Researcher notes
The root cause is clear from the source text, but exploitability and affected-version scope are incomplete. Avoid assuming remote exposure or privilege escalation without additional vendor analysis. Validate through kernel provenance, BPF policy, and presence of the stable fixes.
Mitigation direction
Apply Linux vendor kernel updates containing the referenced stable fixes.
Check distribution advisories for backported fixes before relying on upstream version numbers.
Restrict unprivileged BPF use where operationally acceptable.
Prioritize shared, multi-user, container, and developer hosts for review.
Validation and detection
Inventory Linux kernel builds across exposed systems.
Compare installed kernels against vendor advisories and the referenced stable commits.
Review whether unprivileged users or workloads can load BPF programs.
Check kernel logs for BPF verifier crashes or related oops events.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2022-48929 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.