lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <2024090407-CVE-2024-44948-5554@gregkh>
Date: Wed,  4 Sep 2024 20:36:08 +0200
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: linux-cve-announce@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Subject: CVE-2024-44948: x86/mtrr: Check if fixed MTRRs exist before saving them

Description
===========

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

x86/mtrr: Check if fixed MTRRs exist before saving them

MTRRs have an obsolete fixed variant for fine grained caching control
of the 640K-1MB region that uses separate MSRs. This fixed variant has
a separate capability bit in the MTRR capability MSR.

So far all x86 CPUs which support MTRR have this separate bit set, so it
went unnoticed that mtrr_save_state() does not check the capability bit
before accessing the fixed MTRR MSRs.

Though on a CPU that does not support the fixed MTRR capability this
results in a #GP.  The #GP itself is harmless because the RDMSR fault is
handled gracefully, but results in a WARN_ON().

Add the missing capability check to prevent this.

The Linux kernel CVE team has assigned CVE-2024-44948 to this issue.


Affected and fixed versions
===========================

	Issue introduced in 2.6.22 with commit 2b1f6278d77c and fixed in 4.19.320 with commit 34f36e6ee5bd
	Issue introduced in 2.6.22 with commit 2b1f6278d77c and fixed in 5.4.282 with commit 06c1de44d378
	Issue introduced in 2.6.22 with commit 2b1f6278d77c and fixed in 5.10.224 with commit 450b6b22acda
	Issue introduced in 2.6.22 with commit 2b1f6278d77c and fixed in 5.15.165 with commit ca7d00c5656d
	Issue introduced in 2.6.22 with commit 2b1f6278d77c and fixed in 6.1.105 with commit 8aa79dfb216b
	Issue introduced in 2.6.22 with commit 2b1f6278d77c and fixed in 6.6.46 with commit 8a90d3fc7c24
	Issue introduced in 2.6.22 with commit 2b1f6278d77c and fixed in 6.10.5 with commit 388f1c954019
	Issue introduced in 2.6.22 with commit 2b1f6278d77c and fixed in 6.11-rc3 with commit 919f18f961c0

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-44948
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/x86/kernel/cpu/mtrr/mtrr.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/34f36e6ee5bd7eff8b2adcd9fcaef369f752d82e
	https://git.kernel.org/stable/c/06c1de44d378ec5439db17bf476507d68589bfe9
	https://git.kernel.org/stable/c/450b6b22acdaac67a18eaf5ed498421ffcf10051
	https://git.kernel.org/stable/c/ca7d00c5656d1791e28369919e3e10febe9c3b16
	https://git.kernel.org/stable/c/8aa79dfb216b865e96ff890bc4ea71650f9bc8d7
	https://git.kernel.org/stable/c/8a90d3fc7c24608548d3a750671f9dac21d1a462
	https://git.kernel.org/stable/c/388f1c954019f253a8383f7eb733f38d541e10b6
	https://git.kernel.org/stable/c/919f18f961c03d6694aa726c514184f2311a4614

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ