CVE-2026-93127

LOWCVSS 7.8 · HIGH

Signal is active with 1 mentions in latest observed window

Immediate actions

  • Track advisory updates for patch or workaround availability

Recommended action window: Monitor and triage in normal cycle

NVD description

In the Linux kernel, the following vulnerability has been resolved: bpf: Drop scalar id on sign-extending narrowing stack fills When a spilled scalar is filled back with a sign-extending narrowing load (BPF_MEMSX), check_stack_read_fixed_off() copies the spilled register including its scalar id, but coerce_reg_to_size_sx() then sign-extends the filled register's value. If the same slot is also filled with a plain zero-extending load (BPF_MEM), both destination registers share the id yet hold different values. A later 'if <zext-reg> == const' then refines the sign-extended register through sync_linked_regs() to a value it does not have at runtime (e.g. the verifier believes 0x80000000 while the register is 0xffffffff80000000), which can be turned into an out-of-bounds access. Drop the shared scalar id at the sign-extension site in check_mem_access() when sign extension actually changes the value, mirroring the BPF_MOVSX handling in check_alu_op() (no_sext = reg_umax < 2^(size*8-1)).

0.0/ 10 priority

Sources & remediation

Priority

LOW

Exploitation

NONE

PoC

NONE

Patch

NONE

Momentum

NONE

Threat summary

  • 1 mentions across 1 observed day

What's happening

  • 1 total mentions across 1 day

Deep dive

Activity timeline1 mentions / 1d
00111Mentions · 2026-09-21: 109-21
Referenced assets1 URL
Full discourse1 post
  • LinuxSecurity@lnxsec

    The most dangerous verifier bugs are not always bad bounds checks. Sometimes the verifier is reasoning correctly about the wrong value. CVE-2026-93127 is a useful example: a zero-extended load and a sign-extended load could produce different 64-bit values while retaining the same scalar ID. A later comparison could then narrow the verifier's view of one register and incorrectly transfer that knowledge to the other. That matters because eBPF safety depends on the verifier's internal state matching what the CPU will actually execute. Once those two models diverge, an approved memory access can cross a boundary the verifier believed was safe. In practical terms, it is a good time to: - check distribution advisories and kernel package changelogs for CVE-2026-93127 or the fix description "bpf: Drop scalar id on sign-extending narrowing stack fills" - compare the running kernel with the installed kernel package and confirm hosts have actually rebooted into the corrected build - inventory processes and containers with CAP_BPF, CAP_SYS_ADMIN, or other privileges that permit BPF loading - query kernel.unprivileged_bpf_disabled and document exceptions where unprivileged BPF remains available - test production eBPF workloads against the exact vendor kernel branch before broad rollout The uncomfortable question is broader than this CVE: how much of your kernel security model depends on verifier assumptions you cannot independently observe? #LinuxSecurity #eBPF #KernelSecurity #DevSecOps #VulnerabilityManagement https://linuxsecurity.com/features/linux-ebpf-security-flaw-out-of-bounds-access

    10010115
    4.5K followersView on X

Explore more