Skip to main content

Linux Kernel CVE-2025-68171

HIGH
2025-12-16 416baaa9-dc9f-4396-8d5f-8c081fb06d67
High
Disputed · 7.8 Vendor: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Share

Severity by source

Sources disagree (Low–High)
Vendor (416baaa9-dc9f-4396-8d5f-8c081fb06d67) PRIMARY
7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI
5.3 MEDIUM

Local low-priv task (PR:L) must win a preemption race on AMX hardware (AC:H); impact is cross-task dynamic-register disclosure (C:H) with only a WARN affecting availability (A:L) and no integrity loss.

3.1 AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:L
4.0 AV:L/AC:L/AT:P/PR:L/UI:N/VC:H/VI:N/VA:L/SC:N/SI:N/SA:N
SUSE
5.5 MEDIUM
AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Red Hat
5.5 LOW
qualitative

vuln.today treats the vendor’s rating as authoritative. A higher third-party CVSS (e.g. CISA-ADP) is shown for transparency but does not drive the headline severity.

CVSS VectorVendor: 416baaa9-dc9f-4396-8d5f-8c081fb06d67

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

Lifecycle Timeline

2
Analysis Generated
Jul 30, 2026 - 07:29 vuln.today
CVE Published
Dec 16, 2025 - 14:15 cve.org
HIGH 7.8

DescriptionCVE.org

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

x86/fpu: Ensure XFD state on signal delivery

Sean reported [1] the following splat when running KVM tests:

WARNING: CPU: 232 PID: 15391 at xfd_validate_state+0x65/0x70 Call Trace: <TASK> fpu__clear_user_states+0x9c/0x100 arch_do_signal_or_restart+0x142/0x210 exit_to_user_mode_loop+0x55/0x100 do_syscall_64+0x205/0x2c0 entry_SYSCALL_64_after_hwframe+0x4b/0x53

Chao further identified [2] a reproducible scenario involving signal delivery: a non-AMX task is preempted by an AMX-enabled task which modifies the XFD MSR.

When the non-AMX task resumes and reloads XSTATE with init values, a warning is triggered due to a mismatch between fpstate::xfd and the CPU's current XFD state. fpu__clear_user_states() does not currently re-synchronize the XFD state after such preemption.

Invoke xfd_update_state() which detects and corrects the mismatch if there is a dynamic feature.

This also benefits the sigreturn path, as fpu__restore_sig() may call fpu__clear_user_states() when the sigframe is inaccessible.

[ dhansen: minor changelog munging ]

AnalysisAI

Cross-task FPU state leakage in the Linux kernel x86 XFD (Extended Feature Disable) handling allows a local low-privileged task to trigger an inconsistent AMX/dynamic-feature register state during signal delivery. When a non-AMX task is preempted by an AMX-enabled task that changes the XFD MSR, fpu__clear_user_states() failed to re-synchronize XFD, producing a state mismatch (kernel WARNING) and potential exposure of dynamic FPU register contents. Tagged as an information-disclosure issue; no public exploit identified at time of analysis and EPSS is low (0.17%, 7th percentile).

Technical ContextAI

The flaw lives in the x86 FPU subsystem's handling of XFD, the MSR that gates 'dynamically enabled' XSAVE features such as Intel AMX (Advanced Matrix Extensions / tile registers) available on Sapphire Rapids and later Xeon CPUs. Each task's fpstate carries an xfd shadow value that must match the physical IA32_XFD MSR. During signal delivery the kernel calls fpu__clear_user_states() to reset user FPU state to init values, but it did not invoke xfd_update_state(), so after a non-AMX task was preempted by an AMX task (which modifies XFD), the resumed task reloaded XSTATE with a stale/mismatched XFD, tripping xfd_validate_state(). The upstream fix adds an xfd_update_state() call to detect and correct the mismatch when a dynamic feature is present. No CWE was assigned, but the root cause is an improper synchronization / inconsistent-state defect (race between preemption and FPU state restore) affecting confidentiality of per-task register data.

Affected ProductsAI

The affected product is the Linux kernel on x86-64 platforms that support dynamically enabled XSAVE features (Intel AMX, i.e. Sapphire Rapids and newer Xeon). No CPE list or exact version range was provided in the input; affected versions must be inferred from the five stable-tree fix commits at git.kernel.org (1811c610653c, 388eff894d6b, 3f735419c4b4, 5b2619b488f1, eefbfb722042), which indicate the fix was backported across multiple stable branches. Only systems that actually run AMX-enabled workloads (commonly KVM/virtualization and ML tile-instruction workloads) can reach the vulnerable code path.

RemediationAI

Upstream fix available (PR/commit); released patched version not independently confirmed - apply the kernel update that includes commit 1811c610653c0cd21cc9add14595b7cffaeca511 (and the stable backports 388eff894d6b, 3f735419c4b4, 5b2619b488f1, eefbfb722042 at git.kernel.org/stable) via your distribution's patched kernel package, then reboot. Because exploitation requires dynamically enabled XSAVE features, an effective compensating control on hosts that do not need AMX is to disable AMX/XFD dynamic features at boot (e.g. clear the AMX CPU feature via the kernel 'clearcpuid' parameter or vendor equivalent), which removes the vulnerable path at the cost of losing AMX acceleration for ML/tile workloads; on hosts that must keep AMX, patching is the only reliable remedy. Avoid setting panic_on_warn as a 'mitigation' here, since it would convert the benign WARN into a denial of service.

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
Container suse/sl-micro/6.0/baremetal-os-container:latest Affected
Container suse/sl-micro/6.0/base-os-container:2.1.3-7.95 Image SL-Micro Affected
Container suse/sl-micro/6.0/kvm-os-container:2.1.3-6.115 Affected
Container suse/sl-micro/6.0/rt-os-container:2.1.3-7.146 Affected
Container suse/sl-micro/6.0/toolbox:latest Affected

Share

CVE-2025-68171 vulnerability details – vuln.today

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