bpf: reject BPF_PSEUDO_FUNC reference to the main program
Summary
| CVE | CVE-2026-98075 |
| State | PUBLISHED |
| Assigner | Linux |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2026-09-25 11:17:36 UTC |
| Updated | 2026-09-25 11:17:36 UTC |
| Description | In the Linux kernel, the following vulnerability has been resolved:
bpf: reject BPF_PSEUDO_FUNC reference to the main program
fixups.c:jit_subprogs() rewrites BPF_PSEUDO_FUNC loads to contain real
function addresses. This function is invoked from bpf_jit_subprogs()
only when env->subprog_cnt > 1. Meaning that for any program like
below:
int main(void *ctx) {
void *ptr = main;
...
bpf_timer_set_callback(..., ptr);
...
}
The 'ptr' won't be ever converted to contain an address.
In combination with e.g. bpf_timer_set_callback() this would lead to a
function call at a bogus address.
Instead of complicating the implementation, just assume that no useful
program needs main to be a sync or async callback and reject
BPF_PSEUDO_FUNC loads for the main subprogram. |
Vendor Declared Affected Products
| Source | Vendor | Product | Version | Platforms |
|---|
| CNA |
Linux |
Linux |
affected 69c087ba6225b574afb6e505b72cb75242a3d844 118212417ba0120d99f84154799f8880f07411f4 git |
Not specified |
| CNA |
Linux |
Linux |
affected 69c087ba6225b574afb6e505b72cb75242a3d844 d6c39774ae093c9f7009cc4ae918f18fc1af7ae7 git |
Not specified |
| CNA |
Linux |
Linux |
affected 69c087ba6225b574afb6e505b72cb75242a3d844 92f0bd0e2b632c6565ac2214a4d7d2ed37e5b9f6 git |
Not specified |
| CNA |
Linux |
Linux |
affected 69c087ba6225b574afb6e505b72cb75242a3d844 374b2c5561db80fcdd7cdce44af37a49416f61c7 git |
Not specified |
| CNA |
Linux |
Linux |
affected 5.13 |
Not specified |
| CNA |
Linux |
Linux |
unaffected 5.13 semver |
Not specified |
| CNA |
Linux |
Linux |
unaffected 6.12.111 6.12.* semver |
Not specified |
| CNA |
Linux |
Linux |
unaffected 6.18.53 6.18.* semver |
Not specified |
| CNA |
Linux |
Linux |
unaffected 7.2.7 7.2.* semver |
Not specified |
| CNA |
Linux |
Linux |
unaffected 7.3-rc2 * original_commit_for_fix |
Not specified |
References
| Reference | Source | Link | Tags |
|---|
| git.kernel.org/stable/c/d6c39774ae093c9f7009cc4ae918f18fc1af7ae7 |
416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
git.kernel.org |
|
| git.kernel.org/stable/c/374b2c5561db80fcdd7cdce44af37a49416f61c7 |
416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
git.kernel.org |
|
| git.kernel.org/stable/c/92f0bd0e2b632c6565ac2214a4d7d2ed37e5b9f6 |
416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
git.kernel.org |
|
| git.kernel.org/stable/c/118212417ba0120d99f84154799f8880f07411f4 |
416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
git.kernel.org |
|
| CVE Program record |
CVE.ORG |
www.cve.org |
canonical |
| NVD vulnerability detail |
NVD |
nvd.nist.gov |
canonical, analysis |
No vendor comments have been submitted for this CVE.
There are currently no legacy QID mappings associated with this CVE.