UPSTREAM: nl80211: check for the required netlink attributes presence

nl80211_set_rekey_data() does not check if the required attributes
NL80211_REKEY_DATA_{REPLAY_CTR,KEK,KCK} are present when processing
NL80211_CMD_SET_REKEY_OFFLOAD request. This request can be issued by
users with CAP_NET_ADMIN privilege and may result in NULL dereference
and a system crash. Add a check for the required attributes presence.
This patch is based on the patch by bo Zhang.

This fixes CVE-2017-12153.

pre-cq-configs: mixed-wificell-pre-cq

BUG=chromium:771932
TEST=Build and run

Change-Id: I0d6e494243637e3f0d067700ef93b7ef3f93e52a
References: https://bugzilla.redhat.com/show_bug.cgi?id=1491046
Fixes: e5497d766ad ("cfg80211/nl80211: support GTK rekey offload")
Cc: <stable@vger.kernel.org> # v3.1-rc1
Reported-by: bo Zhang <zhangbo5891001@gmail.com>
Signed-off-by: Vladis Dronov <vdronov@redhat.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Guenter Roeck <groeck@chromium.org>
(cherry picked from commit e785fa0a164aa)
Reviewed-on: https://chromium-review.googlesource.com/702716
Reviewed-by: Brian Norris <briannorris@chromium.org>
(cherry picked from commit 38ea7fb00e5be3d83d71a264f54de2f719a1fe01)
Reviewed-on: https://chromium-review.googlesource.com/707503
1 file changed