blob: e772af11e9a19bcc0d279fdac0ab74d61b841117 [file] [log] [blame]
From bippy-5f407fcff5a0 Mon Sep 17 00:00:00 2001
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: <linux-cve-announce@vger.kernel.org>
Reply-to: <cve@kernel.org>, <linux-kernel@vger.kernel.org>
Subject: CVE-2024-35996: cpu: Re-enable CPU mitigations by default for !X86 architectures
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
cpu: Re-enable CPU mitigations by default for !X86 architectures
Rename x86's to CPU_MITIGATIONS, define it in generic code, and force it
on for all architectures exception x86. A recent commit to turn
mitigations off by default if SPECULATION_MITIGATIONS=n kinda sorta
missed that "cpu_mitigations" is completely generic, whereas
SPECULATION_MITIGATIONS is x86-specific.
Rename x86's SPECULATIVE_MITIGATIONS instead of keeping both and have it
select CPU_MITIGATIONS, as having two configs for the same thing is
unnecessary and confusing. This will also allow x86 to use the knob to
manage mitigations that aren't strictly related to speculative
execution.
Use another Kconfig to communicate to common code that CPU_MITIGATIONS
is already defined instead of having x86's menu depend on the common
CPU_MITIGATIONS. This allows keeping a single point of contact for all
of x86's mitigations, and it's not clear that other architectures *want*
to allow disabling mitigations at compile-time.
The Linux kernel CVE team has assigned CVE-2024-35996 to this issue.
Affected and fixed versions
===========================
Issue introduced in 5.15.156 with commit 70688450dddaf91e12fd4fc625da3297025932c9 and fixed in 5.15.158 with commit 36b32816fbab267611f073223f1b0b816ec5920f
Issue introduced in 6.1.87 with commit 9c09773917fbb77dff85b433e1e89123fc5fb530 and fixed in 6.1.90 with commit 38f17d1fbb5bfb56ca1419e2d06376d57a9396f9
Issue introduced in 6.6.28 with commit 2978ee7c973ce81b6e51100ba1e5ae001af624b9 and fixed in 6.6.30 with commit 8292f4f8dd1b005d0688d726261004f816ef730a
Issue introduced in 6.8.7 with commit c4a9babdd5d5a41a74269a2e1aa1647b1b4c45bb and fixed in 6.8.9 with commit fd8547ebc187037cc69441a15c1441aeaab80f49
Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.
Unaffected versions might change over time as fixes are backported to
older supported kernel versions. The official CVE entry at
https://cve.org/CVERecord/?id=CVE-2024-35996
will be updated if fixes are backported, please check that for the most
up to date information about this issue.
Affected files
==============
The file(s) affected by this issue are:
arch/Kconfig
arch/x86/Kconfig
kernel/cpu.c
Mitigation
==========
The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes. Individual
changes are never tested alone, but rather are part of a larger kernel
release. Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all. If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
https://git.kernel.org/stable/c/af6d6a923b40bf6471e44067ac61cc5814b48e7f
https://git.kernel.org/stable/c/36b32816fbab267611f073223f1b0b816ec5920f
https://git.kernel.org/stable/c/38f17d1fbb5bfb56ca1419e2d06376d57a9396f9
https://git.kernel.org/stable/c/8292f4f8dd1b005d0688d726261004f816ef730a
https://git.kernel.org/stable/c/fd8547ebc187037cc69441a15c1441aeaab80f49
https://git.kernel.org/stable/c/fe42754b94a42d08cf9501790afc25c4f6a5f631