CVE-2026-43070
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Summary
In the Linux kernel, the following vulnerability has been resolved:
bpf: Reset register ID for BPF_END value tracking
When a register undergoes a BPF_END (byte swap) operation, its scalar
value is mutated in-place. If this register previously shared a scalar ID
with another register (e.g., after an r1 = r0 assignment), this tie must
be broken.
Currently, the verifier misses resetting dst_reg->id to 0 for BPF_END.
Consequently, if a conditional jump checks the swapped register, the
verifier incorrectly propagates the learned bounds to the linked register,
leading to false confidence in the linked register's value and potentially
allowing out-of-bounds memory accesses.
Fix this by explicitly resetting dst_reg->id to 0 in the BPF_END case
to break the scalar tie, similar to how BPF_NEG handles it via
__mark_reg_known.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 4c03342e5ac532fb34d13a7b51dd7261dfc48963 < a17443af874229408ce6b78e2c8a2b5adeb4b7d8 | affected |
| Linux | Linux | d00ce96623a69a100ad79675d0e85fda3c50d89b < 0d15c3611a2cc5d08993545d4032055ae10ae2c1 | affected |
| Linux | Linux | 9d21199842247ab05c675fb9b6c6ca393a5c0024 < a3125bc01884431d30d731461634c8295b6f0529 | affected |
| Linux | Linux | 6.18.17 < 6.18.21 | affected |
| Linux | Linux | 6.19.7 < 6.19.11 | affected |
Weaknesses
References
- https://git.kernel.org/stable/c/a17443af874229408ce6b78e2c8a2b5adeb4b7d8
- https://git.kernel.org/stable/c/0d15c3611a2cc5d08993545d4032055ae10ae2c1
- https://git.kernel.org/stable/c/a3125bc01884431d30d731461634c8295b6f0529
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.