Zero Day MonitorZDM
DashboardVulnerabilitiesTrendingZero-DaysNewsAbout
Login
ImpressumPrivacy Policy
Zero Day Monitor © 2026
2758 articles · 110038 vulns · 36/41 feeds (7d)
← Back to list
—
CVE-2026-31413PATCHED
Linux · Linux

bpf: Fix unsound scalar forking in maybe_fork_scalars() for BPF_OR

Description

In the Linux kernel, the following vulnerability has been resolved: bpf: Fix unsound scalar forking in maybe_fork_scalars() for BPF_OR maybe_fork_scalars() is called for both BPF_AND and BPF_OR when the source operand is a constant. When dst has signed range [-1, 0], it forks the verifier state: the pushed path gets dst = 0, the current path gets dst = -1. For BPF_AND this is correct: 0 & K == 0. For BPF_OR this is wrong: 0 | K == K, not 0. The pushed path therefore tracks dst as 0 when the runtime value is K, producing an exploitable verifier/runtime divergence that allows out-of-bounds map access. Fix this by passing env->insn_idx (instead of env->insn_idx + 1) to push_stack(), so the pushed path re-executes the ALU instruction with dst = 0 and naturally computes the correct result for any opcode.

Affected Products

VendorProductVersions
LinuxLinuxdea9989a3f3961faede93752cd81eb5a9514d911, 4c122e8ae14950cf6b59d208fc5160f7c601e746, e52567173ba86dbffb990595fbe60e2e83899372, bffacdb80b93b7b5e96b26fad64cc490a6c7d6c7, 7.0-rc1, 6.12.79, 6.18.20, 6.19.10, 7.0-rc4

Also Affects

Downstream vendors/products affected by this vulnerability

VendorProductSourceConfidence
linuxlinuxmitre_affected90%

References

  • https://git.kernel.org/stable/c/342aa1ee995ef5bbf876096dc3a5e51218d76fa4
  • https://git.kernel.org/stable/c/58bd87d0e69204dbd739e4387a1edb0c4b1644e7
  • https://git.kernel.org/stable/c/d13281ae7ea8902b21d99d10a2c8caf0bdec0455
  • https://git.kernel.org/stable/c/c845894ebd6fb43226b3118d6b017942550910c5

Related News (2 articles)

Tier C
VulDB49m ago
CVE-2026-31413 | Linux Kernel up to 6.12.79/6.18.20/6.19.10/7.0-rc1/7.0-rc4 bpf maybe_fork_scalars runtime out-of-bounds
→ No new info (linked only)
Tier C
Linux Kernel CVEs2h ago
CVE-2026-31413: bpf: Fix unsound scalar forking in maybe_fork_scalars() for BPF_OR
→ No new info (linked only)
CISA KEV❌ No
Actively exploited❌ No
Patch available
342aa1ee995ef5bbf876096dc3a5e51218d76fa458bd87d0e69204dbd739e4387a1edb0c4b1644e7d13281ae7ea8902b21d99d10a2c8caf0bdec0455c845894ebd6fb43226b3118d6b017942550910c506.12.806.18.216.19.117.0-rc5
PublishedApr 12, 2026
Last enriched11m agov2
Trending Score32
Source articles3
Independent2
Info Completeness7/14
Missing: cvss, epss, cwe, kev, exploit, iocs, mitre_attack

Community Vote

0
Login to vote
0 upvotes0 downvotes
No votes yet

Related CVEs (5)

HIGHCVE-2026-23406EXP
apparmor: fix side-effect bug in match_char() macro usage
Trending: 51
HIGHCVE-2026-31412EXP
usb: gadget: f_mass_storage: Fix potential integer overflow in check_command_size_in_blocks()
Trending: 49
HIGHCVE-2026-23400EXP
In the Linux kernel, the following vulnerability has been resolved: rust_binder: call set_notification_done() without proc lock Consider the following sequence of events on a death listener: 1. The
Trending: 49
HIGHCVE-2026-23398EXP
In the Linux kernel, the following vulnerability has been resolved: icmp: fix NULL pointer dereference in icmp_tag_validation() icmp_tag_validation() unconditionally dereferences the result of rcu_d
Trending: 44
HIGHCVE-2026-23001
In the Linux kernel, the following vulnerability has been resolved: macvlan: fix possible UAF in macvlan_forward_source() Add RCU protection on (struct macvlan_source_entry)->vlan. Whenever macvlan
Trending: 30

Pin to Dashboard

Verification

State: verified
Confidence: 0%

Vulnerability Timeline

CVE Published
Apr 12, 2026
Discovered by ZDM
Apr 12, 2026
Patch Available
Apr 12, 2026
Updated: affectedVersions
Apr 12, 2026

Version History

v2
Last enriched 11m ago
v2Tier C11m ago

Updated description with new details, added affected versions, changed severity to CRITICAL, and noted that there is no available exploit.

affectedVersions
via VulDB
v12h ago

Initial creation