Re: [PATCH] net/smc: check for missing nlattrs in SMC_PNETID messages

From: David Miller
Date: Mon May 14 2018 - 16:41:23 EST


From: Eric Biggers <ebiggers3@xxxxxxxxx>
Date: Sun, 13 May 2018 17:01:30 -0700

> From: Eric Biggers <ebiggers@xxxxxxxxxx>
>
> It's possible to crash the kernel in several different ways by sending
> messages to the SMC_PNETID generic netlink family that are missing the
> expected attributes:
>
> - Missing SMC_PNETID_NAME => null pointer dereference when comparing
> names.
> - Missing SMC_PNETID_ETHNAME => null pointer dereference accessing
> smc_pnetentry::ndev.
> - Missing SMC_PNETID_IBNAME => null pointer dereference accessing
> smc_pnetentry::smcibdev.
> - Missing SMC_PNETID_IBPORT => out of bounds array access to
> smc_ib_device::pattr[-1].
>
> Fix it by validating that all expected attributes are present and that
> SMC_PNETID_IBPORT is nonzero.
>
> Reported-by: syzbot+5cd61039dc9b8bfa6e47@xxxxxxxxxxxxxxxxxxxxxxxxx
> Fixes: 6812baabf24d ("smc: establish pnet table management")
> Cc: <stable@xxxxxxxxxxxxxxx> # v4.11+
> Signed-off-by: Eric Biggers <ebiggers@xxxxxxxxxx>

Applied and queued up for -stable, thanks.