]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
xen/netfront: force data bouncing when backend is untrusted
authorRoger Pau Monne <roger.pau@citrix.com>
Thu, 7 Apr 2022 10:20:06 +0000 (12:20 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 7 Jul 2022 15:31:18 +0000 (17:31 +0200)
commit019eaffbb7cfdbe01b1b4e1b61e7f91688c76c2a
tree8956e5ea716349af20b3505054b5fc894258948e
parentf2c6f208a52df7e201f9fc34ae5efd7f9f40133e
xen/netfront: force data bouncing when backend is untrusted

commit 4491001c2e0fa69efbb748c96ec96b100a5cdb7e upstream.

Bounce all data on the skbs to be transmitted into zeroed pages if the
backend is untrusted. This avoids leaking data present in the pages
shared with the backend but not part of the skb fragments.  This
requires introducing a new helper in order to allocate skbs with a
size multiple of XEN_PAGE_SIZE so we don't leak contiguous data on the
granted pages.

Reporting whether the backend is to be trusted can be done using a
module parameter, or from the xenstore frontend path as set by the
toolstack when adding the device.

This is CVE-2022-33741, part of XSA-403.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/xen-netfront.c