[<prev] [next>] [day] [month] [year] [list]
Message-ID: <2025061824-CVE-2022-49989-7eed@gregkh>
Date: Wed, 18 Jun 2025 13:00:54 +0200
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: linux-cve-announce@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...nel.org>
Subject: CVE-2022-49989: xen/privcmd: fix error exit of privcmd_ioctl_dm_op()
From: Greg Kroah-Hartman <gregkh@...nel.org>
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
xen/privcmd: fix error exit of privcmd_ioctl_dm_op()
The error exit of privcmd_ioctl_dm_op() is calling unlock_pages()
potentially with pages being NULL, leading to a NULL dereference.
Additionally lock_pages() doesn't check for pin_user_pages_fast()
having been completely successful, resulting in potentially not
locking all pages into memory. This could result in sporadic failures
when using the related memory in user mode.
Fix all of that by calling unlock_pages() always with the real number
of pinned pages, which will be zero in case pages being NULL, and by
checking the number of pages pinned by pin_user_pages_fast() matching
the expected number of pages.
The Linux kernel CVE team has assigned CVE-2022-49989 to this issue.
Affected and fixed versions
===========================
Issue introduced in 4.11 with commit ab520be8cd5d56867fc95cfbc34b90880faf1f9d and fixed in 5.10.140 with commit 6de50db104af0dc921f593fd95c55db86a52ceef
Issue introduced in 4.11 with commit ab520be8cd5d56867fc95cfbc34b90880faf1f9d and fixed in 5.15.64 with commit c2b7bae7c90051fd6a679d5dee00400d67ebbf4a
Issue introduced in 4.11 with commit ab520be8cd5d56867fc95cfbc34b90880faf1f9d and fixed in 5.19.6 with commit 45d47bd9b96e7874b98dbcc7602fe2826c5d62a6
Issue introduced in 4.11 with commit ab520be8cd5d56867fc95cfbc34b90880faf1f9d and fixed in 6.0 with commit c5deb27895e017a0267de0a20d140ad5fcc55a54
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-2022-49989
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:
drivers/xen/privcmd.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/6de50db104af0dc921f593fd95c55db86a52ceef
https://git.kernel.org/stable/c/c2b7bae7c90051fd6a679d5dee00400d67ebbf4a
https://git.kernel.org/stable/c/45d47bd9b96e7874b98dbcc7602fe2826c5d62a6
https://git.kernel.org/stable/c/c5deb27895e017a0267de0a20d140ad5fcc55a54
Powered by blists - more mailing lists