[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20240227184057.2368370-17-gregkh@linuxfoundation.org>
Date: Tue, 27 Feb 2024 19:40:54 +0100
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: linux-cve-announce@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Subject: CVE-2021-46952: NFS: fs_context: validate UDP retrans to prevent shift out-of-bounds
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
NFS: fs_context: validate UDP retrans to prevent shift out-of-bounds
Fix shift out-of-bounds in xprt_calc_majortimeo(). This is caused
by a garbage timeout (retrans) mount option being passed to nfs mount,
in this case from syzkaller.
If the protocol is XPRT_TRANSPORT_UDP, then 'retrans' is a shift
value for a 64-bit long integer, so 'retrans' cannot be >= 64.
If it is >= 64, fail the mount and return an error.
The Linux kernel CVE team has assigned CVE-2021-46952 to this issue.
Affected and fixed versions
===========================
Issue introduced in 5.6 with commit 9954bf92c0cd and fixed in 5.10.36 with commit 96fa26b74cdc
Issue introduced in 5.6 with commit 9954bf92c0cd and fixed in 5.11.20 with commit 2f3380121d49
Issue introduced in 5.6 with commit 9954bf92c0cd and fixed in 5.12.3 with commit 3d0163821c03
Issue introduced in 5.6 with commit 9954bf92c0cd and fixed in 5.13 with commit c09f11ef3595
Please see https://www.kernel.org or 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-2021-46952
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:
fs/nfs/fs_context.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/96fa26b74cdcf9f5c98996bf36bec9fb5b19ffe2
https://git.kernel.org/stable/c/2f3380121d49e829fb73ba86240c181bc32ad897
https://git.kernel.org/stable/c/3d0163821c035040a46d816a42c0780f0f0a30a8
https://git.kernel.org/stable/c/c09f11ef35955785f92369e25819bf0629df2e59
Powered by blists - more mailing lists