Skip to main content

Linux Kernel EUVDEUVD-2026-93156

| CVE-2026-98228 HIGH
2026-10-06 Linux GHSA-h7gx-m7h9-c46w
7.8
CVSS 3.1 · Vendor: Linux
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Local unprivileged process on EyeQ/I6500 host
  2. Delivery
    Hammer anonymous pipe with concurrent read/write
  3. Exploit
    Win LL/SC reordering race in cmpxchg
  4. Execution
    Corrupt pipe mutex/kernel state
  5. Impact
    NULL-deref kernel panic or memory corruption

Vulnerability Assessment

Exploitation Conditions

Requires the kernel to be built with CONFIG_EYEQ and running on MIPS I6500 CPU cores (e.g. Mobileye EyeQ5 SoC), where lld/scd provide no ordering guarantees - the fix selects CONFIG_WEAK_REORDERING_BEYOND_LLSC to inject sync instructions around LL/SC loops. Exploitation needs LOCAL access as an authenticated user (PR:L) able to run syscalls that stress a kernel cmpxchg-protected lock (the reproducer uses tightly contended anonymous-pipe read/write loops). LIMITING FACTORS: no network vector, no effect on x86/ARM or non-EyeQ MIPS configs, success depends on winning a CPU-reordering race window, and the observed outcome is a kernel oops rather than a controlled compromise.

Impact

Signals are consistent and point to LOW real-world priority despite the HIGH 7.8 base score. The CVSS vector is AV:L (local only, no network reachability), with PR:L requiring an already-authenticated local user, so this is not a remotely exploitable flaw. EPSS is 0.15% (4th percentile) - negligible exploitation probability - and the CVE is NOT on CISA KEV and has no flagged public exploit, so exploitation status is 'no public exploit identified at time of analysis' (note: the commit message does publish a crash reproducer, pipe_race.c, but that demonstrates the DoS/race, not a weaponized privilege-escalation exploit). Critically, the affected scope is far narrower than the generic 'linux:linux' CPE implies: the fix only matters for kernels built with CONFIG_EYEQ running on MIPS I6500 CPU cores (Mobileye EyeQ5 automotive SoCs), where lld/scd give no ordering guarantees. CONFLICT/CAVEAT: the CVSS claims C:H/I:H/A:H, but the demonstrated impact in the description is a NULL-pointer-dereference kernel oops (availability/DoS); full confidentiality/integrity compromise via broken cmpxchg ordering is plausible (corrupted mutex state can cause arbitrary kernel memory corruption) but is not demonstrated - verify impact scope against the hardware platform before treating this as a C/I threat. Net: a genuine correctness bug on a rare hardware target, not a broad security emergency.

Exploit ScenarioDerived

On a Mobileye EyeQ5 (MIPS I6500) system, a local unprivileged process hammers an anonymous pipe with tight concurrent read()/write() loops. Because lld/scd are not ordered on I6500, the CPU reorders a load out of the cmpxchg critical section protecting the pipe mutex, causing a kernel NULL-pointer dereference (oops) and potential memory corruption. A crash reproducer (pipe_race.c) is published in the commit, but no privilege-escalation exploit is known.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 07, 2026

A missing hardware memory-ordering barrier in the Linux kernel's MIPS EYEQ support lets a local, authenticated user crash the kernel on Mobileye EyeQ5 / MIPS I6500 systems. On I6500 cores the lld/scd (LL/SC) instructions provide no ordering guarantees, so arch_cmpxchg() - documented and relied upon as fully ordered - can be reordered and read freed or uninitialized memory, producing a kernel paging fault and oops (observed in anon_pipe_read while stressing an anonymous pipe, whose mutex uses cmpxchg). Exploitation requires CONFIG_EYEQ hardware, local access, and winning a timing/race window; there is no network vector and no impact on x86, ARM, or other MIPS configurations. The fix commit is public and includes a userspace reproducer (pipe_race.c), so publicly available exploit code exists, but no confirmed active exploitation (not in CISA KEV); EPSS is 0.15% (4th percentile), and the observed outcome is a kernel oops rather than a controlled compromise.

RemediationAI

Apply the upstream fix, which is a one-line Kconfig change making CONFIG_EYEQ select CONFIG_WEAK_REORDERING_BEYOND_LLSC. Vendor-released patch: Linux 7.2.8 and Linux 7.3-rc4; the corresponding stable commits are 3f017c2ca8c31a1e135dd87be647096866d6b196 and bbc448c541ed90d52f9ec22f17394304e3bf170e (see https://git.kernel.org/stable/c/3f017c2ca8c31a1e135dd87be647096866d6b196 and https://git.kernel.org/stable/c/bbc448c541ed90d52f9ec22f17394304e3bf170e, with advisory reference https://nvd.nist.gov/vuln/detail/CVE-2026-98228). If upgrading is not immediately possible, the most reliable compensating control is for EYEQ/I6500 system builders to enable CONFIG_WEAK_REORDERING_BEYOND_LLSC manually in the kernel configuration and rebuild - this is exactly what the fix does, so it carries the intended (small) synchronization overhead and no correction risk; it is not available as a runtime toggle. Disabling CONFIG_EYEQ entirely on I6500 hardware removes the buggy code path but also removes EyeQ platform support, making the board unusable for its intended purpose, so it is only viable for hardware that does not need the EYEQ feature set. Reducing the number of untrusted local users, disabling shell/agent access for low-privilege accounts, or sandboxing workloads lowers the probability of an authenticated local attacker triggering the race but does not eliminate the underlying memory-ordering defect and should be treated only as temporary hardening; there is no kernel command-line or sysctl workaround for a missing memory barrier.

Affected VersionsENISA

Linux patch: 7.2.8
Linux 6.11
Linux fbe0fae601b780622fcb7034a479fa161645b9f4 <3f017c2ca8c31a1e135dd87be647096866d6b196
Linux patch: 0
Linux patch: 7.3-rc4
Linux fbe0fae601b780622fcb7034a479fa161645b9f4 <bbc448c541ed90d52f9ec22f17394304e3bf170e

Affected Packages

euvd linux no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The affected code path is the MIPS LL/SC (load-linked/store-conditional) implementation of atomic primitives, specifically arch_cmpxchg(), which the kernel assumes to be fully ordered. On older MIPS cores LL/SC implied memory ordering, but on MIPS I6500 cores (PrId 0001b028, as seen in the crash log) the lld and scd instructions give no ordering guarantees - the same as any other instruction. Without explicit barriers, the load that follows a successful store-conditional can be reordered above it, so an operation guarded by a cmpxchg-based lock (a mutex in fs/pipe.c in the reproducer) may observe memory that has already been freed or not yet initialized, dereferencing a null/garbage pointer and faulting in kernel mode. The kernel already contains the infrastructure to handle exactly this class of problem: CONFIG_WEAK_REORDERING_BEYOND_LLSC injects sync instructions above and below LL/SC loops. The defect was that CONFIG_EYEQ did not select this option, leaving EYEQ builds on I6500 without the required barriers. The root cause is therefore improper synchronization / a missing hardware memory barrier around an atomic RMW sequence (the input provides no CWE assignment; this maps conceptually to race-condition / improper-locking classes). The practical consequence is memory corruption and kernel instability rather than a directly attacker-controlled primitive, which is why the independent assessment keeps the attack complexity at High despite the 7.8 base score.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (Linux) PRIMARY 7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 7.0 HIGH

Local authenticated trigger (AV:L/PR:L); AC:H because exploitation hinges on winning a CPU LL/SC reordering race on specific hardware; broken cmpxchg ordering can corrupt kernel state, justifying C/I/A:H.

3.1 AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:L/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

4
CVSS changed
Oct 07, 2026 - 07:22 NVD
7.8 (HIGH)
Patch available
Oct 06, 2026 - 10:02 EUVD
CVE Published
Oct 06, 2026 - 08:45 cve.org
HIGH 7.8
CVE Published
Oct 06, 2026 - 08:45 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

In the Linux kernel, the following vulnerability has been resolved:

mips: select CONFIG_WEAK_REORDERING_BEYOND_LLSC from CONFIG_EYEQ

On I6500 CPU cores, lld and scd give no ordering guarantees (same as all other instructions). To respect the assumption that arch_cmpxchg() is fully ordered, we must inject sync instructions above and below our lld/scd loops using the already in place WEAK_REORDERING_BEYOND_LLSC infrastructure.

Otherwise, bad things can happen:

[ 34.054496] CPU 3 Unable to handle kernel paging request at virtual address 0000000000000000, epc a80000080838e01c, ra a80000080838dfc4 [ 34.054559] Oops[#1]: [ 34.069561] CPU: 3 UID: 0 PID: 170 Comm: pipe_race Not tainted 7.2.0-rc6-01553-gb73c35220968-dirty #103 VOLUNTARY [ 34.079932] Hardware name: Mobile EyeQ5 MP5 Evaluation board [ 34.085592] $ 0 : 0000000000000000 0000000000000001 0000000000000000 0000000000000000 [ 34.093616] $ 4 : a800000808ee2618 000000000b7a879d 0000000000001000 0000000000000000 [ 34.101638] $ 8 : 0000000000e3f2c9 0000000000000000 a800000808a2a9f8 0000000000000000 [ 34.109660] $12 : a8000008139ffcd8 ffffffff84080018 a80000080837fae0 7878787878787878 [ 34.117682] $16 : a800000807e82940 0000000000001000 0000000000000000 0000000000000000 [ 34.125704] $20 : a800000802920e00 a8000008139ffdf8 a800000802649400 0000000000e3f2c9 [ 34.133726] $24 : 0000000000000006 00000001200406e0 [ 34.141783] $28 : a8000008139fc000 a8000008139ffd10 0000000000e3f2c8 a80000080838dfc4 [ 34.149837] epc : a80000080838e01c anon_pipe_read+0xd4/0x428 [ 34.155697] ra : a80000080838dfc4 anon_pipe_read+0x7c/0x428 [ 34.161549] Status: 140000e3 KX SX UX KERNEL EXL IE [ 34.166551] Cause : 40800408 (ExcCode 02) [ 34.170574] BadVA : 0000000000000000 [ 34.174161] PrId : 0001b028 (MIPS I6500) [ 34.178183] Process pipe_race (pid: 170, threadinfo=000000005ca35720, task=00000000e1013890, tls=000000014ebbb780) [ 34.188568] Stack : a800000802649400 0000000000000000 0000000000000000 a8000008139ffdd0 [ 34.196623] 0000000000000fba a800000808ee0000 0000000000000001 a8000008130c3e80 [ 34.204676] a8000008080d1280 a8000008139ffd58 a8000008139ffd58 1dbd2b22ea1dd500 [ 34.212729] a800000802649400 a800000808ee0000 ffffffffffffffea 0000000000000001 [ 34.220783] 0000000000001000 0000000000000000 00000001200ae518 ffffffffffffffff [ 34.228836] 000000fffbe0e530 a80000080837edf4 000000fffbe0e530 0000000000000000 [ 34.236890] 0000000000000000 0000000000000000 000000014ebb55a0 0000000000001000 [ 34.244943] 0000000000000001 a800000802649400 0000000000000000 0000000000000000 [ 34.252996] 0000000000000000 0000400400000000 0000000000000000 1dbd2b22ea1dd500 [ 34.261049] 00000000140000e3 a800000802649400 a800000802649400 a800000808ee0000 [ 34.269103] ... [ 34.271568] Call Trace: [ 34.274026] [<a80000080838e01c>] anon_pipe_read+0xd4/0x428 [ 34.279533] [<a80000080837edf4>] vfs_read+0x25c/0x318 [ 34.284607] [<a80000080837faac>] ksys_read+0x104/0x138 [ 34.289763] [<a80000080802b9cc>] syscall_common+0x44/0x68 [ 34.295187] [ 34.296689] Code: f84000cf 02209825 de020010 <dc420000> d8400004 02002825 0040f809 02802025 f84000c3 [ 34.306504] [ 34.308099] ---[ end trace 0000000000000000 ]---

My initial reproducer was the xdp-tools test suite. A standalone reproducer would be an lld/scd loop that, when the read is reordered by the CPU, triggers a fault. We can achieve this from userspace by stressing an anonymous pipe, which uses a mutex. Program used:

// SPDX-License-Identifier: GPL-2.0 // pipe_race.c - reproducer for MIPS LL/SC reordering vs fs/pipe.c // // Two userspace processes on an anonymous pipe: // parent = writer: tight write() loop // child = reader: tight read() loop

#define _GNU_SOURCE #include <assert.h> #include <errno.h> #include <sched.h> #include <signal.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/types.h> #include ---truncated---

Executive ViewAI

Why It Matters

A memory-ordering defect in Linux kernel MIPS EYEQ support can allow a local user with access to a Mobileye EyeQ5 / MIPS I6500 system to trigger a kernel paging fault and oops, causing an availability disruption on the affected device. Impact is confined to platforms built on that specific automotive-class SoC and kernel configuration (CONFIG_EYEQ); x86, ARM, and other MIPS deployments are unaffected, and there is no network-exploitable path. Leadership should care primarily where these embedded systems underpin safety-relevant, availability-sensitive products or fleets, and should treat this as a scoped availability risk rather than an enterprise-wide compromise risk.

Business Impact: Medium
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 96% exploitable
Prevalence
Rare
MIPS Mobileye EyeQ automotive SoC build (I6500), tiny real-world footprint
Data Quality
4 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact
Medium

Priority Score

39
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +39
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Code Injection CRITICAL

Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy