LiveActive security incident?Get immediate response
CVE Record

CVE-2024-35917: s390/bpf: Fix bpf_plt pointer arithmetic

In the Linux kernel, the following vulnerability has been resolved: s390/bpf: Fix bpf_plt pointer arithmetic Kui-Feng Lee reported a crash on s390x triggered by the dummy_st_ops/dummy_init_ptr_arg test [1]: [<0000000000000002>] 0x2 [<00000000009d5cde>] bpf_struct_ops_test_run+0x156/0x250 [<000000000033145a>] __sys_bpf+0xa1a/0xd00 [<00000000003319dc>] __s390x_sys_bpf+0x44/0x50 [<0000000000c4382c>] __do_syscall+0x244/0x300 [<0000000000c59a40>] system_call+0x70/0x98 This is caused by GCC moving memcpy() after assignments in bpf_jit_plt(), resulting in NULL pointers being written instead of the return and the target addresses. Looking at the GCC internals, the reordering is allowed because the alias analysis thinks that the memcpy() destination and the assignments' left-hand-sides are based on different objects: new_plt and bpf_plt_ret/bpf_plt_target respectively, and therefore they cannot alias. This is in turn due to a violation of the C standard: When two pointers are subtracted, both shall point to elements of the same array object, or one past the last element of the array object ... From the C's perspective, bpf_plt_ret and bpf_plt are distinct objects and cannot be subtracted. In the practical terms, doing so confuses the GCC's alias analysis. The code was written this way in order to let the C side know a few offsets defined in the assembly. While nice, this is by no means necessary. Fix the noncompliance by hardcoding these offsets. [1] https://lore.kernel.org/bpf/c9923c1d-971d-4022-8dc8-1364e929d34c@gmail.com/

UnknownCVSS not scoredNot KEV-listedUpdated
Glexia's TakeAutomated analysisunknown

Security readout for executives and security teams

Plain-English summary

This Linux kernel issue affects the s390 BPF implementation. A compiler optimization can cause the kernel to write NULL branch addresses, leading to a crash in a BPF struct-ops test path. The provided sources do not show active exploitation or a business impact beyond potential kernel instability on affected s390x systems.

Executive priority

Treat this as a targeted kernel stability issue, not a broad emergency from the available evidence. Prioritize patch validation for s390x infrastructure and regulated production systems, especially where outages have business impact. Escalate only if vendor advisories add stronger impact or exploitation evidence.

Technical view

The flaw is in s390/bpf bpf_jit_plt() pointer arithmetic. The code subtracted pointers from distinct C objects, confusing GCC alias analysis. GCC could move memcpy() after assignments, causing NULL return and target pointers. The fix removes the noncompliant calculation and hardcodes assembly-defined offsets.

Likely exposure

Likely exposure is limited to Linux systems on IBM s390x architecture using affected kernel builds with the s390 BPF JIT code. The bundle lists Linux kernel versions including 6.3, 6.6.26, 6.8.5, and 6.9, but does not fully preserve version-range semantics.

Exploitation context

The source bundle marks this CVE as not in KEV and provides no cited evidence of active exploitation. The reported trigger was a BPF selftest-related crash on s390x. The sources do not establish remote exploitability, required privileges, confidentiality impact, or an abuse path.

Researcher notes

Root cause is C-standard-noncompliant pointer subtraction between distinct objects in s390 BPF JIT PLT handling. GCC alias analysis treated the objects as non-aliasing and reordered memcpy, leaving NULL return and target addresses. The documented fix replaces derived offsets with hardcoded assembly offsets.

Mitigation direction

  • Apply distribution kernel updates that include the cited stable Linux fixes.
  • Prioritize s390x Linux hosts using BPF-heavy or custom kernel workloads.
  • Check vendor advisories for exact affected and fixed package versions.
  • For unpatched systems, request vendor-approved compensating controls.
  • Avoid direct wrangler-style assumptions; use vendor kernel guidance only.

Validation and detection

  • Inventory Linux hosts running on s390x architecture.
  • Map kernel versions against vendor advisories and fixed package changelogs.
  • Confirm patched kernels include one of the cited stable commits.
  • Review kernel logs for BPF-related crashes or oops reports.
  • Regression-test BPF workloads after kernel updates.
Prepared
Confidence
medium
Sources
5

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-35917 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Unknown
CVSS
Not scored
Known Exploited
No
Published
Official CVE source material

CNA and ADP enrichment extracted from CVE v5

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.

0CVSS vectors
3Timeline events
2ADP providers
4Source links

SSVC decision data

CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: noTechnical Impact: partial

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

ADP provider summaries

CISA-ADPCISA ADP Vulnrichment
other:ssvc
CVECVE Program Container
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
LinuxLinuxf1d5df84cd8c3ec6460c78f5b86be7c84577a83f, f1d5df84cd8c3ec6460c78f5b86be7c84577a83f, f1d5df84cd8c3ec6460c78f5b86be7c84577a83funaffected
LinuxLinux6.3, 0, 6.6.26, 6.8.5, 6.9affected
Weakness

CWE details

No CWE listed

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.