]> git.baikalelectronics.ru Git - kernel.git/commit
hv_netvsc: Add validation for untrusted Hyper-V values
authorAndres Beltran <lkmlabelt@gmail.com>
Wed, 16 Sep 2020 09:47:27 +0000 (11:47 +0200)
committerDavid S. Miller <davem@davemloft.net>
Thu, 17 Sep 2020 23:21:26 +0000 (16:21 -0700)
commit018f8169ede9aaf5d0854957c2caf4f93a3aae6c
tree0d9b84891620e2df5ed43245daad4c07fa96dff6
parent6190b82b4607bdfbf7b923c808fd62b4db46b191
hv_netvsc: Add validation for untrusted Hyper-V values

For additional robustness in the face of Hyper-V errors or malicious
behavior, validate all values that originate from packets that Hyper-V
has sent to the guest in the host-to-guest ring buffer. Ensure that
invalid values cannot cause indexing off the end of an array, or
subvert an existing validation via integer overflow. Ensure that
outgoing packets do not have any leftover guest memory that has not
been zeroed out.

Signed-off-by: Andres Beltran <lkmlabelt@gmail.com>
Co-developed-by: Andrea Parri (Microsoft) <parri.andrea@gmail.com>
Signed-off-by: Andrea Parri (Microsoft) <parri.andrea@gmail.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: netdev@vger.kernel.org
Reviewed-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/hyperv/hyperv_net.h
drivers/net/hyperv/netvsc.c
drivers/net/hyperv/netvsc_drv.c
drivers/net/hyperv/rndis_filter.c