Bluetooth: Fix slab-out-of-bounds read in hci_le_direct_adv_report_evt()
authorPeilin Ye <yepeilin.cs@gmail.com>
Wed, 9 Sep 2020 07:17:00 +0000 (03:17 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 26 Dec 2020 15:02:44 +0000 (16:02 +0100)
commitb260e4a688531d5865e2caead4cccfb2735f5657
treeb26d352c5efb5f5ec83bc3d6adf0d26f0280a12c
parentc2c9944b5607357568f629f93a592db4540206fe
Bluetooth: Fix slab-out-of-bounds read in hci_le_direct_adv_report_evt()

commit f7e0e8b2f1b0a09b527885babda3e912ba820798 upstream.

`num_reports` is not being properly checked. A malformed event packet with
a large `num_reports` number makes hci_le_direct_adv_report_evt() read out
of bounds. Fix it.

Cc: stable@vger.kernel.org
Fixes: 2f010b55884e ("Bluetooth: Add support for handling LE Direct Advertising Report events")
Reported-and-tested-by: syzbot+24ebd650e20bd263ca01@syzkaller.appspotmail.com
Link: https://syzkaller.appspot.com/bug?extid=24ebd650e20bd263ca01
Signed-off-by: Peilin Ye <yepeilin.cs@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/bluetooth/hci_event.c