linux/drivers/media
James Patrick-Evans 785ef73dba [media] airspy: fix error logic during device register
This patch addresses CVE-2016-5400, a local DOS vulnerability caused by
a memory leak in the airspy usb device driver.

The vulnerability is triggered when more than 64 usb devices register
with v4l2 of type VFL_TYPE_SDR or VFL_TYPE_SUBDEV.A badusb device can
emulate 64 of these devices then through continual emulated
connect/disconnect of the 65th device, cause the kernel to run out of
RAM and crash the kernel.

The vulnerability exists in kernel versions from 3.17 to current 4.7.

The memory leak is caused by the probe function of the airspy driver
mishandeling errors and not freeing the corresponding control structures
when an error occours registering the device to v4l2 core.

Signed-off-by: James Patrick-Evans <james@jmp-e.com>
Cc: stable@vger.kernel.org # Up to Kernel 3.17
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2016-07-15 13:32:21 -03:00
..
common [media] v4l2-tpg: ignore V4L2_DV_RGB_RANGE setting for YUV formats 2016-07-08 16:16:52 -03:00
dvb-core [media] dvb-core/en50221: use kref to manage struct dvb_ca_private 2016-07-13 15:45:29 -03:00
dvb-frontends [media] ascot2e: Fix I2C message size check 2016-07-13 11:56:22 -03:00
firewire [media] dvb: modify core to implement interfaces/entities at MC new gen 2016-01-11 12:18:52 -02:00
i2c [media] adv7511: the h/vsync polarities were always positive 2016-07-12 13:37:41 -03:00
mmc [media] siano: register media controller earlier 2015-02-26 09:10:39 -03:00
pci [media] tw686x: Support VIDIOC_{S,G}_PARM ioctls 2016-07-13 13:34:52 -03:00
platform [media] vivid: fix typo causing incorrect CEC physical addresses 2016-07-15 13:20:28 -03:00
radio [media] radio-maxiradio: fix memory leak when device is removed 2016-06-28 08:05:47 -03:00
rc [media] redrat3: make hardware timeout configurable 2016-07-15 12:01:46 -03:00
tuners [media] it913x: do not allow driver unbind 2016-07-08 17:01:23 -03:00
usb [media] airspy: fix error logic during device register 2016-07-15 13:32:21 -03:00
v4l2-core [media] v4l2-ioctl: zero the v4l2_bt_timings reserved field 2016-07-12 13:37:20 -03:00
cec-edid.c [media] cec-edid: add module for EDID CEC helper functions 2016-06-28 09:45:51 -03:00
Kconfig [media] cec: fix Kconfig dependency problems 2016-07-08 18:34:00 -03:00
Makefile [media] cec: fix Kconfig dependency problems 2016-07-08 18:34:00 -03:00
media-device.c [media] media: fix media devnode ioctl/syscall and unregister race 2016-06-15 17:59:28 -03:00
media-devnode.c [media] media: fix media devnode ioctl/syscall and unregister race 2016-06-15 17:59:28 -03:00
media-entity.c [media] media: change pipeline validation return error 2016-04-29 08:07:17 -03:00