summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAdrian Stratulat <adrian.stratulat@enea.com>2019-10-30 12:33:58 +0100
committerAdrian Stratulat <adrian.stratulat@enea.com>2019-10-30 12:37:07 +0100
commit062a0edacf29e234b60d582dd38697793d8efb61 (patch)
treedd62f403badf2c8125e1ce1e04b289cfb68316cb
parent2a790eef3b2f6607ef5e8b1c041ba5f77717e41c (diff)
downloadenea-kernel-cache-062a0edacf29e234b60d582dd38697793d8efb61.tar.gz
USB: usbtest: CVE-2017-16532
usb: usbtest: fix NULL pointer dereference References: https://nvd.nist.gov/vuln/detail/CVE-2017-16532 https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=7c80f9e4a588f1925b07134bb2e3689335f6c6d8 https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-4.1.y&id=8cf061d919e2102d0de0379bafea6cce1405d786 Change-Id: I988e0689224b6b5c0105fecf4e753516b8a9fe92 Signed-off-by: Adrian Stratulat <adrian.stratulat@enea.com>
-rw-r--r--patches/cve/CVE-2017-16532.patch49
1 files changed, 49 insertions, 0 deletions
diff --git a/patches/cve/CVE-2017-16532.patch b/patches/cve/CVE-2017-16532.patch
new file mode 100644
index 0000000..b72f9e2
--- /dev/null
+++ b/patches/cve/CVE-2017-16532.patch
@@ -0,0 +1,49 @@
1From 8cf061d919e2102d0de0379bafea6cce1405d786 Mon Sep 17 00:00:00 2001
2From: Alan Stern <stern@rowland.harvard.edu>
3Date: Fri, 29 Sep 2017 10:54:24 -0400
4Subject: usb: usbtest: fix NULL pointer dereference
5
6commit 7c80f9e4a588f1925b07134bb2e3689335f6c6d8 upstream.
7
8If the usbtest driver encounters a device with an IN bulk endpoint but
9no OUT bulk endpoint, it will try to dereference a NULL pointer
10(out->desc.bEndpointAddress). The problem can be solved by adding a
11missing test.
12
13Upstream-Status: Backport [https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-4.1.y&id=8cf061d919e2102d0de0379bafea6cce1405d786]
14CVE: CVE-2017-16532
15
16Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
17Reported-by: Andrey Konovalov <andreyknvl@google.com>
18Tested-by: Andrey Konovalov <andreyknvl@google.com>
19Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
20Cc: Ben Hutchings <ben.hutchings@codethink.co.uk>
21Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
22Signed-off-by: Adrian Stratulat <adrian.stratulat@enea.com>
23---
24 drivers/usb/misc/usbtest.c | 5 +++--
25 1 file changed, 3 insertions(+), 2 deletions(-)
26
27diff --git a/drivers/usb/misc/usbtest.c b/drivers/usb/misc/usbtest.c
28index d94927e5623b..e31f72b3a22c 100644
29--- a/drivers/usb/misc/usbtest.c
30+++ b/drivers/usb/misc/usbtest.c
31@@ -182,12 +182,13 @@ found:
32 return tmp;
33 }
34
35- if (in) {
36+ if (in)
37 dev->in_pipe = usb_rcvbulkpipe(udev,
38 in->desc.bEndpointAddress & USB_ENDPOINT_NUMBER_MASK);
39+ if (out)
40 dev->out_pipe = usb_sndbulkpipe(udev,
41 out->desc.bEndpointAddress & USB_ENDPOINT_NUMBER_MASK);
42- }
43+
44 if (iso_in) {
45 dev->iso_in = &iso_in->desc;
46 dev->in_iso_pipe = usb_rcvisocpipe(udev,
47--
48cgit 1.2-0.3.lf.el7
49