CVE-2024-35903: x86/bpf: Fix IP after emitting call depth accounting
In the Linux kernel, the following vulnerability has been resolved:
x86/bpf: Fix IP after emitting call depth accounting
Adjust the IP passed to `emit_patch` so it calculates the correct offset
for the CALL instruction if `x86_call_depth_emit_accounting` emits code.
Otherwise we will skip some instructions and most likely crash.
Security readout for executives and security teams
Plain-English summary
This is a Linux kernel flaw in x86 BPF code generation that can make the kernel skip instructions and likely crash. The published impact is denial of service, not data theft or code execution. It requires local access with some privileges, so urgency is highest for shared Linux systems and environments where users or workloads can exercise BPF.
Executive priority
Handle in normal kernel patch cycles, accelerated for shared infrastructure, developer hosts, and multi-tenant systems. The main business risk is service disruption from a local kernel crash, not breach of confidentiality. There is no provided evidence of active exploitation.
Technical view
The x86 BPF JIT passed an incorrect instruction pointer to emit_patch after call depth accounting emitted code. That could calculate the wrong CALL offset, skip instructions, and crash the kernel. CVSS 3.1 is 5.5 with local attack vector, low complexity, low privileges, no user interaction, and high availability impact only.
Likely exposure
Exposure is limited to affected Linux kernel builds on x86 where a local low-privileged actor or workload can reach relevant BPF functionality. The source bundle lists Linux kernel versions including 6.2, 6.6.26, 6.8.5, and 6.9 as affected, but exact downstream distro status requires vendor confirmation.
Exploitation context
The source bundle does not show active exploitation, and KEV status is false. The available evidence supports a local denial-of-service scenario through a kernel crash. No public source in the bundle supports remote exploitation, privilege escalation, data disclosure, or weaponized exploitation.
Researcher notes
The root issue is offset calculation after x86_call_depth_emit_accounting changes emitted code length. The CVE metadata is thin on affected ranges and downstream fixes, so use kernel commits plus distro advisories for precise exposure decisions. Avoid assuming exploitability beyond local availability impact.
Mitigation direction
Prioritize kernel updates from your Linux distribution or appliance vendor.
Confirm updates include the linked upstream stable fixes for CVE-2024-35903.
Treat shared hosts and multi-tenant Linux systems as higher priority.
Check vendor guidance before applying non-patch mitigations.
Schedule maintenance because kernel updates usually require reboot or live patching.
Validation and detection
Inventory running Linux kernel versions on x86 systems.
Map installed kernels to vendor advisories for CVE-2024-35903.
Verify patched builds include one of the linked stable commits.
Confirm whether local users or workloads can access BPF functionality.
After patching, confirm systems boot the updated kernel.
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-2024-35903 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.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.