prlimit: do_prlimit needs to have a speculation check
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 20 Jan 2023 10:03:20 +0000 (11:03 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 24 Jan 2023 06:24:34 +0000 (07:24 +0100)
commit91185568c99d60534bacf38439846103962d1e2c
tree082b5806ef01a6460ce8843bb9c6e6d3a1c72e8c
parent08bf23c33979e0f44ff9ad1849c08067c7c3a46b
prlimit: do_prlimit needs to have a speculation check

commit 739790605705ddcf18f21782b9c99ad7d53a8c11 upstream.

do_prlimit() adds the user-controlled resource value to a pointer that
will subsequently be dereferenced.  In order to help prevent this
codepath from being used as a spectre "gadget" a barrier needs to be
added after checking the range.

Reported-by: Jordy Zomer <jordyzomer@google.com>
Tested-by: Jordy Zomer <jordyzomer@google.com>
Suggested-by: Linus Torvalds <torvalds@linuxfoundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
kernel/sys.c